rpms/kernel/FC-3 linux-2.6.11-ide-acfixes.patch, NONE, 1.1 kernel-2.6.spec, 1.822, 1.823

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon May 9 23:39:06 UTC 2005


Author: davej

Update of /cvs/dist/rpms/kernel/FC-3
In directory cvs.devel.redhat.com:/tmp/cvs-serv19603

Modified Files:
	kernel-2.6.spec 
Added Files:
	linux-2.6.11-ide-acfixes.patch 
Log Message:
Merge IDE fixes from 2.6.11-ac7



linux-2.6.11-ide-acfixes.patch:
 drivers/cdrom/cdrom.c          |    3 
 drivers/ide/Kconfig            |   13 
 drivers/ide/arm/icside.c       |    6 
 drivers/ide/cris/ide-v10.c     |    6 
 drivers/ide/ide-cd.c           |  119 ++++--
 drivers/ide/ide-disk.c         |   46 +-
 drivers/ide/ide-dma.c          |   13 
 drivers/ide/ide-floppy.c       |    4 
 drivers/ide/ide-io.c           |   64 +++
 drivers/ide/ide-iops.c         |  165 +++++---
 drivers/ide/ide-pnp.c          |    7 
 drivers/ide/ide-probe.c        |    1 
 drivers/ide/ide-proc.c         |  188 ++++++---
 drivers/ide/ide-tape.c         |    4 
 drivers/ide/ide-taskfile.c     |   12 
 drivers/ide/ide.c              |  437 ++++++++++++++++------
 drivers/ide/legacy/ide-cs.c    |   28 -
 drivers/ide/pci/Makefile       |    2 
 drivers/ide/pci/alim15x3.c     |    2 
 drivers/ide/pci/cs5520.c       |   11 
 drivers/ide/pci/delkin_cb.c    |  140 +++++++
 drivers/ide/pci/generic.c      |   86 +++-
 drivers/ide/pci/hpt366.c       |  474 +++++++++++------------
 drivers/ide/pci/it821x.c       |  812 +++++++++++++++++++++++++++++++++++++++++
 drivers/ide/pci/ns87415.c      |    2 
 drivers/ide/pci/pdc202xx_old.c |    2 
 drivers/ide/pci/sgiioc4.c      |    4 
 drivers/ide/pci/siimage.c      |    8 
 drivers/ide/pci/sl82c105.c     |    2 
 drivers/ide/pci/trm290.c       |    7 
 drivers/ide/ppc/pmac.c         |    6 
 drivers/ide/setup-pci.c        |   82 +++-
 drivers/macintosh/mediabay.c   |    5 
 drivers/scsi/ide-scsi.c        |    4 
 include/asm-i386/ide.h         |   14 
 include/linux/ide.h            |   47 +-
 include/linux/pci_ids.h        |   16 
 37 files changed, 2238 insertions(+), 604 deletions(-)

--- NEW FILE linux-2.6.11-ide-acfixes.patch ---

This patch contains the IDE fixes from 2.6.11-ac7

diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.11/drivers/cdrom/cdrom.c linux-2.6.11/drivers/cdrom/cdrom.c
--- linux.vanilla-2.6.11/drivers/cdrom/cdrom.c	2005-03-05 15:17:01.000000000 +0000
+++ linux-2.6.11/drivers/cdrom/cdrom.c	2005-03-05 15:31:30.000000000 +0000
@@ -1131,7 +1131,8 @@
 	This ensures that the drive gets unlocked after a mount fails.  This 
 	is a goto to avoid bloating the driver with redundant code. */ 
 clean_up_and_return:
-	cdinfo(CD_WARNING, "open failed.\n"); 
+	/* Don't log this, its a perfectly normal user occurence */
+	/* cdinfo(CD_WARNING, "open failed.\n");  */
 	if (CDROM_CAN(CDC_LOCK) && cdi->options & CDO_LOCK) {
 			cdo->lock_door(cdi, 0);
 			cdinfo(CD_OPEN, "door unlocked.\n");
diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.11/drivers/ide/arm/icside.c linux-2.6.11/drivers/ide/arm/icside.c
--- linux.vanilla-2.6.11/drivers/ide/arm/icside.c	2005-03-05 15:17:01.000000000 +0000
+++ linux-2.6.11/drivers/ide/arm/icside.c	2005-03-06 14:46:16.000000000 +0000
@@ -502,9 +502,9 @@
 	hwif->ide_dma_off_quietly = icside_dma_off_quietly;
 	hwif->ide_dma_host_on	= icside_dma_host_on;
 	hwif->ide_dma_on	= icside_dma_on;
-	hwif->dma_setup		= icside_dma_setup;
-	hwif->dma_exec_cmd	= icside_dma_exec_cmd;
-	hwif->dma_start		= icside_dma_start;
+	hwif->ide_dma_setup	= icside_dma_setup;
+	hwif->ide_dma_exec_cmd	= icside_dma_exec_cmd;
+	hwif->ide_dma_start	= icside_dma_start;
 	hwif->ide_dma_end	= icside_dma_end;
 	hwif->ide_dma_test_irq	= icside_dma_test_irq;
 	hwif->ide_dma_timeout	= icside_dma_timeout;
diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.11/drivers/ide/cris/ide-v10.c linux-2.6.11/drivers/ide/cris/ide-v10.c
--- linux.vanilla-2.6.11/drivers/ide/cris/ide-v10.c	2005-03-05 15:17:01.000000000 +0000
+++ linux-2.6.11/drivers/ide/cris/ide-v10.c	2005-03-06 14:46:16.000000000 +0000
@@ -332,9 +332,9 @@
                 hwif->atapi_output_bytes = &e100_atapi_output_bytes;
                 hwif->ide_dma_check = &e100_dma_check;
                 hwif->ide_dma_end = &e100_dma_end;
-		hwif->dma_setup = &e100_dma_setup;
-		hwif->dma_exec_cmd = &e100_dma_exec_cmd;
-		hwif->dma_start = &e100_dma_start;
+		hwif->ide_dma_setup = &e100_dma_setup;
+		hwif->ide_dma_exec_cmd = &e100_dma_exec_cmd;
+		hwif->ide_dma_start = &e100_dma_start;
 		hwif->OUTB = &etrax100_ide_outb;
 		hwif->OUTW = &etrax100_ide_outw;
 		hwif->OUTBSYNC = &etrax100_ide_outbsync;
diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.11/drivers/ide/ide.c linux-2.6.11/drivers/ide/ide.c
--- linux.vanilla-2.6.11/drivers/ide/ide.c	2005-03-05 15:17:01.000000000 +0000
+++ linux-2.6.11/drivers/ide/ide.c	2005-03-06 15:00:57.000000000 +0000
@@ -175,7 +175,8 @@
 static int initializing;	/* set while initializing built-in drivers */
 
 DECLARE_MUTEX(ide_cfg_sem);
- __cacheline_aligned_in_smp DEFINE_SPINLOCK(ide_lock);
+EXPORT_SYMBOL_GPL(ide_cfg_sem);
+__cacheline_aligned_in_smp DEFINE_SPINLOCK(ide_lock);
 
 #ifdef CONFIG_BLK_DEV_IDEPCI
 static int ide_scan_direction; /* THIS was formerly 2.2.x pci=reverse */
@@ -205,11 +206,13 @@
 static void init_hwif_data(ide_hwif_t *hwif, unsigned int index)
 {
 	unsigned int unit;
+	unsigned int key = hwif->key;
 
 	/* bulk initialize hwif & drive info with zeros */
 	memset(hwif, 0, sizeof(ide_hwif_t));
 
 	/* fill in any non-zero initial values */
+	hwif->key	= key + 1;	/* Protected by ide_cfg_sem */
 	hwif->index	= index;
 	hwif->major	= ide_hwif_to_major[index];
 
@@ -320,6 +323,92 @@
 #endif
 }
 
+/*
+ *	ide_drive_from_key	-	turn key into drive
+ *	@kval: persistent key
+ *
+ *	Convert a key into a drive. Currently the key is packed as
+ *	[keyval] << 16 | hwif << 8 | drive_num. Caller must hold 
+ *	ide_settings_sem for the duration of the returned reference
+ */
+
+ide_drive_t *ide_drive_from_key(void *kval)
+{
+	unsigned long key = (unsigned long) kval;
+	int idx = (key >> 8) & 0xFF;
+	int drive = key & 3;
+	ide_hwif_t *hwif = &ide_hwifs[idx];
+	ide_drive_t *ret;
+
+	key >>= 16;
+
+	if(hwif->configured == 0 || hwif->present == 0 || hwif->drives[drive].dead || hwif->key != key)
+		ret = NULL;
+	else
+		ret = &ide_hwifs[idx].drives[drive];
+
+	return ret;
+}
+
+EXPORT_SYMBOL_GPL(ide_drive_from_key);
+
+/*
+ *	ide_drive_to_key	-	turn drive to persistent key
+ *	@drive: drive to use
+ *
+ *	Convert drive into a key. Currently the key is packed as
+ *	[keyval] << 16 | hwif << 8 | drive_num. Caller must hold 
+ *	ide_settings_sem for the duration of the returned reference
+ */
+
+void *ide_drive_to_key(ide_drive_t *drive)
+{
+	ide_hwif_t *hwif = HWIF(drive);
+	unsigned long val;
+
+	val = (hwif->index << 8) | (hwif->key << 16) | drive->select.b.unit;
+	return (void *)val;
+}
+
+/*
+ *	ide_hwif_from_key	-	turn key into hwif
+ *	@kval: persistent key
+ *
+ *	Convert a key into a drive. Currently the key is packed as
+ *	[keyval] << 16 | hwif << 8 | drive_num. Caller must hold 
+ *	ide_settings_sem for the duration of the returned reference
+ */
+
+ide_hwif_t *ide_hwif_from_key(void *kval)
+{
+	unsigned long key = (unsigned long) kval;
+	int idx = (key >> 8) & 0xFF;
+	ide_hwif_t *hwif = &ide_hwifs[idx];
+
+	key >>= 16;
+
+	if(hwif->configured == 0 || hwif->present == 0 || hwif->key != key)
+		return NULL;
+	return hwif;
+}
+
+/*
+ *	ide_hwif_to_key	-	turn drive to persistent key
+ *	@hwif: hwif to use
+ *
+ *	Convert drive into a key. Currently the key is packed as
+ *	[keyval] << 16 | hwif << 8 | drive_num. Caller must hold 
+ *	ide_settings_sem for the duration of the returned reference
+ */
+
+void *ide_hwif_to_key(ide_hwif_t *hwif)
+{
+	unsigned long val;
+
+	val = (hwif->index << 8) | (hwif->key << 16);
+	return (void *)val;
+}
+
 /**
  *	ide_system_bus_speed	-	guess bus speed
  *
@@ -368,11 +457,16 @@
 }
 
 /*
- *	drives_lock protects the list of drives, drivers_lock the
- *	list of drivers.  Currently nobody takes both at once.
+ *	drives_lock protects the list of drives, drivers lock the
+ *	list of drivers. Currently nobody takes both at once.
+ *	drivers_sem guards the drivers_list for readers that may
+ *	sleep. It must be taken before drivers_lock. Take drivers_sem
+ *	before ide_setting_sem and idecfg_sem before either of the
+ *	others.
  */
 
 static DEFINE_SPINLOCK(drives_lock);
+static DECLARE_MUTEX(drivers_sem);
 static DEFINE_SPINLOCK(drivers_lock);
 static LIST_HEAD(drivers);
 
@@ -382,7 +476,7 @@
 {
 	struct list_head *p;
 	loff_t l = *pos;
-	spin_lock(&drivers_lock);
+	down(&drivers_sem);
 	list_for_each(p, &drivers)
 		if (!l--)
 			return list_entry(p, ide_driver_t, drivers);
@@ -398,7 +492,7 @@
 
 static void m_stop(struct seq_file *m, void *v)
[...4471 lines suppressed...]
-		case 4: return 0x1e0;
-		case 5: return 0x160;
 		default:
 			return 0;
-	}
+	}		
 }
 
 #define IDE_ARCH_OBSOLETE_INIT
diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.11/include/linux/ide.h linux-2.6.11/include/linux/ide.h
--- linux.vanilla-2.6.11/include/linux/ide.h	2005-03-05 15:17:06.000000000 +0000
+++ linux-2.6.11/include/linux/ide.h	2005-03-06 17:30:15.000000000 +0000
@@ -190,7 +190,10 @@
 #define WAIT_READY	(5*HZ)		/* 5sec - some laptops are very slow */
 #define WAIT_PIDENTIFY	(10*HZ)	/* 10sec  - should be less than 3ms (?), if all ATAPI CD is closed at boot */
 #define WAIT_WORSTCASE	(30*HZ)	/* 30sec  - worst case when spinning up */
-#define WAIT_CMD	(10*HZ)	/* 10sec  - maximum wait for an IRQ to happen */
+/* We should make this more tunable and smart: Windows apparently uses 7 secs
+   but we've seen drives take long. Equally some drives can now do fast fails
+   for RAID. Can probably be 10 but lets see if 15 helps */
+#define WAIT_CMD	(15*HZ)	/* 10sec  - maximum wait for an IRQ to happen */
 #define WAIT_MIN_SLEEP	(2*HZ/100)	/* 20msec - minimum sleep time */
 
 #define HOST(hwif,chipset)					\
@@ -748,6 +751,7 @@
 	unsigned int	usage;		/* current "open()" count for drive */
 	unsigned int	failures;	/* current failure count */
 	unsigned int	max_failures;	/* maximum allowed failure count */
+	u64		probed_capacity;/* initial reported media capacity (ide-cd only currently) */
 
 	u64		capacity64;	/* total number of sectors */
 
@@ -764,6 +768,7 @@
 #define IDE_CHIPSET_IS_PCI(c)	((IDE_CHIPSET_PCI_MASK >> (c)) & 1)
 
 struct ide_pci_device_s;
+struct ide_task_s;
 
 typedef struct hwif_s {
 	struct hwif_s *next;		/* for linked-list in ide_hwgroup_t */
@@ -771,6 +776,7 @@
 	struct hwgroup_s *hwgroup;	/* actually (ide_hwgroup_t *) */
 	struct proc_dir_entry *proc;	/* /proc/ide/ directory entry */
 
+	u16		key;		/* /proc persistent keying */
 	char name[6];			/* name of interface, eg. "ide0" */
 
 		/* task file registers for pata and sata */
@@ -826,6 +832,9 @@
 //	u8	(*ratemask)(ide_drive_t *);
 //	/* device rate limiter */
 //	u8	(*ratefilter)(ide_drive_t *, u8);
+	/* hwif remove hook, called on unload/pci remove paths*/
+	void	(*remove)(struct hwif_s *);
+	/* allow command filter/control */
 #endif
 
 	void (*ata_input_data)(ide_drive_t *, void *, u32);
@@ -834,9 +843,9 @@
 	void (*atapi_input_bytes)(ide_drive_t *, void *, u32);
 	void (*atapi_output_bytes)(ide_drive_t *, void *, u32);
 
-	int (*dma_setup)(ide_drive_t *);
-	void (*dma_exec_cmd)(ide_drive_t *, u8);
-	void (*dma_start)(ide_drive_t *);
+	int (*ide_dma_setup)(ide_drive_t *);
+	void (*ide_dma_exec_cmd)(ide_drive_t *, u8);
+	void (*ide_dma_start)(ide_drive_t *);
 	int (*ide_dma_end)(ide_drive_t *drive);
 	int (*ide_dma_check)(ide_drive_t *drive);
 	int (*ide_dma_on)(ide_drive_t *drive);
@@ -897,7 +906,9 @@
 
 	unsigned	noprobe    : 1;	/* don't probe for this interface */
 	unsigned	present    : 1;	/* this interface exists */
+	unsigned	configured : 1;	/* this hwif exists and is set up (may not be "present") */
 	unsigned	hold       : 1; /* this interface is always present */
+	unsigned	user_dev   : 1; /* user ioctl created device */
 	unsigned	serialized : 1;	/* serialized all channel operation */
 	unsigned	sharing_irq: 1;	/* 1 = sharing irq with another hwif */
 	unsigned	reset      : 1;	/* reset after probe */
@@ -908,6 +919,7 @@
 	unsigned	no_dsc     : 1;	/* 0 default, 1 dsc_overlap disabled */
 	unsigned	auto_poll  : 1; /* supports nop auto-poll */
 	unsigned	sg_mapped  : 1;	/* sg_table and sg_nents are ready */
+	unsigned 	polling    : 1; /* doing a polled command ignore irqs */
 
 	struct device	gendev;
 	struct semaphore gendev_rel_sem; /* To deal with device release() */
@@ -1002,6 +1014,11 @@
 extern int ide_write_setting(ide_drive_t *drive, ide_settings_t *setting, int val);
 extern void ide_add_generic_settings(ide_drive_t *drive);
 
+extern void *ide_drive_to_key(ide_drive_t *drive);
+extern ide_drive_t *ide_drive_from_key(void *);
+extern void *ide_hwif_to_key(ide_hwif_t *hwif);
+extern ide_hwif_t *ide_hwif_from_key(void *);
+
 /*
  * /proc/ide interface
  */
@@ -1018,7 +1035,7 @@
 extern void proc_ide_create(void);
 extern void proc_ide_destroy(void);
 extern void create_proc_ide_interfaces(void);
-void destroy_proc_ide_interface(ide_hwif_t *);
+extern void destroy_proc_ide_interface(ide_hwif_t *);
 extern void ide_add_proc_entries(struct proc_dir_entry *, ide_proc_entry_t *, void *);
 extern void ide_remove_proc_entries(struct proc_dir_entry *, ide_proc_entry_t *);
 read_proc_t proc_ide_read_capacity;
@@ -1130,6 +1147,7 @@
 extern int noautodma;
 
 extern int ide_end_request (ide_drive_t *drive, int uptodate, int nrsecs);
+extern int ide_end_dequeued_request (ide_drive_t *drive, struct request *rq, int uptodate, int nrsecs);
 
 /*
  * This is used on exit from the driver to designate the next irq handler
@@ -1342,16 +1360,18 @@
 extern void ide_pci_unregister_driver(struct pci_driver *driver);
 void ide_pci_setup_ports(struct pci_dev *, struct ide_pci_device_s *, int, ata_index_t *);
 extern void ide_setup_pci_noise (struct pci_dev *dev, struct ide_pci_device_s *d);
+extern void ide_pci_remove_hwifs(struct pci_dev *dev);
 
 extern void default_hwif_iops(ide_hwif_t *);
 extern void default_hwif_mmiops(ide_hwif_t *);
+extern void removed_hwif_iops(ide_hwif_t *);
 extern void default_hwif_transport(ide_hwif_t *);
 
-int ide_register_driver(ide_driver_t *driver);
-void ide_unregister_driver(ide_driver_t *driver);
-int ide_register_subdriver(ide_drive_t *, ide_driver_t *);
-int ide_unregister_subdriver (ide_drive_t *drive);
-int ide_replace_subdriver(ide_drive_t *drive, const char *driver);
+extern int ide_register_driver(ide_driver_t *driver);
+extern void ide_unregister_driver(ide_driver_t *driver);
+extern int ide_register_subdriver(ide_drive_t *, ide_driver_t *);
+extern int ide_unregister_subdriver (ide_drive_t *drive);
+extern int ide_replace_subdriver(ide_drive_t *drive, const char *driver);
 
 #define ON_BOARD		1
 #define NEVER_BOARD		0
@@ -1444,11 +1464,12 @@
 
 extern int ide_hwif_request_regions(ide_hwif_t *hwif);
 extern void ide_hwif_release_regions(ide_hwif_t* hwif);
-extern void ide_unregister (unsigned int index);
+extern int ide_unregister_hwif(ide_hwif_t *hwif);
+extern int __ide_unregister_hwif(ide_hwif_t *hwif);
 
-void ide_undecoded_slave(ide_hwif_t *);
+extern void ide_undecoded_slave(ide_hwif_t *);
 
-int probe_hwif_init_with_fixup(ide_hwif_t *, void (*)(ide_hwif_t *));
+extern int probe_hwif_init_with_fixup(ide_hwif_t *, void (*)(ide_hwif_t *));
 extern int probe_hwif_init(ide_hwif_t *);
 
 static inline void *ide_get_hwifdata (ide_hwif_t * hwif)
diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.11/include/linux/pci_ids.h linux-2.6.11/include/linux/pci_ids.h
--- linux.vanilla-2.6.11/include/linux/pci_ids.h	2005-03-05 15:17:06.000000000 +0000
+++ linux-2.6.11/include/linux/pci_ids.h	2005-03-08 10:15:31.000000000 +0000
@@ -352,10 +352,21 @@
 #define PCI_DEVICE_ID_ATI_RS300_133	0x5831
 #define PCI_DEVICE_ID_ATI_RS300_166	0x5832
 #define PCI_DEVICE_ID_ATI_RS300_200	0x5833
+#define PCI_DEVICE_ID_ATI_RS350_100	0x7830
+#define PCI_DEVICE_ID_ATI_RS350_133	0x7831
+#define PCI_DEVICE_ID_ATI_RS350_166	0x7832
+#define PCI_DEVICE_ID_ATI_RS350_200	0x7833
+#define PCI_DEVICE_ID_ATI_RS400_100	0x5a30
+#define PCI_DEVICE_ID_ATI_RS400_133	0x5a31
+#define PCI_DEVICE_ID_ATI_RS400_166	0x5a32
+#define PCI_DEVICE_ID_ATI_RS400_200	0x5a33
+#define PCI_DEVICE_ID_ATI_RS480		0x5950
 /* ATI IXP Chipset */
 #define PCI_DEVICE_ID_ATI_IXP200_IDE	0x4349
 #define PCI_DEVICE_ID_ATI_IXP300_IDE	0x4369
+#define PCI_DEVICE_ID_ATI_IXP300_SATA	0x436e
 #define PCI_DEVICE_ID_ATI_IXP400_IDE	0x4376
+#define PCI_DEVICE_ID_ATI_IXP400_SATA	0x4379
 
 #define PCI_VENDOR_ID_VLSI		0x1004
 #define PCI_DEVICE_ID_VLSI_82C592	0x0005
@@ -1678,6 +1696,8 @@
 #define PCI_VENDOR_ID_ITE		0x1283
 #define PCI_DEVICE_ID_ITE_IT8172G	0x8172
 #define PCI_DEVICE_ID_ITE_IT8172G_AUDIO 0x0801
+#define PCI_DEVICE_ID_ITE_8211		0x8211
+#define PCI_DEVICE_ID_ITE_8212		0x8212
 #define PCI_DEVICE_ID_ITE_8872		0x8872
 #define PCI_DEVICE_ID_ITE_IT8330G_0	0xe886
 
@@ -2427,3 +2447,6 @@
 #define PCI_DEVICE_ID_ARK_STING		0xa091
 #define PCI_DEVICE_ID_ARK_STINGARK	0xa099
 #define PCI_DEVICE_ID_ARK_2000MT	0xa0a1
+
+#define PCI_VENDOR_ID_WORKBIT		0x1145
+#define PCI_DEVICE_ID_WORKBIT_CB	0xf021



Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/FC-3/kernel-2.6.spec,v
retrieving revision 1.822
retrieving revision 1.823
diff -u -r1.822 -r1.823
--- kernel-2.6.spec	9 May 2005 23:21:00 -0000	1.822
+++ kernel-2.6.spec	9 May 2005 23:39:04 -0000	1.823
@@ -306,7 +306,7 @@
 Patch2000: linux-2.6.11-vm-taint.patch
 Patch2003: linux-2.6.9-vm-oomkiller-debugging.patch
 
-Patch2101: linux-2.6.9-ide-cd-early-EOF.patch
+Patch2100: linux-2.6.11-ide-acfixes.patch
 
 Patch2999: linux-2.6.3-printopen.patch
 
@@ -608,8 +608,8 @@
 %patch2003 -p1
 
 # IDE bits.
-# Handle early EOF on CD's.
-%patch2101 -p1
+# Numerous fixes from 2.6.11-ac7
+%patch2100 -p1
 
 #
 # Local hack (off for any shipped kernels) to printk all files opened 
@@ -916,6 +916,7 @@
 - Rebase to 2.6.11.8
   | Fixes CAN-2005-1368 (local DoS in key lookup). (#156680)
   | Fixes CAN-2005-1369 (i2c alarms sysfs DoS). (#156683)
+- Merge IDE fixes from 2.6.11-ac7
 
 * Sun May  1 2005 Dave Jones <davej at redhat.com>
 - Various firewire fixes backported from -mm. (#133798)




More information about the fedora-cvs-commits mailing list