Page MenuHomeFreeBSD

extattr_list_vp: Only take shared vnode lock
ClosedPublic

Authored by cem on Feb 5 2019, 1:51 AM.
Tags
None
Referenced Files
F82065502: D19082.diff
Thu, Apr 25, 4:56 AM
Unknown Object (File)
Sun, Apr 21, 3:13 AM
Unknown Object (File)
Dec 31 2023, 2:20 AM
Unknown Object (File)
Dec 20 2023, 2:18 AM
Unknown Object (File)
Sep 26 2023, 5:25 AM
Unknown Object (File)
Sep 16 2023, 10:05 PM
Unknown Object (File)
Sep 7 2023, 2:42 AM
Unknown Object (File)
Sep 7 2023, 2:39 AM
Subscribers

Details

Summary

List is a 'read'-type operation that does not modify shared state; it's safe
for multiple thread to proceed concurrently. This is reflected in the vnode
operation LISTEXTATTR locking protocol specification, which only requires a
shared lock.

(Similar to previous r248933.)

Reported by: Case van Rij <case.vanrij AT isilon.com>

Test Plan

Suggestions welcome

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision is now accepted and ready to land.Feb 5 2019, 2:08 AM

Lock acquisition can be moved few lines later, after branching on data. Similarly, unlock can be done earlier.

In D19082#408030, @mjg wrote:

Lock acquisition can be moved few lines later, after branching on data. Similarly, unlock can be done earlier.

Ok, will do.

This revision was automatically updated to reflect the committed changes.