[LU-4208] dsl_prop_register()) ASSERTION(dsl_pool_config_held(dp)) failed Created: 04/Nov/13  Updated: 21/Feb/14  Resolved: 21/Feb/14

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.4.1, Lustre 2.5.0, Lustre 2.6.0
Fix Version/s: Lustre 2.6.0, Lustre 2.5.1

Type: Bug Priority: Major
Reporter: Ned Bass Assignee: Nathaniel Clark
Resolution: Fixed Votes: 0
Labels: patch, zfs

Severity: 3
Rank (Obsolete): 11437

 Description   

The DSL Pool Configuration lock should be held when calling dsl_prop_register().

See comments here:

https://github.com/zfsonlinux/zfs/blob/master/module/zfs/dsl_pool.c#L947

and assertion here:

https://github.com/zfsonlinux/zfs/blob/master/module/zfs/dsl_prop.c#L238

Therefore osd_zfs will panic on mount if using a debug build of ZFS.



 Comments   
Comment by Ned Bass [ 04/Nov/13 ]

http://review.whamcloud.com/#/c/8172/

Landing this change will take a bit of coordination, since it has a dependency on a ZFS build that exports the needed symbols. I don't really want to add an autoconf check, because the compatibility code would be messy. The DSL pool config lock is an rrwlock_t lock, which is a component of ZFS, but the API isn't exported. So without dsl_pool_config_{enter,exit} exported, there's really no clean way to take the lock without duplicating the rrwlock implementation in Lustre.

Comment by Peter Jones [ 05/Nov/13 ]

Nathaniel

could you please take care of this one?

Thanks

Peter

Comment by Nathaniel Clark [ 08/Nov/13 ]

I think we should add an autoconf check, I don't think it would be that much of an issue. After landing an updated 8172 then we just wait for ZFS 0.6.3 to come out to close the bug.

Comment by Nathaniel Clark [ 02/Dec/13 ]

Lustre patches are landed.

This can be closed when builds start using zfs 0.6.3

Comment by Peter Jones [ 12/Feb/14 ]

This landed for 2.6. Is it needed for b2_4 and b2_5 also?

Comment by Ned Bass [ 13/Feb/14 ]

I would say yes.

Comment by Nathaniel Clark [ 13/Feb/14 ]

b2_5 and master are both at zfs 0.6.2, b2_4 is using 0.6.1. The current tip of zfs master (as of 2 weeks ago) wasn't stable enough to move to (see ZFS Issue 2088). I will backport the lustre change to both b2_4 and b2_5

Comment by Nathaniel Clark [ 13/Feb/14 ]

b2_5 http://review.whamcloud.com/9256
b2_4 http://review.whamcloud.com/9255

Comment by Peter Jones [ 21/Feb/14 ]

Landed for 2.5.1 and 2.6 but will only take effect once we move to zfs 0.6.3

Generated at Sat Feb 10 01:40:39 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.