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 long vs. unsigned long - low-hanging fruits in drivers 2007-10-14 12:41:51 -07:00
dtlk.c
efirtc.c drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
epca.c epca: coding style 2008-04-30 08:29:47 -07:00
epca.h Char: char/serial, remove SERIAL_TYPE_NORMAL redefines 2008-02-07 08:42:33 -08:00
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 drivers/char/: Spelling fixes 2008-02-03 17:11:42 +02:00
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 drivers/char: use LIST_HEAD instead of LIST_HEAD_INIT 2008-02-06 10:41:07 -08:00
hvc_console.h
hvc_iseries.c [POWERPC] init and exit markings for hvc_iseries 2007-07-22 21:30:59 +10:00
hvc_rtas.c [POWERPC] hvc_rtas_init() must be __init 2008-02-14 22:11:02 +11:00
hvc_vio.c
hvc_xen.c xen: use the hvc console infrastructure for Xen console 2007-07-18 08:47:44 -07:00
hvcs.c drivers/char: use LIST_HEAD instead of LIST_HEAD_INIT 2008-02-06 10:41:07 -08:00
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 ip27-rtc: convert ioctl to unlocked_ioctl 2008-02-06 10:41:14 -08:00
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 [MIPS] Delete duplicate inclusion of <linux/delay.h>. 2007-08-27 02:16:59 +01:00
lcd.h
lp.c Parallel port: convert port_mutex to the mutex API 2008-02-06 10:41:01 -08:00
Makefile Blackfin char driver for Blackfin on-chip OTP memory (v3) 2008-04-25 08:04:56 +08:00
mbcs.c MBCS: convert dmareadlock to mutex 2008-02-07 08:42:25 -08:00
mbcs.h MBCS: convert dmareadlock to mutex 2008-02-07 08:42:25 -08:00
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 [PARPORT] Remove unused 'irq' argument from parport irq functions 2007-10-23 19:53:16 -04:00
ps3flash.c ps3: FLASH ROM Storage Driver 2007-07-21 17:49:16 -07:00
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 cdev: remove unneeded setting of cdev names 2007-10-12 14:51:02 -07:00
riscom8_reg.h
riscom8.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
riscom8.h Char: riscom8, remove wakeup and hangup bottomhalves 2008-02-07 08:42:34 -08:00
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 Amiga serial driver: port_write_mutex fixup 2008-02-06 10:41:08 -08:00
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 Char: specialix, remove bottomhalves 2008-02-07 08:42:34 -08:00
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 Char: char/serial, remove SERIAL_TYPE_NORMAL redefines 2008-02-07 08:42:33 -08:00
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 virtio: simplify config mechanism. 2008-02-04 23:49:57 +11:00
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