[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20080423101123.a69e4945.zaitcev@redhat.com>
Date: Wed, 23 Apr 2008 10:11:23 -0700
From: Pete Zaitcev <zaitcev@...hat.com>
To: Pekka J Enberg <penberg@...helsinki.fi>
Cc: Ingo Molnar <mingo@...e.hu>, Frans Pop <elendil@...net.nl>,
linux-kernel@...r.kernel.org, linux-usb@...r.kernel.org,
gregkh@...e.de, zaitcev@...hat.com
Subject: Re: [sched-devel/latest] WARNING: at mm/slub.c:2443
On Wed, 23 Apr 2008 10:38:45 +0300 (EEST), Pekka J Enberg <penberg@...helsinki.fi> wrote:
> > The code analysis for usbmon shows nothing. Anyone wants to have
> > a look?
Thanks for taking this little challenge, let's have a look...
> --- a/drivers/usb/mon/mon_text.c
> +++ b/drivers/usb/mon/mon_text.c
> @@ -449,6 +449,7 @@ static struct mon_event_text *mon_text_read_wait(struct mon_reader_text *rp,
> if (file->f_flags & O_NONBLOCK) {
> set_current_state(TASK_RUNNING);
> remove_wait_queue(&rp->wait, &waita);
> + kmem_cache_free(rp->e_slab, ep);
> return ERR_PTR(-EWOULDBLOCK);
The code looks like this:
while ((ep = mon_text_fetch(rp, mbus)) == NULL) {
if (file->f_flags & O_NONBLOCK) {
set_current_state(TASK_RUNNING);
remove_wait_queue(&rp->wait, &waita);
return ERR_PTR(-EWOULDBLOCK);
It's impossible to get inside the while() with non-null ep,
so your patch doesn't fix anything (even if kmem_cache_free
can survive a NULL object).
Any other ideas?
-- Pete
--
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