On Tue, 15 Aug 2017, Steven Timms wrote: > Hi Alan, thank you for looking in to this. I am not a programmer but I am > technically capable. Although I have not done debugging before I am happy > to provide the data. Is it as simple as sending audio data to the DAC and > then running a program from the terminal? If so it should be simple for me > if you don't mind giving me some steps to follow. Here are some things you can easily do right away: Mount a debugfs filesystem: mount -t debugfs none /sys/kernel/debug Then while sending data to the DAC (something that would cause an unpatched kernel to fail), make a copy of /sys/kernel/debug/usb/devices and post that copy. For a second test, enable debugging for ehci-hcd: echo 'module ehci_hcd =p' >/sys/kernel/debug/dynamic_debug/control Then clear the system log buffer: dmesg -C The run the test program briefly (a few seconds of data to the DAC will be enough). When that's done, make a copy of the output from "dmesg" and post that. > Thanks, I am gobsmacked that emailing Linus actually worked, I've never > done this before :) you guys are awesome Linus tends to be pretty busy. It's generally better to email the developers responsible for the particular devices or subsystems where the problems occur. Alan Stern > On 15 Aug. 2017 6:49 am, "Alan Stern" <stern@xxxxxxxxxxxxxxxxxxx> wrote: > > On Mon, 14 Aug 2017, Linus Torvalds wrote: > > > Greg, Alan, > > > > You guys are presumably aware of this, but I got this email about the > > EHCI iso strem scheduler problem with some audio DAC's. > > Actually no, I wasn't aware of it. > > > This kernel code all goes back to 2013 or earlier, so I dunno, but > > there's a patch in there: > > > > https://github.com/comps/ehci-mdac/blob/master/patches/ > Ubuntu-3.11.0-17.30.patch > > > > that looks like it obviously fixes some problem for somebody. > > > > The reason I'm forwarding this is that the patch actually looks better > > than the current code, so maybe it really is valid, even if the fact > > that this is all old code makes me wonder. > > > > Comments? > > The difference in appearance notwithstanding, the patch is really the > same as the existing code except for the order of the search (the patch > searches forward and the existing code searches backward). > > Whether the results are superior depends very much on the particular > load running on the system. Different DACs will have different > requirements. If Steven is willing to do some debugging, I can try to > figure out what is going wrong on his system. > > The difficulty, of course, is that the existing code _fixes_ a number > of systems. See commit 811c926c538f ("USB: EHCI: fix HUB TT scheduling > issue with iso transfer"). sitd scheduling is ridiculously > complicated, and the way we do it will not always work. > > Alan Stern > > > Linus > > > > On Mon, Aug 14, 2017 at 4:34 AM, Steven Timms <steven.p.timms@xxxxxxxxx> > wrote: > > > Hi Linus, > > > > > > I am a big fan and I hope you don't mind an email question sometimes. > Since > > > 2014 there has been a change to the ehci-hcd driver, namely 'split > > > transaction schedualing'. This has broken many USB audio DACs. I am not > a > > > programmer, just a patient 'user', I was hoping something might change > over > > > the years but still some DACs don't work properly. > > > There was a github page dedicated to the issue: > > > https://github.com/comps/ehci-mdac > > > But hasn't ended up in the linux kernel. Perhaps the DACs are the > problem > > > and not the kernel driver. I don't know. Anyway I just wanted to bring > it to > > > your attention. > > > > > > > > > Thank you so much, > > > > > > Steven > -- 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