get a still sysrq-t call trace, not a moving one

From: Gary Shi
Date: Fri Apr 11 2008 - 17:44:07 EST


Hi friends,

when I read sysrq-t call trace, I find the collected call trace for
some cases is not a still snapshot, but a moving one. After checking
show_state src, I realize other cpus are not frozen when one cpu is
doing show_state; thus some task switching can occur among those cpus,
even the cpu doing sysrq for some kind of kernels.

This moving call traces make debugging much more difficult, or even
impossible for some cases, since some tasks have been switched in/out
which make us lose the trace of some important data, like who is
holding a lock when lots of threads are blocked on the lock.

In order to get a still image of sysrq-t call trace, I'd like to
suggest freezing all other cpus and disabling irq of local cpu.

Any ideas about this?

Thanx
-gys

pls cc me when you reply since I haven't subscribed to the mailing list.
--
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/