[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150120094805.GB11596@twins.programming.kicks-ass.net>
Date: Tue, 20 Jan 2015 10:48:05 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Rusty Russell <rusty@...tcorp.com.au>
Cc: Andrey Tsyvarev <tsyvarev@...ras.ru>, linux-kernel@...r.kernel.org,
Ingo Molnar <mingo@...hat.com>
Subject: Re: [PATCH] kernel/module.c: Free lock-classes if parse_args failed
On Tue, Jan 20, 2015 at 05:07:19PM +1030, Rusty Russell wrote:
> Andrey Tsyvarev <tsyvarev@...ras.ru> writes:
> > parse_args call module parameters' .set handlers, which may use locks defined in the module.
> > So, these classes should be freed in case parse_args returns error(e.g. due to incorrect parameter passed).
>
> Thanks, this seems right. Applied.
>
> But this makes me ask: where is lockdep_free_key_range() called on the
> module init code? It doesn't seem to be at all...
Hmm, Ingo, how does this work? The lockless class lookup in
look_up_lock_class() very much assumes the class hash is only added too,
but here we go wipe stuff from it.
>From what I can tell, every use of lockdep_free_key_range() is broken.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists