Hi, I still have a problem with the above mentioned subject, and am looking for help how to debug this. The setup and symptom: - WLAN (802.11g) device in ad-hoc mode - udp multicast stream sent out over WLAN device - queue suddenly stops (no packets transmitted, and the socket's queue as seen with "cat /proc/net/udp" is non-empty - sending a single packet out (!) over the same interface (e.g. an ARP packet by trying to ping a non-existent host on the subnet) immediately resumes normal operation Now my problem: - I have only seen this problem with the device (driver) in question - how can device queue be the problem if another packet _sent_ over the same device resumes queue operation? I added printk's in the driver to track the state of netif_{stop,wake}_queue, and even when the (in-kernel) queue was stopped, the last printk was "netif_wake_queue". Unfortunately, the driver is not (yet, they promised to release it) GPL, so here is the structure of the transmit and irq path: dev_eth_transmit(){ ... spin_lock_irqsave(); [queue the packet] if(queue full){ netif_stop_queue(nwdev); tx_full_flag = 1; } [trigger the hardware to send queued packet] spin_lock_irqrestore(); } dev_interrupt(){ spin_lock(); [handle interrupt sources] if(tx_full_flag){ if(queue not full){ netif_wake_queue(nwdev); tx_full_flag = 0; } } spin_unlock(); } So as far as I can see, there are no race condidtions. Any hints on what could cause this, or how what I could do to further track this down? Regards, Wolfgang - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html