Hello community,
here is the log from the commit of package kernel-source
checked in at Mon Nov 20 18:57:25 CET 2006.
--------
--- kernel-source/kernel-bigsmp.changes 2006-11-19 14:12:03.000000000 +0100
+++ /mounts/work_src_done/STABLE/kernel-source/kernel-bigsmp.changes 2006-11-20 17:31:18.000000000 +0100
@@ -1,0 +2,12 @@
+Mon Nov 20 11:10:49 CET 2006 - hare@suse.de
+
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+
+-------------------------------------------------------------------
+Mon Nov 20 11:10:17 CET 2006 - hare@suse.de
+
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
+
+-------------------------------------------------------------------
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-source.changes: same change
kernel-syms.changes: same change
kernel-um.changes: same change
kernel-vanilla.changes: same change
kernel-xen.changes: same change
kernel-xenpae.changes: same change
New:
----
needed_space_in_mb
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kernel-bigsmp.spec ++++++
--- /var/tmp/diff_new_pack.U1Z0QJ/_old 2006-11-20 18:55:11.000000000 +0100
+++ /var/tmp/diff_new_pack.U1Z0QJ/_new 2006-11-20 18:55:11.000000000 +0100
@@ -29,7 +29,7 @@
BuildRequires: python
%endif
Version: 2.6.18.2
-Release: 18
+Release: 20
Summary: Kernel with PAE Support
License: GNU General Public License (GPL)
Group: System/Kernel
@@ -124,7 +124,7 @@
-Source Timestamp: 2006/11/19 12:29:36 UTC
+Source Timestamp: 2006/11/20 10:10:55 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.18.tar.bz2 ]; then
@@ -470,6 +470,12 @@
%files -f kernel.files
%changelog -n kernel-bigsmp
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
* Sun Nov 19 2006 - olh@suse.de
- add patches.suse/uml-offsetof.patch
workaround to get offsetoff for arch/um/sys-i386/user-offsets.c
kernel-debug.spec: same change
kernel-default.spec: same change
++++++ kernel-dummy.spec ++++++
--- /var/tmp/diff_new_pack.U1Z0QJ/_old 2006-11-20 18:55:11.000000000 +0100
+++ /var/tmp/diff_new_pack.U1Z0QJ/_new 2006-11-20 18:55:11.000000000 +0100
@@ -17,7 +17,7 @@
Summary: Internal dummy package for synchronizing release numbers
Group: System/Kernel
Version: 2.6.18.2
-Release: 18
+Release: 20
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -27,7 +27,7 @@
--------
Andreas Gruenbacher
-Source Timestamp: 2006/11/19 12:29:36 UTC
+Source Timestamp: 2006/11/20 10:10:55 UTC
%install
@@ -40,6 +40,12 @@
/etc/dummy
%changelog -n kernel-dummy
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
* Sun Nov 19 2006 - olh@suse.de
- add patches.suse/uml-offsetof.patch
workaround to get offsetoff for arch/um/sys-i386/user-offsets.c
++++++ kernel-iseries64.spec ++++++
--- /var/tmp/diff_new_pack.U1Z0QJ/_old 2006-11-20 18:55:11.000000000 +0100
+++ /var/tmp/diff_new_pack.U1Z0QJ/_new 2006-11-20 18:55:11.000000000 +0100
@@ -29,7 +29,7 @@
BuildRequires: python
%endif
Version: 2.6.18.2
-Release: 18
+Release: 20
Summary: 64-Bit Kernel for iSeries
License: GNU General Public License (GPL)
Group: System/Kernel
@@ -125,7 +125,7 @@
-Source Timestamp: 2006/11/19 12:29:36 UTC
+Source Timestamp: 2006/11/20 10:10:55 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.18.tar.bz2 ]; then
@@ -471,6 +471,12 @@
%files -f kernel.files
%changelog -n kernel-iseries64
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
* Sun Nov 19 2006 - olh@suse.de
- add patches.suse/uml-offsetof.patch
workaround to get offsetoff for arch/um/sys-i386/user-offsets.c
kernel-kdump.spec: same change
++++++ kernel-ppc64.spec ++++++
--- /var/tmp/diff_new_pack.U1Z0QJ/_old 2006-11-20 18:55:11.000000000 +0100
+++ /var/tmp/diff_new_pack.U1Z0QJ/_new 2006-11-20 18:55:11.000000000 +0100
@@ -28,7 +28,7 @@
BuildRequires: python
%endif
Version: 2.6.18.2
-Release: 18
+Release: 20
Summary: Kernel for ppc64 Systems
License: GNU General Public License (GPL), GNU Library General Public License v. 2.0 and 2.1 (LGPL)
Group: System/Kernel
@@ -139,7 +139,7 @@
Tom Gall
see /usr/src/linux-pmac-benh/CREDITS for more details.
-Source Timestamp: 2006/11/19 12:29:36 UTC
+Source Timestamp: 2006/11/20 10:10:55 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.18.tar.bz2 ]; then
@@ -485,6 +485,12 @@
%files -f kernel.files
%changelog -n kernel-ppc64
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
* Sun Nov 19 2006 - olh@suse.de
- add patches.suse/uml-offsetof.patch
workaround to get offsetoff for arch/um/sys-i386/user-offsets.c
++++++ kernel-s390.spec ++++++
--- /var/tmp/diff_new_pack.U1Z0QJ/_old 2006-11-20 18:55:11.000000000 +0100
+++ /var/tmp/diff_new_pack.U1Z0QJ/_new 2006-11-20 18:55:11.000000000 +0100
@@ -29,7 +29,7 @@
BuildRequires: python
%endif
Version: 2.6.18.2
-Release: 11
+Release: 12
Summary: The Standard Kernel
License: GNU General Public License (GPL)
Group: System/Kernel
@@ -122,7 +122,7 @@
-Source Timestamp: 2006/11/19 12:29:36 UTC
+Source Timestamp: 2006/11/20 10:10:55 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.18.tar.bz2 ]; then
@@ -468,6 +468,12 @@
%files -f kernel.files
%changelog -n kernel-s390
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
* Sun Nov 19 2006 - olh@suse.de
- add patches.suse/uml-offsetof.patch
workaround to get offsetoff for arch/um/sys-i386/user-offsets.c
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.U1Z0QJ/_old 2006-11-20 18:55:11.000000000 +0100
+++ /var/tmp/diff_new_pack.U1Z0QJ/_new 2006-11-20 18:55:11.000000000 +0100
@@ -32,7 +32,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.18.2
-Release: 18
+Release: 20
Source0: http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2
Source1: functions.sh
Source2: source-post.sh
@@ -102,7 +102,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2006/11/19 12:29:36 UTC
+Source Timestamp: 2006/11/20 10:10:55 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.18.tar.bz2 ]; then
@@ -291,6 +291,12 @@
%files -f kernel-source.files
%changelog -n kernel-source
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
* Sun Nov 19 2006 - olh@suse.de
- add patches.suse/uml-offsetof.patch
workaround to get offsetoff for arch/um/sys-i386/user-offsets.c
++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.U1Z0QJ/_old 2006-11-20 18:55:11.000000000 +0100
+++ /var/tmp/diff_new_pack.U1Z0QJ/_new 2006-11-20 18:55:11.000000000 +0100
@@ -49,7 +49,7 @@
Summary: Kernel Symbol Versions (modversions)
Group: Development/Sources
Version: 2.6.18.2
-Release: 18
+Release: 20
Requires: linux
Requires: kernel-source = 2.6.18.2-%release
Source11: arch-symbols
@@ -84,7 +84,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2006/11/19 12:29:36 UTC
+Source Timestamp: 2006/11/20 10:10:55 UTC
%install
@@ -129,6 +129,12 @@
/lib/modules/*/modules.alias
%changelog -n kernel-syms
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
* Sun Nov 19 2006 - olh@suse.de
- add patches.suse/uml-offsetof.patch
workaround to get offsetoff for arch/um/sys-i386/user-offsets.c
++++++ kernel-um.spec ++++++
--- /var/tmp/diff_new_pack.U1Z0QJ/_old 2006-11-20 18:55:11.000000000 +0100
+++ /var/tmp/diff_new_pack.U1Z0QJ/_new 2006-11-20 18:55:11.000000000 +0100
@@ -29,7 +29,7 @@
BuildRequires: python
%endif
Version: 2.6.18.2
-Release: 18
+Release: 20
Summary: The User Mode Linux kernel.
License: GNU General Public License (GPL)
Group: System/Kernel
@@ -130,7 +130,7 @@
-Source Timestamp: 2006/11/19 12:29:36 UTC
+Source Timestamp: 2006/11/20 10:10:55 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.18.tar.bz2 ]; then
@@ -476,6 +476,12 @@
%files -f kernel.files
%changelog -n kernel-um
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode (218742).
+* Mon Nov 20 2006 - hare@suse.de
+- patches.drivers/libata-legacy-irq-share: libata doesn't enable
+ IRQ sharing for devices in legacy mode.
* Sun Nov 19 2006 - olh@suse.de
- add patches.suse/uml-offsetof.patch
workaround to get offsetoff for arch/um/sys-i386/user-offsets.c
kernel-vanilla.spec: same change
kernel-xen.spec: same change
kernel-xenpae.spec: same change
++++++ build-source-timestamp ++++++
--- kernel-source/build-source-timestamp 2006-11-19 14:11:59.000000000 +0100
+++ /mounts/work_src_done/STABLE/kernel-source/build-source-timestamp 2006-11-20 17:31:15.000000000 +0100
@@ -1 +1 @@
-2006/11/19 12:29:36 UTC
+2006/11/20 10:10:55 UTC
++++++ kabi.tar.bz2 ++++++
++++++ patches.drivers.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-legacy-irq-share new/patches.drivers/libata-legacy-irq-share
--- old/patches.drivers/libata-legacy-irq-share 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-legacy-irq-share 2006-11-20 11:10:55.000000000 +0100
@@ -0,0 +1,122 @@
+From: Tejun Heo
+Subject: libata doesn't enable IRQ sharing for devices in legacy mode
+References: 218742
+Patch-Mainline: Yes
+
+There are machines out there which share legacy PCI IDE IRQs w/ other
+devices. libata SFF interrupt/HSM code is ready for shared IRQ and
+has been setting IRQF_SHARED for devices in native PCI mode. Device
+in legacy mode is still a PCI device and thus supposedly uses
+active-low level triggered IRQ.
+
+Machines with such setup should be quite rare and w/o this flag libata
+is likely to fail loading and render the system unuseable. Also, IDE
+driver has been setting IRQF_SHARED for devices in legacy mode for a
+looooong time.
+
+Signed-off-by: Tejun Heo
+Signed-off-by: Hannes Reinecke
+
+diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
+index 94a7771..98232b4 100644
+--- a/drivers/ata/libata-core.c
++++ b/drivers/ata/libata-core.c
+@@ -4820,6 +4820,7 @@ unsigned int ata_qc_issue_prot(struct at
+ inline unsigned int ata_host_intr (struct ata_port *ap,
+ struct ata_queued_cmd *qc)
+ {
++ struct ata_eh_info *ehi = &ap->eh_info;
+ u8 status, host_stat = 0;
+
+ VPRINTK("ata%u: protocol %d task_state %d\n",
+@@ -4880,6 +4881,11 @@ inline unsigned int ata_host_intr (struc
+ ap->ops->irq_clear(ap);
+
+ ata_hsm_move(ap, qc, status, 0);
++
++ if (unlikely(qc->err_mask) && (qc->tf.protocol == ATA_PROT_DMA ||
++ qc->tf.protocol == ATA_PROT_ATAPI_DMA))
++ ata_ehi_push_desc(ehi, "BMDMA stat 0x%x", host_stat);
++
+ return 1; /* irq handled */
+
+ idle_irq:
+@@ -5560,9 +5566,8 @@ int ata_device_add(const struct ata_prob
+ ap->ioaddr.bmdma_addr,
+ irq_line);
+
+- ata_chk_status(ap);
+- host->ops->irq_clear(ap);
+- ata_eh_freeze_port(ap); /* freeze port before requesting IRQ */
++ /* freeze port before requesting IRQ */
++ ata_eh_freeze_port(ap);
+ }
+
+ /* obtain irq, that may be shared between channels */
+diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c
+index 5b98f42..93ef023 100644
+--- a/drivers/ata/libata-sff.c
++++ b/drivers/ata/libata-sff.c
+@@ -671,6 +671,14 @@ void ata_bmdma_freeze(struct ata_port *a
+ writeb(ap->ctl, (void __iomem *)ioaddr->ctl_addr);
+ else
+ outb(ap->ctl, ioaddr->ctl_addr);
++
++ /* Under certain circumstances, some controllers raise IRQ on
++ * ATA_NIEN manipulation. Also, many controllers fail to mask
++ * previously pending IRQ on ATA_NIEN assertion. Clear it.
++ */
++ ata_chk_status(ap);
++
++ ap->ops->irq_clear(ap);
+ }
+
+ /**
+@@ -714,7 +722,6 @@ void ata_bmdma_drive_eh(struct ata_port
+ ata_reset_fn_t softreset, ata_reset_fn_t hardreset,
+ ata_postreset_fn_t postreset)
+ {
+- struct ata_eh_context *ehc = &ap->eh_context;
+ struct ata_queued_cmd *qc;
+ unsigned long flags;
+ int thaw = 0;
+@@ -734,8 +741,6 @@ void ata_bmdma_drive_eh(struct ata_port
+
+ host_stat = ata_bmdma_status(ap);
+
+- ata_ehi_push_desc(&ehc->i, "BMDMA stat 0x%x", host_stat);
+-
+ /* BMDMA controllers indicate host bus error by
+ * setting DMA_ERR bit and timing out. As it wasn't
+ * really a timeout event, adjust error mask and
+@@ -877,6 +882,7 @@ static struct ata_probe_ent *ata_pci_ini
+ return NULL;
+
+ probe_ent->n_ports = 2;
++ probe_ent->irq_flags = IRQF_SHARED;
+
+ if (port_mask & ATA_PORT_PRIMARY) {
+ probe_ent->irq = ATA_PRIMARY_IRQ;
+diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
+index 3d9fa1c..91e0305 100644
+--- a/drivers/ata/sata_sil.c
++++ b/drivers/ata/sata_sil.c
+@@ -357,6 +357,7 @@ static void sil_scr_write (struct ata_po
+
+ static void sil_host_intr(struct ata_port *ap, u32 bmdma2)
+ {
++ struct ata_eh_info *ehi = &ap->eh_info;
+ struct ata_queued_cmd *qc = ata_qc_from_tag(ap, ap->active_tag);
+ u8 status;
+
+@@ -429,6 +430,10 @@ static void sil_host_intr(struct ata_por
+ /* kick HSM in the ass */
+ ata_hsm_move(ap, qc, status, 0);
+
++ if (unlikely(qc->err_mask) && (qc->tf.protocol == ATA_PROT_DMA ||
++ qc->tf.protocol == ATA_PROT_ATAPI_DMA))
++ ata_ehi_push_desc(ehi, "BMDMA2 stat 0x%x", bmdma2);
++
+ return;
+
+ err_hsm:
++++++ patches.suse.tar.bz2 ++++++
++++ 4177 lines of diff (skipped)
++++++ series.conf ++++++
--- kernel-source/series.conf 2006-11-19 14:11:52.000000000 +0100
+++ /mounts/work_src_done/STABLE/kernel-source/series.conf 2006-11-20 17:31:11.000000000 +0100
@@ -239,7 +239,7 @@
patches.fixes/netfilter-compat.patch
# anyone want to refresh this one?
-# patches.suse/netfilter-ipv4options
++okir patches.suse/netfilter-ipv4options
patches.suse/netfilter-ipt_LOG-mac
@@ -329,7 +329,7 @@
# watch out, if running this kernel on older releases, you might loose
# your network devices due to the following patch. Comment it out if
# you want them back, or fix libsysfs for the release you are using.
- #patches.suse/driver-class_network-device.patch
++gregkh patches.suse/driver-class_network-device.patch
########################################################
# USB
@@ -402,7 +402,7 @@
+garloff patches.suse/security-se-enabled
# ... so rather than fixing the above I'm using this one,
# which does roughly the same, and was reviewed. --okir
-# patches.suse/security-disabled-optimize-cap-default
++garloff patches.suse/security-disabled-optimize-cap-default
##########################################################
# AppArmor
@@ -477,6 +477,7 @@
patches.fixes/cramfs-blocksize.diff
patches.drivers/libata-flush-ext-workaround
patches.fixes/handle-ext3-directory-corruption-better.patch
+ patches.drivers/libata-legacy-irq-share
# PLEASE KEEP THESE PATCHES AT THE END OF series.conf
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org