linux/drivers/char
David Sterba eb4e545d4a ipwireless: Fix blocked sending
Packet sending is driven by two flags, tx_ready and tx_queued.
It was possible, that there were queued data for sending and
hardware was flagged as blocked but in fact it was not.

The tx_queued was indicator but should be really a counter else
first fragmented packet resets tx_queued flag, but there may be
pending packets which do not get sent.

New semantics:
tx_ready - set, if hw is ready to send packet, no packet is being
           transferred right now
           set the flag right at the place where data are copied
           into hw memory and not earlier without checking if it
           was succesful
tx_queued - count of enqueued packets, including fragments

Tested-by: Michal Rokos <michal.rokos@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-06-06 11:31:02 -07:00
..
agp drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
drm remove debug printk from DRM suspend path 2008-05-23 08:53:13 -07:00
hw_random virtio: An entropy device, as suggested by hpa. 2008-05-30 15:09:44 +10:00
ip2 ip2: fix crashes on load/unload 2008-05-24 09:56:11 -07:00
ipmi ipmi: support I/O resources in OF driver 2008-05-14 19:11:14 -07:00
mwave arm/mach-integrator/time.c, mwave: revert portions of recent irq cleanups 2008-04-24 08:35:37 -04:00
pcmcia ipwireless: Fix blocked sending 2008-06-06 11:31:02 -07:00
rio drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
tpm tpm: change Kconfig dependencies from PNPACPI to PNP 2008-04-29 08:06:26 -07:00
xilinx_hwicap [POWERPC] Xilinx: Fix compile warnings 2008-05-01 23:09:42 -05:00
.gitignore
amiserial.c amiserial: Switch put char to return success/fail 2008-04-30 08:29:45 -07:00
apm-emulation.c proc: switch /proc/apm to seq_file interface 2008-04-29 08:06:19 -07:00
applicom.c char serial: switch drivers to ioremap_nocache 2008-04-30 08:29:48 -07:00
applicom.h
bfin-otp.c Blackfin char driver for Blackfin on-chip OTP memory (v3) 2008-04-25 08:04:56 +08:00
briq_panel.c
cd1865.h
ChangeLog
consolemap.c Basic braille screen reader support 2008-04-30 08:29:52 -07:00
cp437.uni
cs5535_gpio.c drivers: fix integer as NULL pointer warnings 2008-04-28 17:31:13 -07:00
cyclades.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
defkeymap.c_shipped Fix default compose table initialization 2008-03-03 14:53:16 -08:00
defkeymap.map
digi1.h
digiFep1.h
digiPCI.h
ds1286.c drivers/char/ds1286.c: use time_before, time_before_eq, etc 2008-04-30 08:29:45 -07:00
ds1302.c
ds1620.c
dsp56k.c
dtlk.c
efirtc.c
epca.c epca: coding style 2008-04-30 08:29:47 -07:00
epca.h
epcaconfig.h
esp.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
generic_nvram.c
generic_serial.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
genrtc.c
hangcheck-timer.c
hpet.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
hvc_beat.c [POWERPC] hvcbeat: Fix buffer manipulation 2008-04-17 07:46:10 +10:00
hvc_console.c
hvc_console.h
hvc_iseries.c
hvc_rtas.c
hvc_vio.c
hvc_xen.c
hvcs.c
hvsi.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
i8k.c i8k: make fan multiplier tunable with a module parameter 2008-05-01 08:04:00 -07:00
ip27-rtc.c
isicom.c isicom: fix buffer allocation 2008-04-30 08:29:47 -07:00
istallion.c char serial: switch drivers to ioremap_nocache 2008-04-30 08:29:48 -07:00
Kconfig drivers/char/ip2: fix Kconfig after ip2/ip2main merge 2008-06-06 11:29:09 -07:00
keyboard.c Basic braille screen reader support 2008-04-30 08:29:52 -07:00
lcd.c
lcd.h
lp.c
Makefile Blackfin char driver for Blackfin on-chip OTP memory (v3) 2008-04-25 08:04:56 +08:00
mbcs.c
mbcs.h
mem.c make /dev/kmem a config option 2008-04-29 08:05:59 -07:00
misc.c drivers: use non-racy method for proc entries creation 2008-04-29 08:06:22 -07:00
mmtimer.c remove div_long_long_rem 2008-05-01 08:03:58 -07:00
moxa.c char serial: switch drivers to ioremap_nocache 2008-04-30 08:29:48 -07:00
moxa.h Char: moxa, cleanup rx/tx 2008-04-30 08:29:43 -07:00
mspec.c [IA64] allocate multiple contiguous pages via uncached allocator 2008-04-29 13:49:01 -07:00
mxser.c mxser: convert large macros to functions 2008-04-30 08:29:49 -07:00
mxser.h mxser: convert large macros to functions 2008-04-30 08:29:49 -07:00
n_hdlc.c tty: The big operations rework 2008-04-30 08:29:47 -07:00
n_r3964.c tty: The big operations rework 2008-04-30 08:29:47 -07:00
n_tty.c tty: fix BKL related leak and crash 2008-05-15 10:19:30 -07:00
nozomi.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
nsc_gpio.c
nvram.c
nwbutton.c
nwbutton.h
nwflash.c
pc8736x_gpio.c
ppdev.c
ps3flash.c
pty.c pty: prepare for tty->ops changes 2008-04-30 08:29:46 -07:00
random.c random: add async notification support to /dev/random 2008-04-29 08:06:25 -07:00
raw.c
riscom8_reg.h
riscom8.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
riscom8.h
rocket_int.h char: use get_unaligned_* helpers 2008-04-29 08:06:27 -07:00
rocket.c riscom/rocket: switch to int put_char method 2008-04-30 08:29:46 -07:00
rocket.h
rtc.c drivers: use non-racy method for proc entries creation 2008-04-29 08:06:22 -07:00
scc.h
scx200_gpio.c
selection.c
ser_a2232.c
ser_a2232.h
ser_a2232fw.ax
ser_a2232fw.h
serial167.c m68k: serial167 missing return value in cy_put_char() 2008-05-05 12:37:02 -07:00
snsc_event.c byteorder: don't directly include linux/byteorder/generic.h 2008-05-16 12:01:45 -07:00
snsc.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
snsc.h Convert asm/semaphore.h users to linux/semaphore.h 2008-04-18 22:22:54 -04:00
sonypi.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
specialix_io8.h
specialix.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
stallion.c tty/serial: lay the foundations for the next set of reworks 2008-04-30 08:29:45 -07:00
sx.c sx.c: fix printk warnings on sparc32 2008-05-08 10:46:56 -07:00
sx.h
sxboards.h
sxwindow.h
synclink_gt.c drivers/char/synclink_gt.c: don't return an uninitialised local 2008-05-13 08:02:26 -07:00
synclink.c drivers-char-synclinkc-inbreak-mgsl_put_char-fix 2008-05-01 08:04:02 -07:00
synclinkmp.c char serial: switch drivers to ioremap_nocache 2008-04-30 08:29:48 -07:00
sysrq.c sparc64: Add global register dumping facility. 2008-05-20 00:33:45 -07:00
tb0219.c
tlclk.c
toshiba.c toshiba: use ioremap_cached 2008-04-30 23:15:34 +02:00
tty_audit.c [PATCH] split linux/file.h 2008-05-01 13:08:16 -04:00
tty_io.c tty_check_change(): avoid taking tasklist_lock while holding tty->ctrl_lock 2008-05-14 19:11:15 -07:00
tty_ioctl.c tty: add throttle/unthrottle helpers 2008-04-30 08:29:47 -07:00
vc_screen.c
viocons.c [POWERPC] iSeries: Remove unused mail address 2008-05-23 16:45:04 +10:00
viotape.c [POWERPC] iSeries: Remove unused mail address 2008-05-23 16:45:04 +10:00
virtio_console.c
vme_scc.c m68k vme_scc: avoid global namespace pollution 2008-05-18 13:28:48 -07:00
vr41xx_giu.c
vt_ioctl.c vt_ioctl: Prepare for BKL push down 2008-04-30 08:29:40 -07:00
vt.c vt: fix vc_resize locking 2008-06-06 11:29:12 -07:00