kernel-ark/drivers/scsi
Mike Christie 665b44aee3 [SCSI] iscsi: dequeue all buffers from queue
debugged by wrwhitehead@novell.com
patch and analysis by fujita.tomonori@lab.ntt.co.jp

Only tcp_read_sock and recv_actor (iscsi_tcp_data_recv for us) see
desc.count. It is is used just for permitting tcp_read_sock to read
the portion of data in the socket.

When iscsi_tcp_data_recv sees a partial header, it sets
desc.count. However, it is possible that the next skb (containing the
rest of the header) still does not come. So I'm not sure that this
scheme is completely correct.

Ideally, we should use the exact length of the data in the socket for
desc.count. However, it is not so simple (see SIOCINQ in
tcp_ioctl). So I think that iscsi_tcp_data_recv can just stop playing
with desc.count and tell tcp_read_sock to read the all skbs. As
proposed already, if iscsi_tcp_data_ready sets desc.count to
non-zero, tcp_read_sock does that.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2006-05-10 10:13:44 -05:00
..
aacraid [SCSI] aacraid: Driver version update 2006-04-13 10:13:21 -05:00
aic7xxx [SCSI] aic79xx: target hotplug fixes 2006-04-13 13:23:11 -05:00
aic7xxx_old
arm
dpt
ibmvscsi [SCSI] ibmvscsi: convert kmalloc + memset to kcalloc 2006-04-14 15:50:04 -05:00
lpfc
megaraid
pcmcia [PATCH] pcmcia: use bitfield instead of p_state and state 2006-03-31 17:26:33 +02:00
qla2xxx
sym53c8xx_2 [SCSI] sym2: Fix build when spinlock debugging is enabled 2006-04-13 10:13:30 -05:00
.gitignore
3w-9xxx.c [SCSI] 3ware 9000 disable local irqs during kmap_atomic 2006-04-13 13:27:38 -05:00
3w-9xxx.h
3w-xxxx.c [PATCH] 3ware: kmap_atomic() fix 2006-04-11 06:18:46 -07:00
3w-xxxx.h
53c7xx_d.h_shipped
53c7xx_u.h_shipped
53c7xx.c
53c7xx.h
53c7xx.scr
53c700_d.h_shipped
53c700.c
53c700.h
53c700.scr
a100u2w.c
a100u2w.h
a2091.c
a2091.h
a3000.c
a3000.h
advansys.c
advansys.h
aha152x.c
aha152x.h
aha1542.c
aha1542.h
aha1740.c
aha1740.h
ahci.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
aic7xxx_old.c
amiga7xx.c
amiga7xx.h
ata_piix.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
atari_dma_emul.c
atari_NCR5380.c
atari_scsi.c
atari_scsi.h
atp870u.c
atp870u.h
blz1230.c
blz2060.c
BusLogic.c
BusLogic.h
bvme6000.c
bvme6000.h
ch.c
constants.c
cyberstorm.c
cyberstormII.c
dc395x.c [SCSI] dc395x: dynamically map scatter-gather for PIO 2006-04-14 16:45:27 -05:00
dc395x.h
dec_esp.c
dmx3191d.c
dpt_i2o.c
dpti.h
dtc.c
dtc.h
eata_generic.h
eata_pio.c
eata_pio.h
eata.c
esp.c
esp.h
fastlane.c
fcal.c
fcal.h
fd_mcs.c
fdomain.c
fdomain.h
FlashPoint.c
g_NCR5380_mmio.c
g_NCR5380.c
g_NCR5380.h
gdth_ioctl.h
gdth_kcompat.h
gdth_proc.c
gdth_proc.h
gdth.c
gdth.h
gvp11.c
gvp11.h
hosts.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
hosts.h
ibmmca.c [PATCH] Don't pass boot parameters to argv_init[] 2006-03-31 12:18:53 -08:00
ibmmca.h
ide-scsi.c
imm.c
imm.h
in2000.c
in2000.h
initio.c
initio.h
ipr.c [SCSI] ipr: Reset device cleanup 2006-04-13 10:13:29 -05:00
ipr.h [SCSI] ipr: Bump version 2006-04-13 10:13:30 -05:00
ips.c
ips.h
iscsi_tcp.c [SCSI] iscsi: dequeue all buffers from queue 2006-05-10 10:13:44 -05:00
iscsi_tcp.h [SCSI] iscsi: convert iscsi tcp to libiscsi 2006-04-14 15:19:42 -05:00
jazz_esp.c
Kconfig [SCSI] Change Kconfig option from IOMAPPED to MMIO 2006-04-13 10:13:22 -05:00
lasi700.c [PARISC] I/O-Space must be ioremap_nocache()'d 2006-03-30 17:48:42 +00:00
libata-bmdma.c [PATCH] libata: BMDMA handling updates 2006-03-29 19:30:27 -05:00
libata-core.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
libata-scsi.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
libata.h [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
libiscsi.c [SCSI] iscsi: increment expstatsn during login 2006-05-10 10:13:21 -05:00
mac53c94.c
mac53c94.h
mac_esp.c
mac_scsi.c
mac_scsi.h
Makefile Merge ../scsi-rc-fixes-2.6 2006-04-14 15:47:45 -05:00
mca_53c9x.c
megaraid.c
megaraid.h
mesh.c
mesh.h
mvme16x.c
mvme16x.h
mvme147.c
mvme147.h
ncr53c8xx.c
ncr53c8xx.h
NCR53c406a.c
NCR53C9x.c
NCR53C9x.h
NCR5380.c
NCR5380.h
NCR_D700.c
NCR_D700.h
NCR_Q720.c
NCR_Q720.h
nsp32_debug.c
nsp32_io.h
nsp32.c
nsp32.h
oktagon_esp.c
oktagon_io.S
osst_detect.h
osst_options.h
osst.c
osst.h
pas16.c
pas16.h
pci2000.h
pdc_adma.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
pluto.c
pluto.h
ppa.c
ppa.h
psi240i.c
psi240i.h
psi_chip.h
ql1040_fw.h
ql1280_fw.h
ql12160_fw.h
qla1280.c
qla1280.h
qlogicfas408.c
qlogicfas408.h
qlogicfas.c
qlogicpti_asm.c
qlogicpti.c
qlogicpti.h
raid_class.c
sata_mv.c [PATCH] sata_mv: properly print HC registers 2006-04-12 18:05:56 -04:00
sata_nv.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_promise.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_promise.h
sata_qstor.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_sil24.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_sil.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_sis.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_svw.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_sx4.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_uli.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_via.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
sata_vsc.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
script_asm.pl
scsi_debug.c
scsi_debug.h
scsi_devinfo.c Merge ../scsi-rc-fixes-2.6 2006-04-14 15:47:45 -05:00
scsi_error.c [PATCH] move ->eh_strategy_handler to the transport class 2006-04-10 14:15:47 -04:00
scsi_ioctl.c [SCSI] unify SCSI_IOCTL_SEND_COMMAND implementations 2006-04-13 10:13:15 -05:00
scsi_lib.c [SCSI] scsi_lib.c: fix warning in scsi_kmap_atomic_sg 2006-04-19 20:51:18 -04:00
scsi_logging.h [SCSI] scsi_scan.c: fix compile warnings 2006-04-15 09:04:40 -05:00
scsi_module.c
scsi_priv.h
scsi_proc.c
scsi_sas_internal.h [SCSI] expose sas internal class for the domain transport 2006-04-13 10:13:27 -05:00
scsi_scan.c [SCSI] scsi_scan.c: fix compile warnings 2006-04-15 09:04:40 -05:00
scsi_sysctl.c
scsi_sysfs.c
scsi_transport_fc.c [SCSI] FC transport: fixes for workq deadlocks 2006-04-13 13:25:16 -05:00
scsi_transport_iscsi.c [SCSI] iscsi: increment expstatsn during login 2006-05-10 10:13:21 -05:00
scsi_transport_sas.c [SCSI] scsi_transport_sas: don't scan a non-existent end device 2006-04-14 15:33:41 -05:00
scsi_transport_spi.c
scsi_typedefs.h
scsi.c [SCSI] add SCSI_UNKNOWN and LUN transfer limit restrictions 2006-04-13 10:13:31 -05:00
scsi.h
scsicam.c
sd.c
seagate.c
seagate.h
sg.c [SCSI] sg: fix leak when dio setup fails 2006-04-13 10:13:27 -05:00
sgiwd93.c
sim710.c
sr_ioctl.c
sr_vendor.c
sr.c
sr.h
st_options.h
st.c
st.h
sun3_NCR5380.c
sun3_scsi_vme.c
sun3_scsi.c
sun3_scsi.h
sun3x_esp.c
sym53c416.c
sym53c416.h
t128.c
t128.h
tmscsim.c
tmscsim.h
u14-34f.c
ultrastor.c
ultrastor.h
wd33c93.c
wd33c93.h
wd7000.c
zalon.c [PARISC] I/O-Space must be ioremap_nocache()'d 2006-03-30 17:48:42 +00:00