printk() problems? [2.0.34]

David Luyer (luyer@ucs.uwa.edu.au)
Mon, 08 Jun 1998 16:12:40 +0800


In 2.0.34, I have a lot of debugging enabled in my network card
(pcmcia Xircom CEM33, it has frequent lockups under heavy traffic).
It seems to die when a transmit happens during a recieve. However,
this raises a problem with printk() - printk() seems to have insufficient
locking of a shared buffer, or something of that order. The line underlined
by XXXXXXXXXXXX is where my network card stops receiving (and no more
interrupts are recieved). EnterIntr is the start of the interupt routing,
EnableIntr is done at the end.

This problem with printk() means I don't know if the EnableIntr is
actually happening and getting lost or isn't happening.

In theory, the recv should printk()
EnterIntr
eth0: ISR=0x20 ESR=0x....
EnableIntr

and the xmit should printk() the do_start_xmit() line and then the avail tx
space line. So at least one line is missing and two lines are mangled,
the question is whether there is another line missing or if it didn't happen
for some reason. Is there a patch to make printk() better? Also, does anyone
have suggestions to fix the Xircom driver, it now seems the problem is an
xmit while processing an interrupt...

Jun 8 16:05:28 libretto kernel: xirc2ps_cs: EnableIntr
Jun 8 16:05:28 libretto kernel: xirc2ps_cs: EnterIntr
Jun 8 16:05:28 libretto kernel: eth0: ISR=0x20 ESR=0x61 RSR=0xa0 TSR=0x0000
Jun 8 16:05:28 libretto kernel: xirc2ps_cs: EnableIntr
Jun 8 16:05:28 libretto kernel: xirc2ps_cs: do_start_xmit(skb=0129ac80, dev=00090ce4) len=98
Jun 8 16:05:28 libretto kernel: eth0: avail. tx space=7168 (okay)
Jun 8 16:05:28 libretto kernel: xirc2ps_cs: EnterIntr
Jun 8 16:05:28 libretto kernel: eth0: ISR=0x20 ESR168 (okay)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Jun 8 16:05:28 libretto kernel: xirc2ps_cs: do_start_xmit(skb=0127fc80, dev=00090ce4) len=98
Jun 8 16:05:28 libretto kernel: eth0: avail. tx space=7168 (okay)
Jun 8 16:05:28 libretto kernel: xirc2ps_cs: do_start_xmit(skb=0127fc80, dev=00090ce4) len=98
Jun 8 16:05:28 libretto kernel: eth0: avail. tx space=7168 (okay)
Jun 8 16:05:28 libretto kernel: xirc2ps_cs: do_start_xmit(skb=00553098, dev=00090ce4) len=98

David.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu