Re: [PATCH 004/004] [RESUBMIT] USB: serial: sierra driver interface blacklisting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2009-05-12 at 17:19 -0700, Greg KH wrote:
> On Tue, May 12, 2009 at 01:13:10PM -0700, Elina Pasheva wrote:
> > Subject: [PATCH 004/004] USB: serial: sierra driver interface blacklisting 
> > From: Elina Pasheva <epasheva@xxxxxxxxxxxxxxxxxx>
> > 
> > The following is summary of changes we have made to sierra.c driver in
> > [PATCH 004/004] dealing with interface blacklisting support:
> > - Modified sierra_probe() and sierra_calc_interface() to handle blacklisted
> > interfaces accordingly
> > - Added data list structure and function to support blacklisting
> 
> But you never use this structure.  Why add it?
> 
> > - Improved comments in id_table
> > Signed-off-by: Elina Pasheva <epasheva@xxxxxxxxxxxxxxxxxx>
> > ---
> > 
> >  drivers/usb/serial/sierra.c |   45 +++++++++++++++++++++++++++++++++++++++---
> >  1 file changed, 42 insertions(+), 3 deletions(-) 
> > 
> > --- a/drivers/usb/serial/sierra.c	2009-05-01 13:17:14.000000000 -0700
> > +++ b/drivers/usb/serial/sierra.c	2009-05-01 17:30:05.000000000 -0700
> > @@ -47,6 +47,12 @@
> >  static int debug;
> >  static int nmea;
> >  
> > +/* list of interface numbers - used for constructing interface blacklists */
> > +struct list {
> > +	const u32 listlen; /* number of interface numbers on list */
> > +	const u8  *list;   /* pointer to the array holding the numbers */
> > +};
> 
> The kernel has built in list functions, I would recommend using them
> instead of creating something so generic as "struct list" in your
> driver.
> 
> And how is this interface list used to create a blacklist?  I see you do
> create one:
> > +static const u8 direct_ip_non_serial_ifaces[] = { 7, 8, 9 };
> > +static const struct list direct_ip_interface_blacklist = {
> > +	.listlen = ARRAY_SIZE(direct_ip_non_serial_ifaces),
> > +	.list = direct_ip_non_serial_ifaces,
> > +};
> 
> But then you never refer to it in the code.
> 
> Am I missing something here?
> 
> confused,
> 
> greg k-h
> 

Hi Greg,

Sorry for the confusion with this series of 4 patches. The answer to
your questions about why we added these items without using them is that
they actually do get used in the upcoming series of 8 patches. If you
will allow this "strange" patch just this once you will see everything
come together in the next series of 8. NOTE: The current series of 4
patches will build and run as-is.

As for your comment about Linux supporting built-in list functions, we
will add it to our jobjar to fix this in a future patch (i.e. do it the
Linux way).

By way of justifying the long and arduous series of patches we've been
sending, perhaps we took the advice to keep our changes finely grained
too much to heart. As you can see, we made *a lot* of changes to the
driver and are now paying the price with a barrage of patches. We have
learned our lesson and will be thinking about how best to structure any
future changes to this driver to minimize the patches any changes will
generate. We see a few more things that need to be addressed, but we're
ignoring all that until the kernel is up to date with our CVS
repository.

Thanks,
Elina Pasheva,
Rory Filer



--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux