Messages in this thread | | | Date | Mon, 20 Jul 2015 10:26:56 +0200 | From | Jan Kara <> | Subject | Re: [PATCH RFC 0/4] change sb_writers to use percpu_rw_semaphore |
| |
On Sat 18-07-15 08:40:15, Dave Chinner wrote: > On Fri, Jul 17, 2015 at 07:31:17PM +0200, Oleg Nesterov wrote: > > On 07/17, Dave Chinner wrote: > > > > > > On Thu, Jul 16, 2015 at 07:32:56PM +0200, Oleg Nesterov wrote: > > > > > > > > #ifdef CONFIG_LOCKDEP > > > > /* > > > > * We want lockdep to tell us about possible deadlocks with freezing but > > > > * it's it bit tricky to properly instrument it. Getting a freeze protection > > > > * works as getting a read lock but there are subtle problems. XFS for example > > > > * gets freeze protection on internal level twice in some cases, which is OK > > > > > > Sorry, I've missed something here - where is XFS nesting > > > sb_start_intwrite() calls? > > > > Heh ;) I too tried to understand thi but failed. I was not surprized, > > I know nothing about fs/. > > > > Dave, I didn't write this comment. Please look at acquire_freeze_lock(). > > If we can remove this logic - great! but this needs a separate change. > > Oh, I think I know what it was - when we duplicate a transaction for > a rolling commit, we do it before committing the current transaction > is committed. I *think* that used to take a second freeze reference, > which only existed until the first transaction was committed. We do > things a bit differently now - we hold a state flag on the > transaction to indicate it needs to release the freeze reference > when it is freed and we pass it to the new transaction so that the > first transaction commit doesn't release it. > > So, yes, it may well be a stale comment now.
Yeah, as far as I remember this was the reason why I added the comment. So Oleg, feel free to remove the special code and run xfstests with XFS and lockdep enabled to verify there are really no issues. Thanks!
Honza -- Jan Kara <jack@suse.cz> SUSE Labs, CR
| |