Comment 56 for bug 1175091

Revision history for this message
In , Bpoirier (bpoirier) wrote :

Created an attachment (id=552666)
trace analysis script

Thank you for this trace.
It shows that many buffers in fact straddle page boundaries but that does not
systematically lead to a stall.

zcat c35-trace.gz | ./analyze.py
[...]
rfd 5 mapped, page left 1856
rfd 7 recv, page left ?
rfd 6 mapped, page left 64
[...]
rfd 5 recv, page left ?
rfd 4 mapped, page left 2240
overflow after rfd 5 (repeated 530 times)
[...]

The trace exhibits one case of stall and it happens right before reading from
a receive buffer that was mapped to within 64 bytes of a page boundary. This
is the smallest distance within the entire trace. (The second smallest being
192). I'm wondering if the stall also depends on how much data the card
actually writes into the buffer (ie. the stall happens when the cards actually
writes accross a page). I've updated the kmp to also trace this information.
If you can give it another spin, it'll be much appreciated - for science's
sake!

The kmp can be installed from the same location as comment 31. New srcversion
is 057EBD10FCF6584249086C0.