Hello community,
here is the log from the commit of package kernel-source
checked in at Tue May 9 19:18:56 CEST 2006.
--------
--- kernel-source/kernel-bigsmp.changes 2006-05-08 22:45:51.000000000 +0200
+++ STABLE/kernel-source/kernel-bigsmp.changes 2006-05-09 14:30:59.000000000 +0200
@@ -1,0 +2,12 @@
+Tue May 9 14:14:20 CEST 2006 - okir@suse.de
+
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+
+-------------------------------------------------------------------
+Tue May 9 12:56:02 CEST 2006 - hare@suse.de
+
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
+
+-------------------------------------------------------------------
kernel-debug.changes: same change
kernel-default.changes: same change
kernel-dummy.changes: same change
kernel-iseries64.changes: same change
kernel-kdump.changes: same change
kernel-ppc64.changes: same change
kernel-s390.changes: same change
kernel-smp.changes: same change
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-um.changes: same change
kernel-xen.changes: same change
kernel-xenpae.changes: same change
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kernel-bigsmp.spec ++++++
--- /var/tmp/diff_new_pack.SLdYba/_old 2006-05-09 19:16:19.000000000 +0200
+++ /var/tmp/diff_new_pack.SLdYba/_new 2006-05-09 19:16:19.000000000 +0200
@@ -21,7 +21,7 @@
BuildRequires: python
%endif
Version: 2.6.16.14
-Release: 4
+Release: 6
Summary: Kernel with Multiprocessor Support and PAE
License: GPL
Group: System/Kernel
@@ -112,7 +112,8 @@
-Source Timestamp: 2006/05/08 20:40:06 UTC
+Source Timestamp: 2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -442,6 +443,12 @@
%files -f kernel.files
%changelog -n kernel-bigsmp
+* Tue May 09 2006 - okir@suse.de
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+* Tue May 09 2006 - hare@suse.de
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
* Mon May 08 2006 - mason@suse.de
- patches.fixes/hugetlb-reservation: [PATCH] hugepage: serialize
hugepage allocation and instantiation (154121).
kernel-debug.spec: same change
kernel-default.spec: same change
++++++ kernel-dummy.spec ++++++
--- /var/tmp/diff_new_pack.SLdYba/_old 2006-05-09 19:16:19.000000000 +0200
+++ /var/tmp/diff_new_pack.SLdYba/_new 2006-05-09 19:16:19.000000000 +0200
@@ -17,7 +17,7 @@
Summary: Internal dummy package for synchronizing release numbers
Group: System/Kernel
Version: 2.6.16.14
-Release: 4
+Release: 6
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -27,7 +27,8 @@
--------
Andreas Gruenbacher
-Source Timestamp: 2006/05/08 20:40:06 UTC
+Source Timestamp: 2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
%install
@@ -40,6 +41,12 @@
/etc/dummy
%changelog -n kernel-dummy
+* Tue May 09 2006 - okir@suse.de
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+* Tue May 09 2006 - hare@suse.de
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
* Mon May 08 2006 - mason@suse.de
- patches.fixes/hugetlb-reservation: [PATCH] hugepage: serialize
hugepage allocation and instantiation (154121).
++++++ kernel-iseries64.spec ++++++
--- /var/tmp/diff_new_pack.SLdYba/_old 2006-05-09 19:16:19.000000000 +0200
+++ /var/tmp/diff_new_pack.SLdYba/_new 2006-05-09 19:16:19.000000000 +0200
@@ -21,7 +21,7 @@
BuildRequires: python
%endif
Version: 2.6.16.14
-Release: 4
+Release: 6
Summary: 64-Bit Kernel for iSeries
License: GPL
Group: System/Kernel
@@ -113,7 +113,8 @@
-Source Timestamp: 2006/05/08 20:40:06 UTC
+Source Timestamp: 2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -443,6 +444,12 @@
%files -f kernel.files
%changelog -n kernel-iseries64
+* Tue May 09 2006 - okir@suse.de
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+* Tue May 09 2006 - hare@suse.de
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
* Mon May 08 2006 - mason@suse.de
- patches.fixes/hugetlb-reservation: [PATCH] hugepage: serialize
hugepage allocation and instantiation (154121).
kernel-kdump.spec: same change
++++++ kernel-ppc64.spec ++++++
--- /var/tmp/diff_new_pack.SLdYba/_old 2006-05-09 19:16:19.000000000 +0200
+++ /var/tmp/diff_new_pack.SLdYba/_new 2006-05-09 19:16:19.000000000 +0200
@@ -20,7 +20,7 @@
BuildRequires: python
%endif
Version: 2.6.16.14
-Release: 4
+Release: 6
Summary: Kernel for ppc64 Systems
License: GPL, LGPL
Group: System/Kernel
@@ -127,7 +127,8 @@
Tom Gall
see /usr/src/linux-pmac-benh/CREDITS for more details.
-Source Timestamp: 2006/05/08 20:40:06 UTC
+Source Timestamp: 2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -457,6 +458,12 @@
%files -f kernel.files
%changelog -n kernel-ppc64
+* Tue May 09 2006 - okir@suse.de
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+* Tue May 09 2006 - hare@suse.de
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
* Mon May 08 2006 - mason@suse.de
- patches.fixes/hugetlb-reservation: [PATCH] hugepage: serialize
hugepage allocation and instantiation (154121).
++++++ kernel-s390.spec ++++++
--- /var/tmp/diff_new_pack.SLdYba/_old 2006-05-09 19:16:19.000000000 +0200
+++ /var/tmp/diff_new_pack.SLdYba/_new 2006-05-09 19:16:19.000000000 +0200
@@ -21,7 +21,7 @@
BuildRequires: python
%endif
Version: 2.6.16.14
-Release: 4
+Release: 6
Summary: The Standard Kernel
License: GPL
Group: System/Kernel
@@ -110,7 +110,8 @@
-Source Timestamp: 2006/05/08 20:40:06 UTC
+Source Timestamp: 2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -440,6 +441,12 @@
%files -f kernel.files
%changelog -n kernel-s390
+* Tue May 09 2006 - okir@suse.de
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+* Tue May 09 2006 - hare@suse.de
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
* Mon May 08 2006 - mason@suse.de
- patches.fixes/hugetlb-reservation: [PATCH] hugepage: serialize
hugepage allocation and instantiation (154121).
kernel-smp.spec: same change
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.SLdYba/_old 2006-05-09 19:16:20.000000000 +0200
+++ /var/tmp/diff_new_pack.SLdYba/_new 2006-05-09 19:16:20.000000000 +0200
@@ -25,7 +25,7 @@
%endif
PreReq: /sbin/insserv /usr/bin/grep /bin/sed /bin/uname /bin/mkdir /bin/cat /bin/ln /bin/rm /etc/rc.status
Version: 2.6.16.14
-Release: 4
+Release: 6
Source0: http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.16.tar.bz2
Source1: functions.sh
Source2: source-post.sh
@@ -93,7 +93,8 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2006/05/08 20:40:06 UTC
+Source Timestamp: 2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -275,6 +276,12 @@
%files -f kernel-source.files
%changelog -n kernel-source
+* Tue May 09 2006 - okir@suse.de
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+* Tue May 09 2006 - hare@suse.de
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
* Mon May 08 2006 - mason@suse.de
- patches.fixes/hugetlb-reservation: [PATCH] hugepage: serialize
hugepage allocation and instantiation (154121).
++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.SLdYba/_old 2006-05-09 19:16:20.000000000 +0200
+++ /var/tmp/diff_new_pack.SLdYba/_new 2006-05-09 19:16:20.000000000 +0200
@@ -49,7 +49,7 @@
Summary: Kernel Symbol Versions (modversions)
Group: Development/Sources
Version: 2.6.16.14
-Release: 4
+Release: 6
Requires: linux
Requires: kernel-source = 2.6.16.14-%release
Source11: arch-symbols
@@ -84,7 +84,8 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2006/05/08 20:40:06 UTC
+Source Timestamp: 2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
%install
@@ -127,6 +128,12 @@
/boot/symsets-*-*.tar.gz
%changelog -n kernel-syms
+* Tue May 09 2006 - okir@suse.de
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+* Tue May 09 2006 - hare@suse.de
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
* Mon May 08 2006 - mason@suse.de
- patches.fixes/hugetlb-reservation: [PATCH] hugepage: serialize
hugepage allocation and instantiation (154121).
++++++ kernel-um.spec ++++++
--- /var/tmp/diff_new_pack.SLdYba/_old 2006-05-09 19:16:20.000000000 +0200
+++ /var/tmp/diff_new_pack.SLdYba/_new 2006-05-09 19:16:20.000000000 +0200
@@ -21,7 +21,7 @@
BuildRequires: python
%endif
Version: 2.6.16.14
-Release: 4
+Release: 6
Summary: The User Mode Linux kernel.
License: GPL
Group: System/Kernel
@@ -113,7 +113,8 @@
-Source Timestamp: 2006/05/08 20:40:06 UTC
+Source Timestamp: 2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -443,6 +444,12 @@
%files -f kernel.files
%changelog -n kernel-um
+* Tue May 09 2006 - okir@suse.de
+- patches.fixes/dm-get-mdptr-fix: [devicemapper] Fix an oops in
+ dm_get_mdptr (173151).
+* Tue May 09 2006 - hare@suse.de
+- patches.drivers/aic79xx-external-bus-reset:
+ Handle external bus reset gracefully (#96728)
* Mon May 08 2006 - mason@suse.de
- patches.fixes/hugetlb-reservation: [PATCH] hugepage: serialize
hugepage allocation and instantiation (154121).
kernel-xen.spec: same change
kernel-xenpae.spec: same change
++++++ build-source-timestamp ++++++
--- kernel-source/build-source-timestamp 2006-05-08 22:45:48.000000000 +0200
+++ STABLE/kernel-source/build-source-timestamp 2006-05-09 14:30:55.000000000 +0200
@@ -1 +1,2 @@
-2006/05/08 20:40:06 UTC
+2006/05/09 12:09:06 UTC
+CVS Tag: HEAD
++++++ config.tar.bz2 ++++++
++++++ kabi.tar.bz2 ++++++
++++++ minmem ++++++
--- kernel-source/minmem 2006-05-09 12:25:32.000000000 +0200
+++ STABLE/kernel-source/minmem 2006-05-09 14:31:11.000000000 +0200
@@ -1 +1 @@
-514000
+1048576
++++++ novell-kmp.tar.bz2 ++++++
++++++ patches.arch.tar.bz2 ++++++
++++++ patches.drivers.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/aic79xx-external-bus-reset new/patches.drivers/aic79xx-external-bus-reset
--- old/patches.drivers/aic79xx-external-bus-reset 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/aic79xx-external-bus-reset 2006-05-09 13:26:49.000000000 +0200
@@ -0,0 +1,236 @@
+From: Hannes Reinecke
+Date: Mon Apr 3 08:19:34 2006 +0200
+Subject: [PATCH] [SCSI] aic79xx bus reset update
+References: 96728
+Patch-Mainline: 2.6.17
+
+As James B. correctly noted, ahd_reset_channel() in
+ahd_linux_bus_reset() should be protected by ahd_lock(). However, the
+main reason for not doing so was a deadlock with the interesting
+polling mechanism to detect the end a bus reset.
+
+This patch replaces the polling mechanism with a saner signalling via
+flags; it also gives us the benefit of detecting any multiple calls to
+ahd_reset_channel().
+
+Signed-off-by: Hannes Reinecke
+Signed-off-by: James Bottomley
+
+---
+
+ drivers/scsi/aic7xxx/aic79xx.h | 2 -
+ drivers/scsi/aic7xxx/aic79xx_core.c | 116 ++++++++++++++++-------------------
+ drivers/scsi/aic7xxx/aic79xx_osm.c | 4 +
+ 3 files changed, 59 insertions(+), 63 deletions(-)
+
+f41b5cec9bd6fec1b11b74500f5fb9c3e6e808b2
+diff --git a/drivers/scsi/aic7xxx/aic79xx.h b/drivers/scsi/aic7xxx/aic79xx.h
+index 1d11f7e..933e510 100644
+--- a/drivers/scsi/aic7xxx/aic79xx.h
++++ b/drivers/scsi/aic7xxx/aic79xx.h
+@@ -372,7 +372,7 @@ typedef enum {
+ AHD_CURRENT_SENSING = 0x40000,
+ AHD_SCB_CONFIG_USED = 0x80000,/* No SEEPROM but SCB had info. */
+ AHD_HP_BOARD = 0x100000,
+- AHD_RESET_POLL_ACTIVE = 0x200000,
++ AHD_BUS_RESET_ACTIVE = 0x200000,
+ AHD_UPDATE_PEND_CMDS = 0x400000,
+ AHD_RUNNING_QOUTFIFO = 0x800000,
+ AHD_HAD_FIRST_SEL = 0x1000000
+diff --git a/drivers/scsi/aic7xxx/aic79xx_core.c b/drivers/scsi/aic7xxx/aic79xx_core.c
+index 326a622..880a10d 100644
+--- a/drivers/scsi/aic7xxx/aic79xx_core.c
++++ b/drivers/scsi/aic7xxx/aic79xx_core.c
+@@ -207,7 +207,6 @@ static void ahd_add_scb_to_free_list(st
+ static u_int ahd_rem_wscb(struct ahd_softc *ahd, u_int scbid,
+ u_int prev, u_int next, u_int tid);
+ static void ahd_reset_current_bus(struct ahd_softc *ahd);
+-static ahd_callback_t ahd_reset_poll;
+ static ahd_callback_t ahd_stat_timer;
+ #ifdef AHD_DUMP_SEQ
+ static void ahd_dumpseq(struct ahd_softc *ahd);
+@@ -1534,6 +1533,18 @@ ahd_handle_scsiint(struct ahd_softc *ahd
+ lqistat1 = ahd_inb(ahd, LQISTAT1);
+ lqostat0 = ahd_inb(ahd, LQOSTAT0);
+ busfreetime = ahd_inb(ahd, SSTAT2) & BUSFREETIME;
++
++ /*
++ * Ignore external resets after a bus reset.
++ */
++ if (((status & SCSIRSTI) != 0) && (ahd->flags & AHD_BUS_RESET_ACTIVE))
++ return;
++
++ /*
++ * Clear bus reset flag
++ */
++ ahd->flags &= ~AHD_BUS_RESET_ACTIVE;
++
+ if ((status0 & (SELDI|SELDO)) != 0) {
+ u_int simode0;
+
+@@ -7847,6 +7858,17 @@ ahd_reset_channel(struct ahd_softc *ahd,
+ int found;
+ u_int fifo;
+ u_int next_fifo;
++ uint8_t scsiseq;
++
++ /*
++ * Check if the last bus reset is cleared
++ */
++ if (ahd->flags & AHD_BUS_RESET_ACTIVE) {
++ printf("%s: bus reset still active\n",
++ ahd_name(ahd));
++ return 0;
++ }
++ ahd->flags |= AHD_BUS_RESET_ACTIVE;
+
+ ahd->pending_device = NULL;
+
+@@ -7860,6 +7882,12 @@ ahd_reset_channel(struct ahd_softc *ahd,
+ /* Make sure the sequencer is in a safe location. */
+ ahd_clear_critical_section(ahd);
+
++ /*
++ * Run our command complete fifos to ensure that we perform
++ * completion processing on any commands that 'completed'
++ * before the reset occurred.
++ */
++ ahd_run_qoutfifo(ahd);
+ #ifdef AHD_TARGET_MODE
+ if ((ahd->flags & AHD_TARGETROLE) != 0) {
+ ahd_run_tqinfifo(ahd, /*paused*/TRUE);
+@@ -7924,30 +7952,14 @@ ahd_reset_channel(struct ahd_softc *ahd,
+ ahd_clear_fifo(ahd, 1);
+
+ /*
+- * Revert to async/narrow transfers until we renegotiate.
++ * Reenable selections
+ */
+- max_scsiid = (ahd->features & AHD_WIDE) ? 15 : 7;
+- for (target = 0; target <= max_scsiid; target++) {
+-
+- if (ahd->enabled_targets[target] == NULL)
+- continue;
+- for (initiator = 0; initiator <= max_scsiid; initiator++) {
+- struct ahd_devinfo devinfo;
+-
+- ahd_compile_devinfo(&devinfo, target, initiator,
+- CAM_LUN_WILDCARD,
+- 'A', ROLE_UNKNOWN);
+- ahd_set_width(ahd, &devinfo, MSG_EXT_WDTR_BUS_8_BIT,
+- AHD_TRANS_CUR, /*paused*/TRUE);
+- ahd_set_syncrate(ahd, &devinfo, /*period*/0,
+- /*offset*/0, /*ppr_options*/0,
+- AHD_TRANS_CUR, /*paused*/TRUE);
+- }
+- }
++ ahd_outb(ahd, SIMODE1, ahd_inb(ahd, SIMODE1) | ENSCSIRST);
++ scsiseq = ahd_inb(ahd, SCSISEQ_TEMPLATE);
++ ahd_outb(ahd, SCSISEQ1, scsiseq & (ENSELI|ENRSELI|ENAUTOATNP));
+
+-#ifdef AHD_TARGET_MODE
+ max_scsiid = (ahd->features & AHD_WIDE) ? 15 : 7;
+-
++#ifdef AHD_TARGET_MODE
+ /*
+ * Send an immediate notify ccb to all target more peripheral
+ * drivers affected by this action.
+@@ -7975,51 +7987,31 @@ ahd_reset_channel(struct ahd_softc *ahd,
+ /* Notify the XPT that a bus reset occurred */
+ ahd_send_async(ahd, devinfo.channel, CAM_TARGET_WILDCARD,
+ CAM_LUN_WILDCARD, AC_BUS_RESET, NULL);
+- ahd_restart(ahd);
++
+ /*
+- * Freeze the SIMQ until our poller can determine that
+- * the bus reset has really gone away. We set the initial
+- * timer to 0 to have the check performed as soon as possible
+- * from the timer context.
+- */
+- if ((ahd->flags & AHD_RESET_POLL_ACTIVE) == 0) {
+- ahd->flags |= AHD_RESET_POLL_ACTIVE;
+- ahd_freeze_simq(ahd);
+- ahd_timer_reset(&ahd->reset_timer, 0, ahd_reset_poll, ahd);
+- }
+- return (found);
+-}
++ * Revert to async/narrow transfers until we renegotiate.
++ */
++ for (target = 0; target <= max_scsiid; target++) {
+
++ if (ahd->enabled_targets[target] == NULL)
++ continue;
++ for (initiator = 0; initiator <= max_scsiid; initiator++) {
++ struct ahd_devinfo devinfo;
+
+-#define AHD_RESET_POLL_US 1000
+-static void
+-ahd_reset_poll(void *arg)
+-{
+- struct ahd_softc *ahd = arg;
+- u_int scsiseq1;
+- u_long s;
+-
+- ahd_lock(ahd, &s);
+- ahd_pause(ahd);
+- ahd_update_modes(ahd);
+- ahd_set_modes(ahd, AHD_MODE_SCSI, AHD_MODE_SCSI);
+- ahd_outb(ahd, CLRSINT1, CLRSCSIRSTI);
+- if ((ahd_inb(ahd, SSTAT1) & SCSIRSTI) != 0) {
+- ahd_timer_reset(&ahd->reset_timer, AHD_RESET_POLL_US,
+- ahd_reset_poll, ahd);
+- ahd_unpause(ahd);
+- ahd_unlock(ahd, &s);
+- return;
++ ahd_compile_devinfo(&devinfo, target, initiator,
++ CAM_LUN_WILDCARD,
++ 'A', ROLE_UNKNOWN);
++ ahd_set_width(ahd, &devinfo, MSG_EXT_WDTR_BUS_8_BIT,
++ AHD_TRANS_CUR, /*paused*/TRUE);
++ ahd_set_syncrate(ahd, &devinfo, /*period*/0,
++ /*offset*/0, /*ppr_options*/0,
++ AHD_TRANS_CUR, /*paused*/TRUE);
++ }
+ }
+
+- /* Reset is now low. Complete chip reinitialization. */
+- ahd_outb(ahd, SIMODE1, ahd_inb(ahd, SIMODE1) | ENSCSIRST);
+- scsiseq1 = ahd_inb(ahd, SCSISEQ_TEMPLATE);
+- ahd_outb(ahd, SCSISEQ1, scsiseq1 & (ENSELI|ENRSELI|ENAUTOATNP));
+- ahd_unpause(ahd);
+- ahd->flags &= ~AHD_RESET_POLL_ACTIVE;
+- ahd_unlock(ahd, &s);
+- ahd_release_simq(ahd);
++ ahd_restart(ahd);
++
++ return (found);
+ }
+
+ /**************************** Statistics Processing ***************************/
+diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.c b/drivers/scsi/aic7xxx/aic79xx_osm.c
+index bcced0a..66e4a47 100644
+--- a/drivers/scsi/aic7xxx/aic79xx_osm.c
++++ b/drivers/scsi/aic7xxx/aic79xx_osm.c
+@@ -782,6 +782,7 @@ ahd_linux_bus_reset(struct scsi_cmnd *cm
+ {
+ struct ahd_softc *ahd;
+ int found;
++ unsigned long flags;
+
+ ahd = *(struct ahd_softc **)cmd->device->host->hostdata;
+ #ifdef AHD_DEBUG
+@@ -789,8 +790,11 @@ ahd_linux_bus_reset(struct scsi_cmnd *cm
+ printf("%s: Bus reset called for cmd %p\n",
+ ahd_name(ahd), cmd);
+ #endif
++ ahd_lock(ahd, &flags);
++
+ found = ahd_reset_channel(ahd, scmd_channel(cmd) + 'A',
+ /*initiate reset*/TRUE);
++ ahd_unlock(ahd, &flags);
+
+ if (bootverbose)
+ printf("%s: SCSI bus reset delivered. "
+--
+1.2.4
+
++++++ patches.fixes.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/dm-get-mdptr-fix new/patches.fixes/dm-get-mdptr-fix
--- old/patches.fixes/dm-get-mdptr-fix 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/dm-get-mdptr-fix 2006-05-09 14:09:06.000000000 +0200
@@ -0,0 +1,28 @@
+From: Olaf Kirch
+Subject: [devicemapper] Fix an oops in dm_get_mdptr
+Patch-mainline: obsolete
+References: 173151
+
+This fixes an oops introduced by patches.fixes/dm-proper-refcounting.diff
+
+Not needed in future mainline versions, as the refcounting in
+__find_device_hash_cell was fixed differently.
+
+Acked-by: hare@suse.de
+
+ drivers/md/dm.c | 2 +-
+ 1 files changed, 1 insertion(+), 1 deletion(-)
+
+Index: build/drivers/md/dm.c
+===================================================================
+--- build.orig/drivers/md/dm.c
++++ build/drivers/md/dm.c
+@@ -1010,7 +1010,7 @@ void *dm_get_mdptr(dev_t dev)
+ if (md)
+ mdptr = md->interface_ptr;
+
+- if (mdptr == NULL)
++ if (md != NULL && mdptr == NULL)
+ dm_put(md);
+
+ return mdptr;
++++++ patches.kernel.org.tar.bz2 ++++++
++++++ patches.rpmify.tar.bz2 ++++++
++++++ patches.suse.tar.bz2 ++++++
++++++ patches.uml.tar.bz2 ++++++
++++++ patches.xen.tar.bz2 ++++++
++++++ series.conf ++++++
--- kernel-source/series.conf 2006-05-08 22:45:52.000000000 +0200
+++ STABLE/kernel-source/series.conf 2006-05-09 14:31:00.000000000 +0200
@@ -915,6 +915,7 @@
patches.drivers/aic79xx-use-bios-settings
patches.drivers/aic79xx-avoid-renegotiation
patches.drivers/aic79xx-target-hotplug-fixes
+ patches.drivers/aic79xx-external-bus-reset
patches.fixes/altix-asic-workarounds
patches.arch/ia64-sn2-tioce_provider
@@ -1118,6 +1119,7 @@
patches.suse/oom-too-early-2
patches.fixes/hugetlb-reservation
patches.fixes/hugetlb-reservation-2
+ patches.fixes/dm-get-mdptr-fix
# PLEASE KEEP THESE PATCHES AT THE END OF series.conf
# (as all other arch specific patches should be kept at the end
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...