On 01/10/2010 23:25, Chris Frey wrote:
> On Fri, Oct 01, 2010 at 05:14:04PM +0100, Toby Gray wrote:
>> Yes. Sorry, I missed out that rather essential bit of information :)
>> Option #4 fixes both the time out issue on some machines (which was
>> previously fixed by SET INTERFACE) and the usb-storage issue (which is
>> caused by SET INTERFACE).
>>> I'd pick 4, with lots of comments in the code to explain why. :-)
>> I was hoping you'd say go for 4. I've submitted it to my github branch
>> as c869133cae5f3b27b321. I've tested it with a range of OS v4 and OS v5
>> devices inside and outside of a VM and it works nicely.
> It's the best of both worlds, then.  Merged with gratitude. :-)
> And thanks for the large comment... very helpful for future maintenance.
Thanks for merging that. And no need to thank me; the existence of Barry 
has made supporting USB channels on Linux considerably easier so I'm 
more than happy to help.
>> I'm half tempted to add in option 2 as well, just to be sure that Barry
>> tries as hard as possible to work, even if it causes some issues with
>> usb-storage. What do you think?
> Option 2 was:
>
>>>> 2) Change the probing code in src/probe.cc so that it tries probing the
>>>> end points without a call to SET INTERFACE and then, if those probes
>>>> fail, calls SET INTERFACE and probes again. I think it's probably best
>>>> to probe all the end points and then call SET INTERFACE, rather than
>>>> doing a probe, SET INTERFACE, and then a re-probe for each end point in
>>>> turn. This would still have the usb-storage issue, but only for users
>>>> where calling SET INTERFACE is necessary.
> Currently there is no call to usb_set_altinterface() in Barry anymore.
> As I recall, that was useful for FreeBSD and Mac OSX, although it looks
> like you've tested on those platforms already with success.
Yes. There's still a build issue with Mac OS X and gettext, but see my 
other post to the mailing list about that.
> I'd say go for it.  If the common case almost always works, then there's
> no speed penalty during startup anyway.
Yeah. As quite a lot of this is timing dependent I was a bit fearful 
that even though all the machines I've tested on are fine with the 
current code, there might still sometimes be a need to call 
usb_set_altinterface(). I've made the changes in 9e346dc6025a9babad24 in 
my github branch.

Regards,

Toby

------------------------------------------------------------------------------
Virtualization is moving to the mainstream and overtaking non-virtualized
environment for deploying applications. Does it make network security 
easier or more difficult to achieve? Read this whitepaper to separate the 
two and get a better understanding.
http://p.sf.net/sfu/hp-phase2-d2d
_______________________________________________
Barry-devel mailing list
Barry-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/barry-devel

Reply via email to