RE: Kernel Debugging Support

From: Paul Zimmerman
Date: Mon Aug 04 2014 - 17:55:27 EST


> From: Valdis.Kletnieks@xxxxxx [mailto:Valdis.Kletnieks@xxxxxx]
> Sent: Monday, August 04, 2014 1:28 PM
>
> On Mon, 04 Aug 2014 19:40:15 -0000, Paul Zimmerman said:
>
> > Ah, you didn't read far enough down the page :)
>
> I'm willing to bet a large pizza with everything but anchovies that
> out in the real world, a lot of implementors didn't read further either. :)

Nah, I won't take that bet :)

> > So I have to believe there are a *lot* of systems out there that do support xHCI debug.
>
> Possibly. But enough to make an actual critical mass to motivate somebody
> to write code? Or do you get more bang-for-buck by fixing kgdb to support
> debugging over Ethernet?

Well, code to support the xHCI debug capability has been written, see
http://marc.info/?l=linux-usb&m=135948845511047. But I did not get
approval from my management to spend the time needed to integrate this
into the kernel's kgdb support.

Nick, if you are still interested in this, you could take a look at the
above code, and see if you can work out how to modify it to make it work
with kgdb. But you will need a PC that has a debug-capable xHCI
controller in order to test it. If you have PC or laptop with USB 3.0
built-in that has the Windows 8 logo, I think there's a good chance you
already have one. Or, according to
http://pete.akeo.ie/2011/08/do-necrenesas-upd720200-based-usb-30.html,
plug-in USB 3.0 host cards that use the newer Renesas uPD720201 chipset
also have the debug capability.

Note that the above patch is against a pretty old kernel (3.6), so the
first thing you would need to do is forward-port it to work on the
latest kernel. As a plus, that would give you some real experience
working with kernel code, which everyone seems to agree you need ;)

--
Paul

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