[kernel] r7620 - in dists/trunk/linux-2.6/debian: . patches/bugfix patches/series

maximilian attems maks-guest at costa.debian.org
Tue Oct 17 11:41:33 UTC 2006


Author: maks-guest
Date: Tue Oct 17 11:41:32 2006
New Revision: 7620

Added:
   dists/trunk/linux-2.6/debian/patches/bugfix/dac960_ipr_pci_clash.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/serial_core-suspend_oops.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/serial_cs-resume.patch
   dists/trunk/linux-2.6/debian/patches/bugfix/via_pmu_backlight-fix_panic_sleep.patch
Modified:
   dists/trunk/linux-2.6/debian/changelog
   dists/trunk/linux-2.6/debian/patches/series/3

Log:
add obvious backported fixes - seen in fedora too


Modified: dists/trunk/linux-2.6/debian/changelog
==============================================================================
--- dists/trunk/linux-2.6/debian/changelog	(original)
+++ dists/trunk/linux-2.6/debian/changelog	Tue Oct 17 11:41:32 2006
@@ -103,6 +103,10 @@
     - Workaround for bug in gcc -EB / -EL options
     - Do not use -msym32 option for modules
     - Fix O32 personality(2) call with 0xffffffff argument
+  * [powerpc] Add DAC960-ipr PCI id table fixup.
+  * [powerpc] Fix uninitialised spinlock in via-pmu-backlight code.
+  * Fix serial_cs resume handling.
+  * Fix oops when removing suspended serial port.
 
   [ dann frazier ]
   * [ia64]: Fix booting on HP cell systems, thanks to Troy Heber
@@ -122,7 +126,7 @@
   [ Kyle McMartin ]
   * [hppa] Force CROSS_COMPILE=hppa64-linux-gnu- (closes: #389296)
 
- -- maximilian attems <maks at sternwelten.at>  Mon, 16 Oct 2006 09:49:14 +0200
+ -- maximilian attems <maks at sternwelten.at>  Tue, 17 Oct 2006 13:32:45 +0200
 
 linux-2.6 (2.6.18-2) unstable; urgency=low
 

Added: dists/trunk/linux-2.6/debian/patches/bugfix/dac960_ipr_pci_clash.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/dac960_ipr_pci_clash.patch	Tue Oct 17 11:41:32 2006
@@ -0,0 +1,34 @@
+From git-commits-head-owner at vger.kernel.org Tue Sep 26 20:10:24 2006
+
+commit fddafd3d21953d5ea740f7b2f27149f7dd493194
+tree 7e1851143eebfc9ba107aab41e6a46c2ec727aad
+parent 2672ea86be26353108a72a28910df4dc61cdb5e2
+author Brian King <brking at us.ibm.com> 1154631299 -0500
+committer James Bottomley <jejb at mulgrave.il.steeleye.com> 1154698157 -0400
+
+[SCSI] DAC960: PCI id table fixup
+
+The PCI ID table in the DAC960 driver conflicts with some devices
+that use the ipr driver. All ipr adapters that use this chip
+have an IBM subvendor ID and all DAC960 adapters that use this
+chip have a Mylex subvendor id.
+
+Signed-off-by: Brian King <brking at us.ibm.com>
+Signed-off-by: James Bottomley <James.Bottomley at SteelEye.com>
+
+ drivers/block/DAC960.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/block/DAC960.c b/drivers/block/DAC960.c
+index 4cd23c3..a360215 100644
+--- a/drivers/block/DAC960.c
++++ b/drivers/block/DAC960.c
+@@ -7115,7 +7115,7 @@ static struct pci_device_id DAC960_id_ta
+ 	{
+ 		.vendor 	= PCI_VENDOR_ID_MYLEX,
+ 		.device		= PCI_DEVICE_ID_MYLEX_DAC960_GEM,
+-		.subvendor	= PCI_ANY_ID,
++		.subvendor	= PCI_VENDOR_ID_MYLEX,
+ 		.subdevice	= PCI_ANY_ID,
+ 		.driver_data	= (unsigned long) &DAC960_GEM_privdata,
+ 	},

Added: dists/trunk/linux-2.6/debian/patches/bugfix/serial_core-suspend_oops.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/serial_core-suspend_oops.patch	Tue Oct 17 11:41:32 2006
@@ -0,0 +1,78 @@
+From git-commits-head-owner at vger.kernel.org Wed Oct  4 17:49:26 2006
+
+commit a6b93a908508810c5d51dd9b390283345af6f2d9
+tree 71b48d3a659a025ebf333abfeec7b828becb60cb
+parent fe59d5372ae719ca4550958f1e5bb4dd6eeac9cd
+author Russell King <rmk at dyn-67.arm.linux.org.uk> 1159719460 +0100
+committer Russell King <rmk+kernel at arm.linux.org.uk> 1159719460 +0100
+
+[SERIAL] Fix oops when removing suspended serial port
+
+A serial card might have been removed when the system is resumed.
+This results in a suspended port being shut down, which results in
+the ports shutdown method being called twice in a row.  This causes
+BUGs.  Avoid this by tracking the suspended state separately from
+the initialised state.
+
+Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>
+
+fixed lined offset -maks
+
+ drivers/serial/serial_core.c |    9 +++++++--
+ include/linux/serial_core.h  |    1 +
+ 2 files changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c
+index d814bb1..397147a 100644
+--- a/drivers/serial/serial_core.c
++++ b/drivers/serial/serial_core.c
+@@ -1932,6 +1932,9 @@ #endif
+ 	if (state->info && state->info->flags & UIF_INITIALIZED) {
+ 		const struct uart_ops *ops = port->ops;
+ 
++		state->info->flags = (state->info->flags & ~UIF_INITIALIZED)
++				     | UIF_SUSPENDED;
++
+ 		spin_lock_irq(&port->lock);
+ 		ops->stop_tx(port);
+ 		ops->set_mctrl(port, 0);
+@@ -1991,7 +1994,7 @@ #endif
+ 		console_start(port->cons);
+ 	}
+ 
+-	if (state->info && state->info->flags & UIF_INITIALIZED) {
++	if (state->info && state->info->flags & UIF_SUSPENDED) {
+ 		const struct uart_ops *ops = port->ops;
+ 		int ret;
+ 
+@@ -2003,15 +2006,17 @@ #endif
+ 			ops->set_mctrl(port, port->mctrl);
+ 			ops->start_tx(port);
+ 			spin_unlock_irq(&port->lock);
++			state->info->flags |= UIF_INITIALIZED;
+ 		} else {
+ 			/*
+ 			 * Failed to resume - maybe hardware went away?
+ 			 * Clear the "initialized" flag so we won't try
+ 			 * to call the low level drivers shutdown method.
+ 			 */
+-			state->info->flags &= ~UIF_INITIALIZED;
+ 			uart_shutdown(state);
+ 		}
++
++		state->info->flags &= ~UIF_SUSPENDED;
+ 	}
+ 
+ 	mutex_unlock(&state->mutex);
+diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h
+index 86501a3..f9fdf97 100644
+--- a/include/linux/serial_core.h
++++ b/include/linux/serial_core.h
+@@ -319,6 +319,7 @@ #define UIF_CHECK_CD		((__force uif_t) (
+ #define UIF_CTS_FLOW		((__force uif_t) (1 << 26))
+ #define UIF_NORMAL_ACTIVE	((__force uif_t) (1 << 29))
+ #define UIF_INITIALIZED		((__force uif_t) (1 << 31))
++#define UIF_SUSPENDED		((__force uif_t) (1 << 30))
+ 
+ 	int			blocked_open;
+ 

Added: dists/trunk/linux-2.6/debian/patches/bugfix/serial_cs-resume.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/serial_cs-resume.patch	Tue Oct 17 11:41:32 2006
@@ -0,0 +1,40 @@
+commit fe59d5372ae719ca4550958f1e5bb4dd6eeac9cd
+tree 08ac6bf26961f7bfba6c371f566333c030dd5d77
+parent bcf5111a58c7db968c3fb9cd77e340a5e076f549
+author Russell King <rmk at dyn-67.arm.linux.org.uk> 1159719247 +0100
+committer Russell King <rmk+kernel at arm.linux.org.uk> 1159719247 +0100
+
+[SERIAL] Fix resume handling bug
+
+Unfortunately, pcmcia_dev_present() returns false when a device is
+suspended, so checking this on resume does not work too well.  Omit
+this test.
+
+Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>
+
+backported patch from the fedora patchset. -maks
+
+diff --git a/drivers/serial/serial_cs.c b/drivers/serial/serial_cs.c
+index cbf260b..06a246a 100644
+--- a/drivers/serial/serial_cs.c
++++ b/drivers/serial/serial_cs.c
+@@ -185,14 +185,12 @@ static int serial_suspend(struct pcmcia_
+ 
+ static int serial_resume(struct pcmcia_device *link)
+ {
+-	if (pcmcia_dev_present(link)) {
+-		struct serial_info *info = link->priv;
+-		int i;
++	struct serial_info *info = link->priv;
++	int i;
+ 
+-		for (i = 0; i < info->ndev; i++)
+-			serial8250_resume_port(info->line[i]);
+-		wakeup_card(info);
+-	}
++	for (i = 0; i < info->ndev; i++)
++		serial8250_resume_port(info->line[i]);
++	wakeup_card(info);
+ 
+ 	return 0;
+ }

Added: dists/trunk/linux-2.6/debian/patches/bugfix/via_pmu_backlight-fix_panic_sleep.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/bugfix/via_pmu_backlight-fix_panic_sleep.patch	Tue Oct 17 11:41:32 2006
@@ -0,0 +1,37 @@
+From git-commits-head-owner at vger.kernel.org Sat Sep 30 01:10:16 2006
+
+commit 4efd587bf9f9a97608b1fcecc78a4a046c37e9b1
+tree ee626d2ce4af18c0296df3f257079b76f71ae76d
+parent 910067d188d56d80801b71b0ca1f73aa400c7b8c
+author David Woodhouse <dwmw2 at infradead.org> 1159520317 -0700
+committer Linus Torvalds <torvalds at g5.osdl.org> 1159546683 -0700
+
+[PATCH] Fix uninitialised spinlock in via-pmu-backlight code.
+
+The uninitialised pmu_backlight_lock causes the current Fedora test kernel
+(which has spinlock debugging enabled) to panic on suspend.
+
+This is suboptimal, so I fixed it.
+
+Signed-off-by: David Woodhouse <dwmw2 at infradead.org>
+Acked-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
+Acked-by: Michael Hanselmann <linux-kernel at hansmi.ch>
+Signed-off-by: Andrew Morton <akpm at osdl.org>
+Signed-off-by: Linus Torvalds <torvalds at osdl.org>
+
+ drivers/macintosh/via-pmu-backlight.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/macintosh/via-pmu-backlight.c b/drivers/macintosh/via-pmu-backlight.c
+index a82f313..6c29fe7 100644
+--- a/drivers/macintosh/via-pmu-backlight.c
++++ b/drivers/macintosh/via-pmu-backlight.c
+@@ -16,7 +16,7 @@ #include <asm/prom.h>
+ #define MAX_PMU_LEVEL 0xFF
+ 
+ static struct backlight_properties pmu_backlight_data;
+-static spinlock_t pmu_backlight_lock;
++static DEFINE_SPINLOCK(pmu_backlight_lock);
+ static int sleeping;
+ static u8 bl_curve[FB_BACKLIGHT_LEVELS];
+ 

Modified: dists/trunk/linux-2.6/debian/patches/series/3
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/series/3	(original)
+++ dists/trunk/linux-2.6/debian/patches/series/3	Tue Oct 17 11:41:32 2006
@@ -21,3 +21,7 @@
 - bugfix/proc-fb-reading.patch
 + bugfix/2.6.18.1
 + bugfix/rm-bsd-secure-level.patch
++ bugfix/dac960_ipr_pci_clash.patch
++ bugfix/via_pmu_backlight-fix_panic_sleep.patch
++ bugfix/serial_cs-resume.patch
++ bugfix/serial_core-suspend_oops.patch



More information about the Kernel-svn-changes mailing list