Kristen Accardi <[EMAIL PROTECTED]> wrote:
>
> On Fri, 2005-08-05 at 15:26 -0700, Andrew Morton wrote:
> > Kristen Accardi <[EMAIL PROTECTED]> wrote:
> 
> > > + if (!quirk)
> > > +         return -ENOMEM;
> > > + 
> > > + INIT_LIST_HEAD(&quirk->list);
> > > + quirk->dev = dev;
> > > + list_add(&quirk->list, &msi_quirk_list);
> > > + return 0;
> > > +}
> > 
> > Does the list not need any locking?
> 
> Actually, I'm glad you asked that question because I was wondering that
> myself.  The devices are added to the list at boot time, and after that
> time, the list will never change.  Does PCI enumeration happen on all
> processors?  I thought maybe it only happened on one.  In that case we
> don't need a lock I don't think.  
> 

do_basic_setup() is called after SMP is up and running.  do_basic_setup()
calls driver_init() and most of the initcalls.  Plus there's kernel
preemption.

So yup, I think you need locking..
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to