Messages in this thread | | | Date | Thu, 9 Dec 2010 16:41:46 -0800 (PST) | From | Luben Tuikov <> | Subject | Re: [PATCH 2/4] [USB] UASP: Add MaxNumStreams module parameter |
| |
--- On Thu, 12/9/10, Greg KH <greg@kroah.com> wrote: > -0800, Sarah Sharp wrote: > > On Thu, Dec 09, 2010 at 02:54:19PM -0800, Luben Tuikov > wrote: > > > --- On Thu, 12/9/10, Sarah Sharp <sarah.a.sharp@linux.intel.com> > wrote: > > > > -0800, Luben Tuikov wrote: > > > > > Signed-off-by: Luben Tuikov <ltuikov@yahoo.com> > > > > > --- > > > > > The long story is that we see some > host > > > > controllers misreport their > > > > > PSA as they solved 2^v = streams, > instead of > > > > 2^(v+1) = streams. Thus > > > > > They report that they support 32 > streams when in > > > > fact they support 16. > > > > > When the device attempts to return > status for > > > > stream > 15, the host > > > > > says ACK(NumP=0), the device goes in > flow > > > > control, blah, blah, this > > > > > module parameter allows you to set a > max cap on > > > > the number of streams > > > > > the driver will ask XHCI HCD to > allocate. > > > > > > > > If this is an issue with a host then the > work-around should > > > > be in the > > > > xHCI driver instead. It should be based on > the > > > > vendor/device ID of the > > > > offending host instead of being a module > parameter in the > > > > UAS driver. > > > > The only people who benefit from this patch > are the people > > > > "in the know" > > > > about which hosts are buggy, not normal > Linux users. > > > > > > The OS might want to limit the number of streams > for reasons other > > > than a buggy HC. So this module parameter add > flexibility other than > > > making a buggy HC work. > > > > Ok, that's fine, but my comments still stand about > fixing this > > particular bug in the xHCI driver, rather than in the > UAS driver. > > I agree. > > Also, a module parameter will not work when your driver is > connecting to > different xHCI devices in the same system. Please > never add module > parameters anymore, there is usually never a need for them > at all.
I hesitated a lot before adding this module parameter. I did not want to add it since of course the obvious solution is to have a "black list" in the XHCI HCD. I think everyone knows this.
But at the time and still in some ways, it seemed like a valuable addition. Of course, when not set (default behavior) it doesn't impact the operation of the driver.
Luben
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |