From: Peter Zijlstra <peterz@infradead.org>
To: Tejun Heo <tj@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>, Rus <rus@sfinxsoft.com>,
linux-kernel@vger.kernel.org
Subject: Re: lockdep and kmemcheck
Date: Fri, 08 Jun 2012 09:55:20 +0200 [thread overview]
Message-ID: <1339142120.23343.28.camel@twins> (raw)
In-Reply-To: <20120608061037.GJ21357@google.com>
On Fri, 2012-06-08 at 15:10 +0900, Tejun Heo wrote:
> On Thu, Jun 07, 2012 at 09:45:16PM +0200, Borislav Petkov wrote:
> > static struct worker *create_worker(struct global_cwq *gcwq, bool bind)
> > {
> > bool on_unbound_cpu = gcwq->cpu == WORK_CPU_UNBOUND;
> > struct worker *worker = NULL;
> > int id = -1;
> >
> > spin_lock_irq(&gcwq->lock);
> > while (ida_get_new(&gcwq->worker_ida, &id)) {
> > spin_unlock_irq(&gcwq->lock);
> > if (!ida_pre_get(&gcwq->worker_ida, GFP_KERNEL))
> >
> > and GFP_KERNEL has __GFP_FS.
> >
> > > > [<ffffffff81ae441d>] init_workqueues+0x1f2/0x393
> > > > [<ffffffff81ae422b>] ? usermodehelper_init+0x36/0x36
> > > > [<ffffffff81ae422b>] ? usermodehelper_init+0x36/0x36
> > > > [<ffffffff81002122>] do_one_initcall+0x122/0x180
> > > > [<ffffffff81acbc7a>] kernel_init+0x9b/0x1f6
> > > > [<ffffffff815c1f74>] kernel_thread_helper+0x4/0x10
> > > > [<ffffffff815c0274>] ? retint_restore_args+0x13/0x13
> > > > [<ffffffff81acbbdf>] ? start_kernel+0x3d2/0x3d2
> > > > [<ffffffff815c1f70>] ? gs_change+0x13/0x13
> > > > ---[ end trace 6d450e935ee1897c ]---
> > > > MCE: In-kernel MCE decoding enabled.
> > > > NMI watchdog: enabled, takes one hw-pmu counter.
> >
> > Let's add some more people to CC.
> >
> > Tejun, this create_worker() uses ida_pre_get() with GFP_KERNEL mask
> > but lockdep complains about __GFP_FS allocations with IRQs off in
> > __lockdep_trace_alloc. What's up?
>
> The GFP_KERNEL allocation is right after spin_unlock_irq(). I suppose
> this is from early boot before IRQs are brought online, right? My
> memory is very fuzzy now but ISTR irq debug code and lockdep having
> workarounds for early boot. Peter?
early_boot_irqs_disabled, but kernel_init() is way past that, that's
where we've forked the first thread and are fully scheduling already.
next prev parent reply other threads:[~2012-06-08 7:55 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CAKgfjTktMLc5bfqhCOKy0evssxggofNQqLT-gQqBkHcBvOgF0g@mail.gmail.com>
2012-06-07 13:40 ` 3.[34].x Reproducable [Firmware bug] message upon warm boot only Rus
2012-06-07 14:24 ` Borislav Petkov
2012-06-07 14:51 ` Rus
2012-06-07 15:13 ` Borislav Petkov
2012-06-07 19:02 ` Rus
2012-06-07 19:33 ` lockdep and kmemcheck Borislav Petkov
2012-06-07 19:45 ` Borislav Petkov
2012-06-08 6:10 ` Tejun Heo
2012-06-08 7:55 ` Peter Zijlstra [this message]
2012-06-08 8:02 ` Peter Zijlstra
2012-06-08 8:06 ` Borislav Petkov
2012-06-07 21:00 ` 3.[34].x Reproducable [Firmware bug] message upon warm boot only Rus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1339142120.23343.28.camel@twins \
--to=peterz@infradead.org \
--cc=bp@alien8.de \
--cc=linux-kernel@vger.kernel.org \
--cc=rus@sfinxsoft.com \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox