linux/drivers/ata
Tejun Heo cf0e812f0e [PATCH] sata_sis: fix flags handling for the secondary port
sis_init_one() modifies probe_ent->port_flags after allocating and
initializing it using ata_pci_init_native_mode().  This makes port_flags
for the secondary port (probe_ent->pinfo2->flags) go out of sync resulting
in misdetection of device due to incorrectly initialized SCR access flag.

This patch make probe_ent alloc/init happen after the final port flags
value is determined.  This is fragile but probe_ent and all the related
mess are scheduled to go away soon for exactly this reason.  We just need
to hold everything together till then.

This has been spotted and diagnosed and tested by Patrick McHardy.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: Patric McHardy <kaber@trash.net>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-10-31 20:26:10 -05:00
..
ahci.c [PATCH] ahci: readability tweak 2006-10-21 15:18:59 -04:00
ata_generic.c [libata] Don't use old-EH ->eng_timeout() hook when not needed 2006-09-27 05:41:13 -04:00
ata_piix.c [PATCH] libata: use correct map_db values for ICH8 2006-10-21 15:10:10 -04:00
Kconfig [PATCH] ATA must depend on BLOCK 2006-10-21 15:10:10 -04:00
libata-core.c Merge branch 'master' into upstream-fixes 2006-10-05 21:03:43 -04:00
libata-eh.c [PATCH] libata-eh: Remove layering violation and duplication when handling absent ports 2006-09-26 13:34:27 -04:00
libata-scsi.c [PATCH] libata: return sense data in HDIO_DRIVE_CMD ioctl 2006-10-11 04:18:07 -04:00
libata-sff.c [PATCH] libata-sff: Allow for wacky systems 2006-10-21 15:18:59 -04:00
libata.h libata: Grand renaming. 2006-08-24 03:19:22 -04:00
Makefile [libata] Delete pata_it8172 driver 2006-09-20 17:48:53 -04:00
pata_ali.c [PATCH] pata: teach ali about rev C8, keep pcmcia driver in sync 2006-10-04 08:15:15 -07:00
pata_amd.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_artop.c [libata] pata_artop: kill gcc warning 2006-10-01 10:38:22 -04:00
pata_atiixp.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_cmd64x.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_cs5520.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_cs5530.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_cs5535.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_cypress.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_efar.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_hpt3x2n.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_hpt3x3.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_hpt37x.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_hpt366.c Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev 2006-10-04 08:06:16 -07:00
pata_isapnp.c [libata] Don't use old-EH ->eng_timeout() hook when not needed 2006-09-27 05:41:13 -04:00
pata_it821x.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_jmicron.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_legacy.c [libata] Don't use old-EH ->eng_timeout() hook when not needed 2006-09-27 05:41:13 -04:00
pata_mpiix.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_netcell.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_ns87410.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_oldpiix.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_opti.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_optidma.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_pcmcia.c [PATCH] pata: teach ali about rev C8, keep pcmcia driver in sync 2006-10-04 08:15:15 -07:00
pata_pdc202xx_old.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_pdc2027x.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_qdi.c [PATCH] pata-qdi: fix le32 in data_xfer 2006-10-11 04:48:52 -04:00
pata_radisys.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_rz1000.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_sc1200.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_serverworks.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_sil680.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_sis.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_sl82c105.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_triflex.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pata_via.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
pdc_adma.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
sata_mv.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
sata_nv.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
sata_promise.c Merge branch 'master' into upstream-fixes 2006-10-11 04:59:46 -04:00
sata_promise.h Move libata to drivers/ata. 2006-08-10 07:31:37 -04:00
sata_qstor.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
sata_sil24.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
sata_sil.c [PATCH] misc sata __iomem annotations 2006-10-10 15:37:21 -07:00
sata_sis.c [PATCH] sata_sis: fix flags handling for the secondary port 2006-10-31 20:26:10 -05:00
sata_svw.c [PATCH] misc sata __iomem annotations 2006-10-10 15:37:21 -07:00
sata_sx4.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
sata_uli.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
sata_via.c [libata] PCI ID table cleanup in various drivers 2006-09-28 20:21:59 -04:00
sata_vsc.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00