Bug 808 - NETDEV_TX_BUSY returned when (re)loading driver
: NETDEV_TX_BUSY returned when (re)loading driver
Status: VERIFIED FIXED
: IPW2200
Driver Load
: 1.0.7
: IBM All
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency treegraph
 
Reported: 2005-10-20 14:41 by
Modified: 2006-01-07 03:51 (History)


Attachments
patch to try (811 bytes, patch)
2005-10-24 22:42, Liu, Hong
Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2005-10-20 14:41:38
I've noticed that when I `modprobe -r ipw2200` and then `modprobe ipw2200` a
minute or so later (with 1.0.7) I get:

eth1: NETDEV_TX_BUSY returned; driver should report queue full via             
   ieee_device->is_queue_full.

The above message only appear once, and only upon reloading the driver.
------- Comment #1 From 2005-10-20 15:42:22 -------
I get the... eth1: NETDEV_TX_BUSY returned; driver should report queue full via
ieee_device->is_queue_full.

When doing a dhclient eth1, even if it has been loaded for hours already.
------- Comment #2 From 2005-10-24 11:12:26 -------
I booted my FC4 laptop and I saw this message in dmesg right after booting
(which brings up my wireless interface).

eth1: NETDEV_TX_BUSY returned; driver should report queue full via
ieee_device->is_queue_full.

kernel: 2.6.13-1.1532_FC4
ieee80211: 1.1.6
ipw2200: 1.0.8
------- Comment #3 From 2005-10-24 11:24:44 -------
I get them at boot time as well - upon the first modprobe of ipw2200.
------- Comment #4 From 2005-10-24 22:42:13 -------
Created an attachment (id=574) [details]
patch to try
------- Comment #5 From 2005-10-25 02:08:37 -------
(In reply to comment #4)
> Created an attachment (id=574) [edit] [details]
> patch to try

Works for me.
------- Comment #6 From 2005-10-25 07:42:01 -------
You can go ahead and close this bug. It also works for me.
------- Comment #7 From 2005-10-25 12:29:33 -------
I looked at the patch. It deletes the call to NETDEV_TX_BUSY and replaces it
with nothing. I have no knowledge of the internals of this driver, so feel free
to ignore me, but is just deleting it the right thing?

In other words:

1. What problem was the call to NETDEV_TX_BUSY trying to solve in the first place?
2. Does that problem still exist?

If (2.) is true, then deleting the call and replacing it with nothing isn't the
answer. 

The error message says is basically saying that the kernel API has changed and
now ieee_device->is_queue_full should be used instead.

The proposed patch doesn't do that.
------- Comment #8 From 2005-10-25 18:22:44 -------
two problems in the driver:
1. we now have the ieee_device->is_queue_full interface, and it will be called 
   at the beginning of ieee80211_xmit function. So no need to call it at the
   driver xmit function.
2. NETDEV_TX_BUSY happens to be 1, and in ipw_net_hard_start_xmit(), we will
   return 1 if the card is not associated, so the NETDEV_TX_BUSY message will
   appear even if queue is not full.

Thanks,
Hong
------- Comment #9 From 2005-10-27 07:59:12 -------
Marking as TESTED_PATCH_EXISTS for patch to be picked up
------- Comment #10 From 2005-11-01 14:13:10 -------
Works perfectly fine, thanks all!
------- Comment #11 From 2005-11-11 18:08:48 -------
Please push this patch to netdev for inclusion into Linus tree.

THANKS!
------- Comment #12 From 2005-11-11 18:10:00 -------
ieee80211_crypt: unregistered algorithm 'NULL'
ieee80211_crypt: registered algorithm 'NULL'
ieee80211: 802.11 data/management/control stack, git-1.1.7
ieee80211: Copyright (C) 2004-2005 Intel Corporation <jketreno@linux.intel.com>
ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, git-1.0.8
ipw2200: Copyright(c) 2003-2005 Intel Corporation
ACPI: PCI Interrupt 0000:02:02.0[A] -> Link [LNKC] -> GSI 11 (level, low) -> IRQ 11
PCI: Enabling bus mastering for device 0000:02:02.0
ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
eth1: NETDEV_TX_BUSY returned; driver should report queue full via
ieee_device->is_queue_full.
------- Comment #13 From 2005-11-17 10:26:13 -------
alejandro, could you test git-1.0.8 + the patch or just git-1.0.8
------- Comment #14 From 2005-11-17 14:56:34 -------
Mi,

I'm already on git-1.0.8. Check the errors above.

This patch does work against 1.0.8 tarball. Please push upstream.

Let me know if you need me to test anything else.
------- Comment #15 From 2005-11-24 07:29:23 -------
need to be verified on the next version
------- Comment #16 From 2006-01-07 03:51:47 -------
Verified with ipw2200-1.0.9.