Re: [PATCH] usb: ulpi: don't register drivers if bus doesn't exist

Sudip Mukherjee
2015-05-28T06:53:46Z

On Thu, May 28, 2015 at 12:12:56PM +0530, Sudip Mukherjee wrote:
> On Thu, May 28, 2015 at 12:54:59AM -0500, Felipe Balbi wrote:
> > On Thu, May 28, 2015 at 11:09:38AM +0530, Sudip Mukherjee wrote:
> > > On Wed, May 27, 2015 at 08:21:16AM -0700, Greg KH wrote:
> > > > On Wed, May 27, 2015 at 11:16:34AM -0400, Alan Stern wrote:
> > > > > On Wed, 27 May 2015, Heikki Krogerus wrote:
> > > >
> > > > Maybe we need to test for this in the driver core, not allowing drivers
> > > > for busses that are not registered, that might solve the main problem
> > > > here. I'll try to look at it tonight.
> > > may i suggest something like this ?
> > > buildtest with allmodconfig and allyesconfig on x86_64.
> > > built and booted on x86.
> > >
> > >
> > > diff --git a/drivers/base/bus.c b/drivers/base/bus.c
> > > index 5005924..95cefa0 100644
> > > --- a/drivers/base/bus.c
> > > +++ b/drivers/base/bus.c
> > > @@ -943,6 +943,7 @@ int bus_register(struct bus_type *bus)
> > > if (retval)
> > > goto bus_groups_fail;
> > >
> > > + bus->registered = true;
> >
> > once set, it's never cleared.
> It should be cleared when we go for bus_unregister.
apart from bus_register we need the check in some other places also.
like bus_create_file().

regards
sudip