HomeFreeBSD

Simplified the scope of the namespace lock

Description

Simplified the scope of the namespace lock

If we wait until after we check for no spa references to drop the
namespace lock, then we know that spa consumers will need to call
spa_lookup() and end up waiting on the spa_namespace_cv until we
finish. This narrows the external checks to spa_lookup and we no
longer need to worry about the spa_vdev_enter case.

Sponsored-By: Klara Inc.
Sponsored-by: Wasabi Technology, Inc.
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: George Wilson <gwilson@delphix.com>
Signed-off-by: Don Brady <don.brady@klarasystems.com>
Closes #16153

Details

Provenance
Don Brady <don.brady@klarasystems.com>Authored on May 5 2024, 2:57 PM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on May 14 2024, 3:58 PM
Parents
rG975a13259b87: Add support for parallel pool exports
Branches
Unknown
Tags
Unknown

Event Timeline

Brian Behlendorf <behlendorf1@llnl.gov> committed rG89acef992bf3: Simplified the scope of the namespace lock (authored by Don Brady <don.brady@klarasystems.com>).May 14 2024, 3:58 PM