[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20081110132208.GB10294@redhat.com>
Date: Mon, 10 Nov 2008 14:22:08 +0100
From: Oleg Nesterov <oleg@...hat.com>
To: Ingo Molnar <mingo@...e.hu>
Cc: "Rafael J. Wysocki" <rjw@...k.pl>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
Dmitry Adamushko <dmitry.adamushko@...il.com>,
Max Krasnyansky <maxk@...lcomm.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Kernel Testers List <kernel-testers@...r.kernel.org>
Subject: Re: [Bug #11380] lockdep warning: cpu_add_remove_lock
at:cpu_maps_update_begin+0x14/0x16
On 11/10, Ingo Molnar wrote:
>
> * Rafael J. Wysocki <rjw@...k.pl> wrote:
>
> > This message has been generated automatically as a part of a report
> > of regressions introduced between 2.6.26 and 2.6.27.
> >
> > The following bug entry is on the current list of known regressions
> > introduced between 2.6.26 and 2.6.27. Please verify if it still should
> > be listed and let me know (either way).
> >
> > Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=11380
> > Subject : lockdep warning: cpu_add_remove_lock at:cpu_maps_update_begin+0x14/0x16
> > Submitter : Ingo Molnar <mingo@...e.hu>
> > Date : 2008-08-20 6:44 (82 days old)
> > References : http://marc.info/?l=linux-kernel&m=121921480931970&w=4
>
> had a quick look again: i believe this one still triggers, and it's
> caused by some interaction between input code and workqueue code. I
> think it started triggering when Oleg's workqueue annotation patches
> went upstream:
>
> 6af8bf3: workqueues: add comments to __create_workqueue_key()
> 8448502: workqueues: do CPU_UP_CANCELED if CPU_UP_PREPARE fails
> 8de6d30: workqueues: schedule_on_each_cpu() can use schedule_work_on()
> ef1ca23: workqueues: queue_work() can use queue_work_on()
> a67da70: workqueues: lockdep annotations for flush_work()
> 3da1c84: workqueues: make get_online_cpus() useable for work->func()
> 8616a89: workqueues: schedule_on_each_cpu: use flush_work()
> db70089: workqueues: implement flush_work()
> 1a4d9b0: workqueues: insert_work: use "list_head *" instead of "int tail"
"make get_online_cpus() useable for work->func()" changed the locking.
destroy_workqueue() was changed to take cpu_maps_update_begin() instead
of get_online_cpus(). Other patches can't make any difference afaics.
Currently I don't understand why lockdep complains, will try to do
more grepping later.
Oleg.
--
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