]> git.decadent.org.uk Git - nfs-utils.git/commitdiff
mountd: minor optimization in v4root_set
authorJ. Bruce Fields <bfields@citi.umich.edu>
Sat, 9 Jan 2010 17:22:17 +0000 (10:22 -0700)
committerSteve Dickson <steved@redhat.com>
Wed, 13 Jan 2010 20:39:14 +0000 (15:39 -0500)
Since we're adding new exports as we traverse the export list, it's
possible we may find ourselves revisiting an export we just added.  It's
harmless to reprocess those exports, as we're currently doing.  But it's
also pointless.

(Actually, the current code appears to always add new export entries at
the head of each list, so we shouldn't hit this case.  It still may be a
good idea to keep this check, though, as insulation against future
changes to that data structure.)

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
utils/mountd/v4root.c

index d890181b5f2fab86ce60c26978884aab25e624fb..b0a10c8d319338eb3e6d90b408f004ff77d4007a 100644 (file)
@@ -162,6 +162,13 @@ v4root_set()
                        nxt = exp->m_next;
                        hostname = exp->m_export.e_hostname;
 
+                       if (exp->m_export.e_flags & NFSEXP_V4ROOT)
+                               /*
+                                * We just added this one, so its
+                                * parents are already dealt with!
+                                */
+                               continue;
+
                        path = strdup(exp->m_export.e_path);
                        for (ptr = path + 1; ptr; ptr = strchr(ptr, '/')) {
                                int ret;