lkml.org 
[lkml]   [2009]   [Apr]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/2] lockdep: choose to continue lock debugging despite taint
    On Sat, Apr 11, 2009 at 03:15:06AM +0200, Frederic Weisbecker wrote:
    > On Fri, Apr 10, 2009 at 03:45:20PM +0200, Ingo Molnar wrote:
    > >
    > > * 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
    >
    >
    > Fine :-)
    >
    > See the v2 on further mails in this thread.
    >
    > Side request: do you think you could merge them on kill-the-BKL tree?


    Sorry, forget about this side request. I thought merging tip:master
    into tip:core/kill-the-BKL would make me suffer a rain of conflicts
    but actually I've just tried and I only encountered a very simple
    conflict in sched.c so it's very easy to manage it locally. Then
    we can keep the history of kill-the-BKL, for now it's good as is.

    Frederic.


    > Thanks!
    >



    \
     
     \ /
      Last update: 2009-04-11 03:41    [W:0.025 / U:0.336 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site