Messages in this thread | | | Date | Fri, 10 Apr 2009 15:45:20 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH 2/2] lockdep: choose to continue lock debugging despite taint |
| |
* Frederic Weisbecker <fweisbec@gmail.com> wrote:
> On Fri, Apr 10, 2009 at 02:15:15PM +0200, Ingo Molnar wrote: > > > > * Frederic Weisbecker <fweisbec@gmail.com> wrote: > > > > > Lockdep is disabled after any kernel taints. This might be > > > convenient to ignore bad locking issues which sources come from > > > outside the kernel tree. Nevertheless, it might be a frustrating > > > experience for the staging developers or anyone who might develop > > > a kernel that happens to be tainted. > > > > Good point. Not having lockdep coverage for drivers/staging/ just > > prolongs their transition - not good. > > > > But instead of this: > > > > > void add_taint(unsigned flag) > > > { > > > +#ifndef CONFIG_LOCKDEP_IGNORE_TAINT > > > /* > > > * Can't trust the integrity of the kernel anymore. > > > * We don't call directly debug_locks_off() because the issue > > > @@ -220,6 +221,7 @@ void add_taint(unsigned flag) > > > */ > > > if (xchg(&debug_locks, 0)) > > > printk(KERN_WARNING "Disabling lockdep due to kernel taint\n"); > > > +#endif > > > > I'd suggest to not do the debug_locks_off() call if TAINT_CRAP. I.e. > > something like: > > > > if (!(flag & TAINT_CRAP) && debug_locks_off()) > > printk(...); > > > > will do the trick. > > > > Ingo > > > Ok, but this is not only about staging. It's also about > TAINT_WARN. Just imagine that you report a warning to a > maintainer, and while you are waiting for it to be fixed, you > can't use lockdep for your own needs. > > Hm?
We can exclude TAINT_WARN too - i.e. (TAINT_CRAP|TAINT_WARN).
Ingo
| |