Re: remote debugging via FireWire * __fast__ firedump!

Bernhard Kaindl
2007-12-06T16:32:31Z

On Tue, 4 Dec 2007, Stefan Richter wrote:
>
> A quick note to this text from
> http://www.suse.de/~bk/firewire/ohci1394_dma_early.diff :
>> + As all changes to the FireWire bus such as enabling and disabling
>> + devices cause a bus reset and thereby disable remote DMA for all
>> + devices, be sure to have FireWire enabled on the debug host (and
>> + the cable plugged) before booting the debug target for debugging.
>
> Bus resets are also caused by bus managing software, which Linux' old
> and new FireWire stacks and the stacks of all other FireWire capable
> desktop OSs are to varying degrees.

Yes, I can also trigger it raw1394_reset_bus() from libraw1394.

> I wonder if the following could
> happen: The two PCs are directly connected, only the PHY of the
> debugging PC is active, then the PHY of the debugged PC is activated,
> becomes root node, debugging PC examines the bus, then resets the bus to
> force its own PHY to become root node in order to get a working
> isochronous resource manager. This bus reset would switch remote DMA on
> the debugged PC off.

Yes, that's the case. The PHY of the debugging PC must be active before the
booting a kernel with the early OHCI-1394 initialisation on the debugged
machine.

I tried to to instruct users to do exactly that in that part of the help
text, but changed the wording now in to hope to make it clearer:

+ [...] be sure to have the cable plugged and FireWire enabled on
+ the debugging host before booting the debug target for debugging.

and I added new file, installed as Documentation/debugging-via-ohci1394.txt
to give a more detailed HOWTO with links to all available tools and a step
by step guide on how to create a setup for using firescope.

ftp://ftp.suse.de/private/bk/firewire/kernel/ohci1394_dma_early-v2.diff

I'll submit that patch for full review in my next mail.

Bernhard