RFC: Patch for mountd to handle a database for exports

From: Rick Macklem <rick.macklem_at_gmail.com>
Date: Thu, 20 Jul 2023 22:50:15 UTC
Hi,

Peter Eriksson has submitted an interesting patch that adds support
for a database file for exports.  My understanding is that this improves
performance when used with the ZFS share property for exporting a
large number of file systems.

There are a couple of user visible issues that I'd like feedback from
others. (Hopefully Peter can correct me if I get any of these wrong.)

- The patch uses a single database file and a new "-D" option to
  specify it on the command line.
  --> I think it might be less confusing to just put the database file(s)
        in the exports list and identify them via a ".db" filename suffix.
  What do others think?

The changes are #ifdef'd on USE_SHAREDB. I'm thinking that this
change will be always built, so maybe USE_SHAREDB is not needed?
(Obviously mountd(8)'s semantics will only changed if/when database
 file(s) are provided.)

Once I have feedback on the above, I will put a patch up on
phabricator.

rick
ps: I believe kevans@ has volunteered to shepperd the ZFS share
      property changes.