Steven J. Hill wrote: > Brian Murphy wrote: > >> In pcnet32.c where the driver writer sets up her receive buffers >> there is this line >> >> lp->rx_dma_addr[i] = pci_map_single(lp->pci_dev, rx_skbuff->tail, >> rx_skbuff->len, PCI_DMA_FROMDEVICE); >> >> the length value turns out to be 0 and crashes the running >> process,ifconfig. >> Is making a map for a buffer of length 0 valid at all? If not what >> the hell is going on here. >> >> I feel this should say PKT_BUF_SZ instead of rx_skbuff->len which is >> the length of skbuff which has been >> allocated at this point in the code, this is line 986 in todays >> checkout. >> >> Something is wrong in any case, any pointers? >> > Excellent. So my new BUG code detected another bad network driver. > Your network Not sure what you mean. I get the panic "Break instruction in kernel code" from do_bp in traps.c. This seems like a strange "assertion" to me... Anyway the attached patch fixes my problems, is anyone interested in reviewing it? /Brian