[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20061024150700.GA1735@hmsreliant.homelinux.net>
Date: Tue, 24 Oct 2006 11:07:00 -0400
From: Neil Horman <nhorman@...driver.com>
To: Matthew Wilcox <matthew@....cx>
Cc: Benjamin Herrenschmidt <benh@...nel.crashing.org>, akpm@...l.org,
kernel-janitors@...ts.osdl.org, maxk@...lcomm.com,
kjhall@...ibm.com, linux-kernel@...r.kernel.org
Subject: Re: [KJ] [PATCH] Correct misc_register return code handling in several drivers
On Tue, Oct 24, 2006 at 07:24:37AM -0600, Matthew Wilcox wrote:
> On Tue, Oct 24, 2006 at 08:53:06AM -0400, Neil Horman wrote:
> > The INIT_LIST_HEAD is there to prevent a potential oops on module removal.
> > misc_register, if it fails, leaves miscdevice.list unchanged. That means its
> > next and prev pointers contain NULL or garbage, when both pointers should contain
> > &miscdevice.list. If we don't do that, then there is a chance we will oops on
> > module removal when we do a list_del in misc_deregister on the moudule_exit
> > routine. I could have done this statically, but I thought it looked cleaner to
> > do it with the macro in the code.
>
> Maybe it would be better to have misc_register() call INIT_LIST_HEAD in
> the failure case?
Hmm, that seems reasonable. If you don't mind, since there are other unrelated
clean-ups in this patch, I'll make that change in a follow on patch. But I
think thats a good idea.
Thanks & Regards
Neil
--
/***************************************************
*Neil Horman
*Software Engineer
*gpg keyid: 1024D / 0x92A74FA1 - http://pgp.mit.edu
***************************************************/
-
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