Details
-
Bug
-
Resolution: Unresolved
-
Minor
-
None
-
Lustre 2.1.0, Lustre 1.8.7
-
None
-
3
-
10446
Description
lov_getref has this code:
static void lov_getref(struct obd_device *obd) { struct lov_obd *lov = &obd->u.lov; /* nobody gets through here until lov_putref is done */ cfs_mutex_down(&lov->lov_lock); cfs_atomic_inc(&lov->lov_refcount); cfs_mutex_up(&lov->lov_lock); return; }
I imagine Nathan tried to avoid some sort of a race while working on bug 9439, but in reality whatever was the race he imagined, it's still there.
At the very least we need to just get rid of this locking here and in lov_putref() and also get rid of lov_lock() in total I suspect.
Attachments
Issue Links
- Trackbacks
-
Lustre 1.8.x known issues tracker
While testing against Lustre b18 branch, we would hit known bugs which were already reported in Lustre Bugzilla https://bugzilla.lustre.org/. In order to move away from relying on Bugzilla, we would create a JIRA