Mailinglist Archive: opensuse-commit (1083 mails)

< Previous Next >
commit kernel-source
  • From: root@xxxxxxxxxxxxxxx (h_root)
  • Date: Mon, 10 Sep 2007 12:40:54 +0200
  • Message-id: <20070910104055.5966B67817A@xxxxxxxxxxxxxxx>

Hello community,

here is the log from the commit of package kernel-source
checked in at Mon Sep 10 12:40:54 CEST 2007.

--------
--- kernel-source/kernel-bigsmp.changes 2007-09-04 14:38:39.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/kernel-bigsmp.changes    2007-09-07 19:56:26.000000000 +0200
@@ -1,0 +2,95 @@
+Fri Sep  7 11:44:38 MDT 2007 - carnold@xxxxxxxxxx
+
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+
+-------------------------------------------------------------------
+Fri Sep  7 19:06:47 CEST 2007 - jdelvare@xxxxxxx
+
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+
+-------------------------------------------------------------------
+Fri Sep  7 13:56:56 CEST 2007 - bwalle@xxxxxxx
+
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+
+-------------------------------------------------------------------
+Fri Sep  7 09:27:21 CEST 2007 - teheo@xxxxxxx
+
+Fix patch contamination.
+
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+
+-------------------------------------------------------------------
+Fri Sep  7 07:55:45 CEST 2007 - teheo@xxxxxxx
+
+A bunch of libata fixes.  Mostly backport of pending fixes for
+2.6.23 and 24.
+
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+
+-------------------------------------------------------------------
+Thu Sep  6 19:18:51 CEST 2007 - bwalle@xxxxxxx
+
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+
+-------------------------------------------------------------------
+Wed Sep  5 13:37:01 CEST 2007 - fseidel@xxxxxxx
+
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+
+-------------------------------------------------------------------
+Tue Sep  4 16:58:48 CEST 2007 - sven@xxxxxxx
+
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+
+-------------------------------------------------------------------
+Tue Sep  4 15:45:15 CEST 2007 - olh@xxxxxxx
+
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
+
+-------------------------------------------------------------------
kernel-debug.changes: same change
kernel-default.changes: same change
kernel-dummy.changes: same change
kernel-kdump.changes: same change
kernel-ppc64.changes: same change
kernel-rt.changes: same change
kernel-rt_debug.changes: same change
kernel-s390.changes: same change
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-vanilla.changes: same change
kernel-xen.changes: same change
kernel-xenpae.changes: same change

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kernel-bigsmp.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:24.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:24.000000000 +0200
@@ -39,7 +39,7 @@
 %endif
 Summary:        Kernel with PAE Support
 Version:        2.6.22.5
-Release:        11
+Release:        13
 License:        GPL v2 or later
 Group:          System/Kernel
 Autoreqprov:    on
@@ -170,7 +170,7 @@
 
 
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -561,6 +561,72 @@
 %files -f kernel.files
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

kernel-debug.spec: same change
kernel-default.spec: same change
++++++ kernel-dummy.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:24.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:24.000000000 +0200
@@ -15,7 +15,7 @@
 URL:            http://www.kernel.org/
 Summary:        Internal dummy package for synchronizing release numbers
 Version:        2.6.22.5
-Release:        11
+Release:        13
 License:        GPL v2 or later
 Group:          System/Kernel
 Autoreqprov:    off
@@ -28,7 +28,7 @@
 --------
     Andreas Gruenbacher <agruen@xxxxxxx>
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 
 %install
@@ -41,6 +41,72 @@
 /etc/dummy
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

++++++ kernel-kdump.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:24.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:24.000000000 +0200
@@ -39,7 +39,7 @@
 %endif
 Summary:        kernel for kdump
 Version:        2.6.22.5
-Release:        11
+Release:        13
 License:        GPL v2 or later
 Group:          System/Kernel
 Autoreqprov:    on
@@ -174,7 +174,7 @@
 
 
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -565,6 +565,72 @@
 %files -f kernel.files
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

++++++ kernel-ppc64.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:25.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:25.000000000 +0200
@@ -38,7 +38,7 @@
 %endif
 Summary:        Kernel for ppc64 Systems
 Version:        2.6.22.5
-Release:        11
+Release:        13
 License:        GPL v2 or later, LGPL v2 or later
 Group:          System/Kernel
 Autoreqprov:    on
@@ -186,7 +186,7 @@
     Tom Gall <tom_gall@xxxxxxxxxxxx>
     see /usr/src/linux/CREDITS for more details.
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -577,6 +577,72 @@
 %files -f kernel.files
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

++++++ kernel-rt_debug.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:25.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:25.000000000 +0200
@@ -39,7 +39,7 @@
 %endif
 Summary:        A Debug Version of the Kernel
 Version:        2.6.22.5
-Release:        11
+Release:        13
 License:        GPL v2 or later
 Group:          System/Kernel
 Autoreqprov:    on
@@ -172,7 +172,7 @@
 
 
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -563,6 +563,72 @@
 %files -f kernel.files
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

++++++ kernel-rt.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:25.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:25.000000000 +0200
@@ -39,7 +39,7 @@
 %endif
 Summary:        The Realtime Linux Kernel
 Version:        2.6.22.5
-Release:        11
+Release:        13
 License:        GPL v2 or later
 Group:          System/Kernel
 Autoreqprov:    on
@@ -188,7 +188,7 @@
     
     see /usr/src/linux/CREDITS for more details.
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -579,6 +579,72 @@
 %files -f kernel.files
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

++++++ kernel-s390.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:25.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:25.000000000 +0200
@@ -39,7 +39,7 @@
 %endif
 Summary:        The Standard Kernel
 Version:        2.6.22.5
-Release:        7
+Release:        8
 License:        GPL v2 or later
 Group:          System/Kernel
 Autoreqprov:    on
@@ -168,7 +168,7 @@
 
 
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -559,6 +559,72 @@
 %files -f kernel.files
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:26.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:26.000000000 +0200
@@ -22,8 +22,8 @@
 %endif
 Summary:        The Linux Kernel Sources
 Version:        2.6.22.5
-Release:        11
-License:        GPL v2 or later
+Release:        13
+License:        GPL v2 only
 Group:          Development/Sources
 Autoreqprov:    off
 BuildRequires:  coreutils
@@ -106,7 +106,7 @@
     
     see /usr/src/linux/CREDITS for more details.
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -281,6 +281,72 @@
 %files -f kernel-source.files
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:26.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:26.000000000 +0200
@@ -21,7 +21,7 @@
 %endif
 Summary:        Kernel Symbol Versions (modversions)
 Version:        2.6.22.5
-Release:        11
+Release:        13
 License:        GPL v2 or later
 Group:          Development/Sources
 Autoreqprov:    off
@@ -96,7 +96,7 @@
     
     see /usr/src/linux/CREDITS for more details.
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 echo "Architecture symbol(s):" %symbols
@@ -150,6 +150,72 @@
 /lib/modules/*/*
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

++++++ kernel-vanilla.spec ++++++
--- /var/tmp/diff_new_pack.gj3843/_old  2007-09-10 12:38:26.000000000 +0200
+++ /var/tmp/diff_new_pack.gj3843/_new  2007-09-10 12:38:26.000000000 +0200
@@ -39,7 +39,7 @@
 %endif
 Summary:        The Standard Kernel - without any SUSE patches
 Version:        2.6.22.5
-Release:        11
+Release:        13
 License:        GPL v2 or later
 Group:          System/Kernel
 Autoreqprov:    on
@@ -188,7 +188,7 @@
 
 
 
-Source Timestamp: 2007/09/04 12:37:49 UTC
+Source Timestamp: 2007/09/07 17:46:00 UTC
 
 %prep
 if ! [ -e %_sourcedir/linux-2.6.22.tar.bz2 ]; then
@@ -579,6 +579,72 @@
 %files -f kernel.files
 
 %changelog
+* Fri Sep 07 2007 - jdelvare@xxxxxxx
+- patches.suse/bootsplash: Add missing newline at end of log
+  messages and missing prefix at the beginning of log messages.
+  Adapt the log level to the type of message.
+* Fri Sep 07 2007 - bwalle@xxxxxxx
+- Update config files: fix i386/rt{,_debug} and x86_64/rt{,_debug}
+  builds
+- move patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  to patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
+  because the fix is also needed if the Xen patches are not applied
+  (RT case)
+* Fri Sep 07 2007 - carnold@xxxxxxxxxx
+- patches.xen/30-bit-field-booleans.patch: Packet loss in DomU -xen
+  netback driver (306896).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  Fix patch contamination.
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+* Fri Sep 07 2007 - teheo@xxxxxxx
+  A bunch of libata fixes.  Mostly backport of pending fixes for
+  2.6.23 and 24.
+- patches.drivers/libata-unlock-hpa-by-default: libata: unlock
+  HPA by default (299267).
+- patches.drivers/libata-atapi-passthru16: libata: add support
+  for ATA_16 on ATAPI (308482).
+- patches.drivers/libata-clear-horkage-on-ata_dev_init: : libata
+  clear horkage on ata_dev_init() (308490).
+- patches.drivers/libata-fix-n_sectors-handling-during-revalidation:
+  libata: fix n_sectors handling during revalidation (308493).
+- patches.drivers/libata-add-pata_dma-kernel-parameter: libata:
+  Add a drivers/ide style  DMA disable (229260 272786).
+- patches.drivers/libata-improve-diagnostic-failure-handling:
+  libata: improve diagnostic failure handling (308499).
+- patches.drivers/libata-add-NCQ-spurious-completion-horkages:
+  libata: add devices to NCQ spurious completion horkage (308500).
+- patches.drivers/libata-add-broken-HPA-horkages: libata: add
+  devices to BROKEN HPA list (308502).
+- patches.drivers/libata-improve-hpa-failure-handling: libata:
+  improve HPA failure handling (308503 299267).
+- patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops:
+  ata_piix: fix suspend for several Toshiba laptops (308486).
+- patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk:
+  ata_piix: implement IOCFG bit18 quirk. (308489)
+- patches.drivers/libata-pata_it821x-fix-initialization-bug:
+  pata_it821x: Fix regression/corruptor (308504).
+- patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421:
+  Fix sata_via write errors on PATA drive connected to VT6421
+  (308507).
+- patches.drivers/libata-more-machines-for-short-cable-list:
+  libata: more machines for short cable list (308510).
+- patches.drivers/libata-add-pci-ids-for-intel-tolapi: libata:
+  add PCI IDs for intel tolapai (308512).
+- patches.drivers/libata-pata_marvell-add-PCI-IDs: pata_marvell:
+  Add more identifiers (308513).
+* Thu Sep 06 2007 - bwalle@xxxxxxx
+- Update config files: Switch from CONFIG_RT to CONFIG_GEN_RTC
+  (#287539)
+* Wed Sep 05 2007 - fseidel@xxxxxxx
+- patches.fixes/acpi_autoload_baydock.patch: bay and dock driver
+  didn't get loaded (302482).
+* Tue Sep 04 2007 - sven@xxxxxxx
+- accomodate i386 KDB dependency on xen3-auto-arch-i386.diff
+  to address RT build failures.
+* Tue Sep 04 2007 - olh@xxxxxxx
+- add patches.drivers/libata-scc-ata_link.patch
+  active_tag member is now in ata_port->link (307181)
 * Tue Sep 04 2007 - hare@xxxxxxx
 - patches.suse/kbd-ignore-gfx.patch: setfont breaks first Xserver
   start (302010).

kernel-xenpae.spec: same change
kernel-xen.spec: same change

++++++ build-source-timestamp ++++++
--- kernel-source/build-source-timestamp        2007-09-04 14:38:35.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/build-source-timestamp   2007-09-07 19:56:21.000000000 +0200
@@ -1 +1 @@
-2007/09/04 12:37:49 UTC
+2007/09/07 17:46:00 UTC







++++++ config.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/i386/bigsmp new/config/i386/bigsmp
--- old/config/i386/bigsmp      2007-08-31 10:07:00.000000000 +0200
+++ new/config/i386/bigsmp      2007-09-07 07:09:20.000000000 +0200
@@ -178,7 +178,6 @@
 CONFIG_X86_INTEL_USERCOPY=y
 CONFIG_X86_MINIMUM_CPU_MODEL=4
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_NR_CPUS=128
 CONFIG_SCHED_SMT=y
 CONFIG_SCHED_MC=y
@@ -2337,7 +2336,9 @@
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_NVRAM=m
-CONFIG_RTC=y
+# CONFIG_RTC is not set
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_DTLK=m
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
@@ -2962,8 +2963,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/i386/debug new/config/i386/debug
--- old/config/i386/debug       2007-08-31 10:07:00.000000000 +0200
+++ new/config/i386/debug       2007-09-07 07:09:20.000000000 +0200
@@ -177,7 +177,6 @@
 CONFIG_X86_INTEL_USERCOPY=y
 CONFIG_X86_MINIMUM_CPU_MODEL=4
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_NR_CPUS=128
 CONFIG_SCHED_SMT=y
 CONFIG_SCHED_MC=y
@@ -2350,7 +2349,9 @@
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_NVRAM=m
-CONFIG_RTC=y
+# CONFIG_RTC is not set
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_DTLK=m
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
@@ -2959,8 +2960,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/i386/default new/config/i386/default
--- old/config/i386/default     2007-08-31 10:07:01.000000000 +0200
+++ new/config/i386/default     2007-09-07 07:09:20.000000000 +0200
@@ -177,7 +177,6 @@
 CONFIG_X86_INTEL_USERCOPY=y
 CONFIG_X86_MINIMUM_CPU_MODEL=4
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_NR_CPUS=32
 CONFIG_SCHED_SMT=y
 CONFIG_SCHED_MC=y
@@ -2333,7 +2332,9 @@
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_NVRAM=m
-CONFIG_RTC=y
+# CONFIG_RTC is not set
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_DTLK=m
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
@@ -2958,8 +2959,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/i386/rt new/config/i386/rt
--- old/config/i386/rt  2007-08-31 10:07:01.000000000 +0200
+++ new/config/i386/rt  2007-09-07 16:14:21.000000000 +0200
@@ -1,5 +1,7 @@
 #
 # Automatically generated make config: don't edit
+# Linux kernel version: 2.6.22.5
+# Fri Sep  7 10:22:11 2007
 #
 CONFIG_X86_32=y
 CONFIG_GENERIC_TIME=y
@@ -179,7 +181,6 @@
 CONFIG_X86_INTEL_USERCOPY=y
 CONFIG_X86_MINIMUM_CPU_MODEL=4
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_NR_CPUS=32
 CONFIG_SCHED_SMT=y
 CONFIG_SCHED_MC=y
@@ -2347,10 +2348,11 @@
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_NVRAM=m
-CONFIG_RTC=y
-# CONFIG_RTC_HISTOGRAM is not set
+# CONFIG_RTC is not set
 CONFIG_BLOCKER=y
 CONFIG_LPPTEST=m
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_DTLK=m
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
@@ -2977,8 +2979,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/i386/rt_debug new/config/i386/rt_debug
--- old/config/i386/rt_debug    2007-08-31 10:07:02.000000000 +0200
+++ new/config/i386/rt_debug    2007-09-07 16:14:21.000000000 +0200
@@ -1,5 +1,7 @@
 #
 # Automatically generated make config: don't edit
+# Linux kernel version: 2.6.22.5
+# Fri Sep  7 10:21:55 2007
 #
 CONFIG_X86_32=y
 CONFIG_GENERIC_TIME=y
@@ -180,7 +182,6 @@
 CONFIG_X86_INTEL_USERCOPY=y
 CONFIG_X86_MINIMUM_CPU_MODEL=4
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_NR_CPUS=128
 CONFIG_SCHED_SMT=y
 CONFIG_SCHED_MC=y
@@ -2365,10 +2366,11 @@
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_NVRAM=m
-CONFIG_RTC=y
-# CONFIG_RTC_HISTOGRAM is not set
+# CONFIG_RTC is not set
 CONFIG_BLOCKER=y
 CONFIG_LPPTEST=m
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_DTLK=m
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
@@ -2979,8 +2981,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/i386/vanilla new/config/i386/vanilla
--- old/config/i386/vanilla     2007-08-31 10:07:02.000000000 +0200
+++ new/config/i386/vanilla     2007-09-07 07:09:20.000000000 +0200
@@ -2314,7 +2314,6 @@
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_NVRAM=m
-CONFIG_RTC=y
 CONFIG_DTLK=m
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
@@ -3871,3 +3870,6 @@
 CONFIG_X86_BIOS_REBOOT=y
 CONFIG_X86_TRAMPOLINE=y
 CONFIG_KTIME_SCALAR=y
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
+# CONFIG_RTC is not set
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/i386/xen new/config/i386/xen
--- old/config/i386/xen 2007-08-31 10:07:02.000000000 +0200
+++ new/config/i386/xen 2007-09-07 07:09:20.000000000 +0200
@@ -2102,7 +2102,9 @@
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_NVRAM=m
-CONFIG_RTC=y
+# CONFIG_RTC is not set
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
 CONFIG_SONYPI=m
@@ -2712,8 +2714,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/i386/xenpae new/config/i386/xenpae
--- old/config/i386/xenpae      2007-08-31 10:07:03.000000000 +0200
+++ new/config/i386/xenpae      2007-09-07 07:09:20.000000000 +0200
@@ -2105,7 +2105,9 @@
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_NVRAM=m
-CONFIG_RTC=y
+# CONFIG_RTC is not set
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
 CONFIG_SONYPI=m
@@ -2715,8 +2717,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/x86_64/debug new/config/x86_64/debug
--- old/config/x86_64/debug     2007-08-31 10:07:11.000000000 +0200
+++ new/config/x86_64/debug     2007-09-07 07:09:20.000000000 +0200
@@ -176,7 +176,6 @@
 CONFIG_HOTPLUG_CPU=y
 CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_IOMMU=y
 CONFIG_CALGARY_IOMMU=y
 CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
@@ -2069,7 +2068,9 @@
 CONFIG_HW_RANDOM_AMD=m
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_NVRAM=y
-CONFIG_RTC=y
+# CONFIG_RTC is not set
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
 CONFIG_AGP=y
@@ -2662,8 +2663,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/x86_64/default new/config/x86_64/default
--- old/config/x86_64/default   2007-08-31 10:07:11.000000000 +0200
+++ new/config/x86_64/default   2007-09-07 07:09:20.000000000 +0200
@@ -176,7 +176,6 @@
 CONFIG_HOTPLUG_CPU=y
 CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_IOMMU=y
 CONFIG_CALGARY_IOMMU=y
 CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
@@ -2077,7 +2076,9 @@
 CONFIG_HW_RANDOM_AMD=m
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_NVRAM=y
-CONFIG_RTC=y
+# CONFIG_RTC is not set
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
 CONFIG_AGP=y
@@ -2670,8 +2671,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/x86_64/rt new/config/x86_64/rt
--- old/config/x86_64/rt        2007-08-31 10:07:11.000000000 +0200
+++ new/config/x86_64/rt        2007-09-07 16:14:21.000000000 +0200
@@ -1,5 +1,7 @@
 #
 # Automatically generated make config: don't edit
+# Linux kernel version: 2.6.22.5
+# Fri Sep  7 10:22:39 2007
 #
 CONFIG_X86_64=y
 CONFIG_64BIT=y
@@ -190,7 +192,6 @@
 CONFIG_HOTPLUG_CPU=y
 CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_IOMMU=y
 CONFIG_CALGARY_IOMMU=y
 CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
@@ -2093,10 +2094,11 @@
 CONFIG_HW_RANDOM_AMD=m
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_NVRAM=y
-CONFIG_RTC=y
-# CONFIG_RTC_HISTOGRAM is not set
+# CONFIG_RTC is not set
 CONFIG_BLOCKER=y
 CONFIG_LPPTEST=m
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
 CONFIG_AGP=y
@@ -2689,8 +2691,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/x86_64/rt_debug new/config/x86_64/rt_debug
--- old/config/x86_64/rt_debug  2007-08-31 10:07:12.000000000 +0200
+++ new/config/x86_64/rt_debug  2007-09-07 16:14:21.000000000 +0200
@@ -1,5 +1,7 @@
 #
 # Automatically generated make config: don't edit
+# Linux kernel version: 2.6.22.5
+# Fri Sep  7 10:22:52 2007
 #
 CONFIG_X86_64=y
 CONFIG_64BIT=y
@@ -191,7 +193,6 @@
 CONFIG_HOTPLUG_CPU=y
 CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
 CONFIG_HPET_TIMER=y
-CONFIG_HPET_EMULATE_RTC=y
 CONFIG_IOMMU=y
 CONFIG_CALGARY_IOMMU=y
 CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
@@ -2095,10 +2096,11 @@
 CONFIG_HW_RANDOM_AMD=m
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_NVRAM=y
-CONFIG_RTC=y
-# CONFIG_RTC_HISTOGRAM is not set
+# CONFIG_RTC is not set
 CONFIG_BLOCKER=y
 CONFIG_LPPTEST=m
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
 CONFIG_AGP=y
@@ -2693,8 +2695,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/x86_64/vanilla new/config/x86_64/vanilla
--- old/config/x86_64/vanilla   2007-08-31 10:07:13.000000000 +0200
+++ new/config/x86_64/vanilla   2007-09-07 07:09:20.000000000 +0200
@@ -2055,7 +2055,6 @@
 CONFIG_HW_RANDOM_AMD=m
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_NVRAM=y
-CONFIG_RTC=y
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
 CONFIG_AGP=y
@@ -3517,3 +3516,6 @@
 CONFIG_HAS_IOMEM=y
 CONFIG_HAS_IOPORT=y
 CONFIG_HAS_DMA=y
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
+# CONFIG_RTC is not set
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/config/x86_64/xen new/config/x86_64/xen
--- old/config/x86_64/xen       2007-08-31 10:07:13.000000000 +0200
+++ new/config/x86_64/xen       2007-09-07 07:09:20.000000000 +0200
@@ -2003,7 +2003,9 @@
 CONFIG_HW_RANDOM_AMD=m
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_NVRAM=y
-CONFIG_RTC=y
+# CONFIG_RTC is not set
+CONFIG_GEN_RTC=m
+CONFIG_GEN_RTC_X=y
 CONFIG_R3964=m
 CONFIG_APPLICOM=m
 CONFIG_AGP=m
@@ -2597,8 +2599,6 @@
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
-CONFIG_SND_RTCTIMER=m
-CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
 CONFIG_SND_DYNAMIC_MINORS=y
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y









++++++ kabi.tar.bz2 ++++++






++++++ needed_space_in_mb ++++++
--- kernel-source/needed_space_in_mb    2007-09-05 23:20:14.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/needed_space_in_mb       2007-09-07 19:56:37.000000000 +0200
@@ -1 +1 @@
-6000
+6144

++++++ novell-kmp.tar.bz2 ++++++

++++++ patches.apparmor.tar.bz2 ++++++

++++++ patches.arch.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/ppc-suse-spe-logo_logo-extern-in-header.diff new/patches.arch/ppc-suse-spe-logo_logo-extern-in-header.diff
--- old/patches.arch/ppc-suse-spe-logo_logo-extern-in-header.diff       1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/ppc-suse-spe-logo_logo-extern-in-header.diff       2007-06-19 23:28:46.000000000 +0200
@@ -0,0 +1,59 @@
+  caused by patches.arch/ppc-ps3tree-spe-logo_logo-extern-in-header.diff
+
+  CC      drivers/video/logo/logo_linux_clut224.o
+  drivers/video/logo/logo_linux_clut224.c:548: error: logo_linux_clut224_clut causes a section type conflict
+  drivers/video/logo/logo_linux_clut224.c:548: error: logo_linux_clut224_clut causes a section type conflict
+  drivers/video/logo/logo_linux_clut224.c:11: error: logo_linux_clut224_data causes a section type conflict
+  drivers/video/logo/logo_linux_clut224.c:11: error: logo_linux_clut224_data causes a section type conflict
+
+---
+ include/linux/linux_logo.h |   26 +++++++++++++-------------
+ scripts/pnmtologo.c        |    2 +-
+ 2 files changed, 14 insertions(+), 14 deletions(-)
+
+--- a/include/linux/linux_logo.h
++++ b/include/linux/linux_logo.h
+@@ -32,19 +32,19 @@ struct linux_logo {
+       const unsigned char *data;
+ };

+-extern const struct linux_logo logo_linux_mono;
+-extern const struct linux_logo logo_linux_vga16;
+-extern const struct linux_logo logo_linux_clut224;
+-extern const struct linux_logo logo_dec_clut224;
+-extern const struct linux_logo logo_mac_clut224;
+-extern const struct linux_logo logo_parisc_clut224;
+-extern const struct linux_logo logo_sgi_clut224;
+-extern const struct linux_logo logo_sun_clut224;
+-extern const struct linux_logo logo_superh_mono;
+-extern const struct linux_logo logo_superh_vga16;
+-extern const struct linux_logo logo_superh_clut224;
+-extern const struct linux_logo logo_m32r_clut224;
+-extern const struct linux_logo logo_spe_clut224;
++extern struct linux_logo logo_linux_mono;
++extern struct linux_logo logo_linux_vga16;
++extern struct linux_logo logo_linux_clut224;
++extern struct linux_logo logo_dec_clut224;
++extern struct linux_logo logo_mac_clut224;
++extern struct linux_logo logo_parisc_clut224;
++extern struct linux_logo logo_sgi_clut224;
++extern struct linux_logo logo_sun_clut224;
++extern struct linux_logo logo_superh_mono;
++extern struct linux_logo logo_superh_vga16;
++extern struct linux_logo logo_superh_clut224;
++extern struct linux_logo logo_m32r_clut224;
++extern struct linux_logo logo_spe_clut224;

+ extern const struct linux_logo *fb_find_logo(int depth);
+ #if defined(CONFIG_LOGO) && defined(CONFIG_FB)
+--- a/scripts/pnmtologo.c
++++ b/scripts/pnmtologo.c
+@@ -244,7 +244,7 @@ static void write_header(void)
+ static void write_footer(void)
+ {
+     fputs("\n};\n\n", out);
+-    fprintf(out, "const struct linux_logo %s __initdata = {\n", logoname);
++    fprintf(out, "struct linux_logo %s __initdata = {\n", logoname);
+     fprintf(out, "    .type\t= %s,\n", logo_types[logo_type]);
+     fprintf(out, "    .width\t= %d,\n", logo_width);
+     fprintf(out, "    .height\t= %d,\n", logo_height);

++++++ patches.drivers.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-add-broken-HPA-horkages new/patches.drivers/libata-add-broken-HPA-horkages
--- old/patches.drivers/libata-add-broken-HPA-horkages  1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-add-broken-HPA-horkages  2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,31 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] libata: add devices to BROKEN HPA list
+References: 308502
+Mainline: 2.6.23
+
+More devices which puke on READ_NATIVE_MAX.
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/libata-core.c |    7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -3904,9 +3904,12 @@ static const struct ata_blacklist_entry 
+       { "SAMSUNG HD401LJ",  "ZZ100-15",   ATA_HORKAGE_NONCQ, },
+       { "ST3160812AS",      "3.ADJ",      ATA_HORKAGE_NONCQ, },
+       { "ST980813AS",               "3.ADB",      ATA_HORKAGE_NONCQ, },
+-      { "HDS724040KLSA80",  "KFAOA20N",   ATA_HORKAGE_BROKEN_HPA, },

+-      /* Devices with NCQ limits */
++      /* devices which puke on READ_NATIVE_MAX */
++      { "HDS724040KLSA80",  "KFAOA20N",   ATA_HORKAGE_BROKEN_HPA, },
++      { "WDC WD3200JD-00KLB0", "WD-WCAMR1130137", ATA_HORKAGE_BROKEN_HPA },
++      { "WDC WD2500JD-00HBB0", "WD-WMAL71490727", ATA_HORKAGE_BROKEN_HPA },
++      { "MAXTOR 6L080L4",   "A93.0500",   ATA_HORKAGE_BROKEN_HPA },

+       /* End Marker */
+       { }
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-add-NCQ-spurious-completion-horkages new/patches.drivers/libata-add-NCQ-spurious-completion-horkages
--- old/patches.drivers/libata-add-NCQ-spurious-completion-horkages     1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-add-NCQ-spurious-completion-horkages     2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,26 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] libata: add devices to NCQ spurious completion horkage
+References: 308500
+Mainline: 2.6.23
+
+More devices which do NCQ spurious completions.
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/libata-core.c |    3 +++
+ 1 file changed, 3 insertions(+)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -3901,6 +3901,9 @@ static const struct ata_blacklist_entry 
+       { "WDC WD740ADFD-00NLR1", NULL,               ATA_HORKAGE_NONCQ, },
+       { "FUJITSU MHV2080BH",        "00840028",   ATA_HORKAGE_NONCQ, },
+       { "ST9160821AS",      "3.CLF",      ATA_HORKAGE_NONCQ, },
++      { "SAMSUNG HD401LJ",  "ZZ100-15",   ATA_HORKAGE_NONCQ, },
++      { "ST3160812AS",      "3.ADJ",      ATA_HORKAGE_NONCQ, },
++      { "ST980813AS",               "3.ADB",      ATA_HORKAGE_NONCQ, },
+       { "HDS724040KLSA80",  "KFAOA20N",   ATA_HORKAGE_BROKEN_HPA, },

+       /* Devices with NCQ limits */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-add-pata_dma-kernel-parameter new/patches.drivers/libata-add-pata_dma-kernel-parameter
--- old/patches.drivers/libata-add-pata_dma-kernel-parameter    1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-add-pata_dma-kernel-parameter    2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,92 @@
+From:  Alan Cox <alan@xxxxxxxxxxxxxxxxxxx>
+Subject: [PATCH] libata: Add a drivers/ide style  DMA disable
+References: 229260 272786
+Mainline: pending
+
+This is useful when debugging, handling problem systems, or for
+distributions just to get the system installed so it can be sorted
+out later.
+
+This is a bit smarter than the old IDE one and lets you do
+
+libata.pata_dma=0              Disable all PATA DMA like old IDE
+libata.pata_dma=1              Disk DMA only
+libata.pata_dma=2              ATAPI DMA only
+libata.pata_dma=4              CF DMA only
+
+(or combinations thereof - 0,1,3 being the useful ones I suspect)
+
+(I've split CF as it seems to be a seperate case of pain and suffering
+different to the others and caused by assorted PIO wired adapters etc)
+
+SATA is not affected - for one its not clear it makes sense to disable
+DMA for SATA if even always possible, for two we've seen no failure 
+evidence to justify needing to support this kind of hammer on SATA.
+
+Signed-off-by: Alan Cox <alan@xxxxxxxxxx>
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/libata-core.c |   18 +++++++++++++++++-
+ include/linux/libata.h    |    6 ++++++
+ 2 files changed, 23 insertions(+), 1 deletion(-)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -98,6 +98,10 @@ static int ata_ignore_hpa = 1;
+ module_param_named(ignore_hpa, ata_ignore_hpa, int, 0644);
+ MODULE_PARM_DESC(ignore_hpa, "Ignore HPA limit (0=keep BIOS limits, 1=ignore limits, using full disk)");

++static int ata_pata_dma = ATA_DMA_MASK_ATA|ATA_DMA_MASK_ATAPI|ATA_DMA_MASK_CFA;
++module_param_named(pata_dma, ata_pata_dma, int, 0644);
++MODULE_PARM_DESC(pata_dma, "Use DMA on PATA devices");
++
+ static int ata_probe_timeout = ATA_TMOUT_INTERNAL / HZ;
+ module_param(ata_probe_timeout, int, 0444);
+ MODULE_PARM_DESC(ata_probe_timeout, "Set ATA probing timeout (seconds)");
+@@ -2834,14 +2838,26 @@ int ata_do_set_mode(struct ata_link *lin
+       /* step 1: calculate xfer_mask */
+       ata_link_for_each_dev(dev, link) {
+               unsigned int pio_mask, dma_mask;
++              unsigned int mode_mask;

+               if (!ata_dev_enabled(dev))
+                       continue;

++              mode_mask = ATA_DMA_MASK_ATA;
++              if (dev->class == ATA_DEV_ATAPI)
++                      mode_mask = ATA_DMA_MASK_ATAPI;
++              else if (ata_id_is_cfa(dev->id))
++                      mode_mask = ATA_DMA_MASK_CFA;
++
+               ata_dev_xfermask(dev);

+               pio_mask = ata_pack_xfermask(dev->pio_mask, 0, 0);
+-              dma_mask = ata_pack_xfermask(0, dev->mwdma_mask, dev->udma_mask);
++
++              if ((ata_pata_dma & mode_mask) || ap->cbl == ATA_CBL_SATA)
++                      dma_mask = ata_pack_xfermask(0, dev->mwdma_mask, dev->udma_mask);
++              else
++                      dma_mask = 0;
++
+               dev->pio_mode = ata_xfer_mask2mode(pio_mask);
+               dev->dma_mode = ata_xfer_mask2mode(dma_mask);

+Index: linux-2.6.22/include/linux/libata.h
+===================================================================
+--- linux-2.6.22.orig/include/linux/libata.h
++++ linux-2.6.22/include/linux/libata.h
+@@ -327,6 +327,12 @@ enum {
+       ATA_HORKAGE_MAX_SEC_128 = (1 << 3),       /* Limit max sects to 128 */
+       ATA_HORKAGE_SKIP_PM     = (1 << 4),       /* Skip PM operations */
+       ATA_HORKAGE_BROKEN_HPA  = (1 << 5),       /* Broken HPA */
++
++      /* DMA mask for user DMA control: User visible values do not
++         renumber */
++      ATA_DMA_MASK_ATA        = (1 << 0),       /* DMA on ATA Disk */
++      ATA_DMA_MASK_ATAPI      = (1 << 1),       /* DMA on ATAPI */
++      ATA_DMA_MASK_CFA        = (1 << 2),       /* DMA on CF Card */
+ };

+ enum hsm_task_states {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-add-pci-ids-for-intel-tolapi new/patches.drivers/libata-add-pci-ids-for-intel-tolapi
--- old/patches.drivers/libata-add-pci-ids-for-intel-tolapi     1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-add-pci-ids-for-intel-tolapi     2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,91 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] libata: add PCI IDs for intel tolapai
+References: 308512
+Mainline: 2.6.23
+
+Original patches are from Jason Gaston <jason.d.gaston@xxxxxxxxx>.
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/ahci.c     |    2 ++
+ drivers/ata/ata_piix.c |   27 +++++++++++++++++++++++++++
+ 2 files changed, 29 insertions(+)
+
+Index: linux-2.6.22/drivers/ata/ahci.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/ahci.c
++++ linux-2.6.22/drivers/ata/ahci.c
+@@ -442,6 +442,8 @@ static const struct pci_device_id ahci_p
+       { PCI_VDEVICE(INTEL, 0x292f), board_ahci_pi }, /* ICH9M */
+       { PCI_VDEVICE(INTEL, 0x294d), board_ahci_pi }, /* ICH9 */
+       { PCI_VDEVICE(INTEL, 0x294e), board_ahci_pi }, /* ICH9M */
++      { PCI_VDEVICE(INTEL, 0x502a), board_ahci_pi }, /* Tolapai */
++      { PCI_VDEVICE(INTEL, 0x502b), board_ahci_pi }, /* Tolapai */

+       /* JMicron 360/1/3/5/6, match class to avoid IDE function */
+       { PCI_VENDOR_ID_JMICRON, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
+Index: linux-2.6.22/drivers/ata/ata_piix.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/ata_piix.c
++++ linux-2.6.22/drivers/ata/ata_piix.c
+@@ -131,6 +131,7 @@ enum {
+       ich8_sata_ahci          = 9,
+       piix_pata_mwdma         = 10,   /* PIIX3 MWDMA only */
+       piix_pata_vmw           = 11,   /* PIIX4 for VMware */
++      tolapai_sata_ahci       = 12,

+       /* constants for mapping table */
+       P0                      = 0,  /* port 0 */
+@@ -257,6 +258,8 @@ static const struct pci_device_id piix_p
+       { 0x8086, 0x292d, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_ahci },
+       /* SATA Controller IDE (ICH9M) */
+       { 0x8086, 0x292e, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ich8_sata_ahci },
++      /* SATA Controller IDE (Tolapai) */
++      { 0x8086, 0x5028, PCI_ANY_ID, PCI_ANY_ID, 0, 0, tolapai_sata_ahci },

+       { }     /* terminate list */
+ };
+@@ -478,12 +481,25 @@ static const struct piix_map_db ich8_map
+       },
+ };

++static const struct piix_map_db tolapai_map_db = {
++      .mask = 0x3,
++      .port_enable = 0x3,
++      .map = {
++              /* PM   PS   SM   SS       MAP */
++              {  P0,  NA,  P1,  NA }, /* 00b */
++              {  RV,  RV,  RV,  RV }, /* 01b */
++              {  RV,  RV,  RV,  RV }, /* 10b */
++              {  RV,  RV,  RV,  RV },
++      },
++};
++
+ static const struct piix_map_db *piix_map_db_table[] = {
+       [ich5_sata]             = &ich5_map_db,
+       [ich6_sata]             = &ich6_map_db,
+       [ich6_sata_ahci]        = &ich6_map_db,
+       [ich6m_sata_ahci]       = &ich6m_map_db,
+       [ich8_sata_ahci]        = &ich8_map_db,
++      [tolapai_sata_ahci]     = &tolapai_map_db,
+ };

+ static struct ata_port_info piix_port_info[] = {
+@@ -607,6 +623,17 @@ static struct ata_port_info piix_port_in
+               .udma_mask      = ATA_UDMA_MASK_40C,
+               .port_ops       = &piix_vmw_ops,
+       },
++
++      /* tolapai_sata_ahci: 12: */
++      {
++              .sht            = &piix_sht,
++              .flags          = PIIX_SATA_FLAGS | PIIX_FLAG_SCR |
++                                PIIX_FLAG_AHCI,
++              .pio_mask       = 0x1f, /* pio0-4 */
++              .mwdma_mask     = 0x07, /* mwdma0-2 */
++              .udma_mask      = ATA_UDMA6,
++              .port_ops       = &piix_sata_ops,
++      },
+ };

+ static struct pci_bits piix_enable_bits[] = {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk new/patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk
--- old/patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk     1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk     2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,74 @@
+From 43a98f05d99205687ddf74089e79a8312c8c5f90 Mon Sep 17 00:00:00 2001
+From: Tejun Heo <htejun@xxxxxxxxx>
+Date: Thu, 23 Aug 2007 10:15:18 +0900
+Subject: [PATCH] ata_piix: implement IOCFG bit18 quirk
+References: 308489
+Mainline: 2.6.23
+
+Some notebooks need bit18 of IOCFG to be cleared for the drive bay to
+work even though the bit is NOOP according to the datasheet.  This
+patch implement IOCFG bit18 quirk and apply it to Clevo M570U.
+
+  http://bugzilla.kernel.org/show_bug.cgi?id=8051
+
+Signed-off-by: Tejun Heo <htejun@xxxxxxxxx>
+Cc: D. Angelis <dangelis@xxxxxxxxxxx>
+Signed-off-by: Jeff Garzik <jeff@xxxxxxxxxx>
+---
+ drivers/ata/ata_piix.c |   36 ++++++++++++++++++++++++++++++++++++
+ 1 file changed, 36 insertions(+)
+
+Index: linux-2.6.22/drivers/ata/ata_piix.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/ata_piix.c
++++ linux-2.6.22/drivers/ata/ata_piix.c
+@@ -1202,6 +1202,39 @@ static void __devinit piix_init_sata_map
+       hpriv->map = map;
+ }

++static void piix_iocfg_bit18_quirk(struct pci_dev *pdev)
++{
++      static struct dmi_system_id sysids[] = {
++              {
++                      /* Clevo M570U sets IOCFG bit 18 if the cdrom
++                       * isn't used to boot the system which
++                       * disables the channel.
++                       */
++                      .ident = "M570U",
++                      .matches = {
++                              DMI_MATCH(DMI_SYS_VENDOR, "Clevo Co."),
++                              DMI_MATCH(DMI_PRODUCT_NAME, "M570U"),
++                      },
++              },
++      };
++      u32 iocfg;
++
++      if (!dmi_check_system(sysids))
++              return;
++
++      /* The datasheet says that bit 18 is NOOP but certain systems
++       * seem to use it to disable a channel.  Clear the bit on the
++       * affected systems.
++       */
++      pci_read_config_dword(pdev, PIIX_IOCFG, &iocfg);
++      if (iocfg & (1 << 18)) {
++              dev_printk(KERN_INFO, &pdev->dev,
++                         "applying IOCFG bit18 quirk\n");
++              iocfg &= ~(1 << 18);
++              pci_write_config_dword(pdev, PIIX_IOCFG, iocfg);
++      }
++}
++
+ /**
+  *    piix_init_one - Register PIIX ATA PCI device with kernel services
+  *    @pdev: PCI device to register
+@@ -1263,6 +1296,9 @@ static int piix_init_one (struct pci_dev
+                             piix_map_db_table[ent->driver_data]);
+       }

++      /* apply IOCFG bit18 quirk */
++      piix_iocfg_bit18_quirk(pdev);
++
+       /* On ICH5, some BIOSen disable the interrupt using the
+        * PCI_COMMAND_INTX_DISABLE bit added in PCI 2.3.
+        * On ICH6, this bit has the same effect, but only when
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops new/patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops
--- old/patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops  1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops  2007-09-07 09:35:10.000000000 +0200
@@ -0,0 +1,256 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] ata_piix: fix suspend for several Toshiba laptops
+References: 308486
+Mainline: 2.6.23
+
+Backport of Toshiba laptop suspend fix.
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/ata_piix.c   |  136 ++++++++++++++++++++++++++++++++++++++++++++++-
+ drivers/pci/pci-driver.c |    2 
+ drivers/pci/pci.c        |    5 +
+ drivers/pci/pci.h        |    1 
+ include/linux/pci.h      |    1 
+ 5 files changed, 139 insertions(+), 6 deletions(-)
+
+Index: linux-2.6.22/drivers/ata/ata_piix.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/ata_piix.c
++++ linux-2.6.22/drivers/ata/ata_piix.c
+@@ -91,6 +91,7 @@
+ #include <linux/device.h>
+ #include <scsi/scsi_host.h>
+ #include <linux/libata.h>
++#include <linux/dmi.h>

+ #define DRV_NAME      "ata_piix"
+ #define DRV_VERSION   "2.11"
+@@ -141,6 +142,9 @@ enum {
+       RV                      = -3, /* reserved */

+       PIIX_AHCI_DEVICE        = 6,
++
++      /* host->flags bits */
++      PIIX_HOST_BROKEN_SUSPEND = (1 << 24),
+ };

+ struct piix_map_db {
+@@ -161,6 +165,10 @@ static void piix_set_dmamode (struct ata
+ static void ich_set_dmamode (struct ata_port *ap, struct ata_device *adev);
+ static int ich_pata_cable_detect(struct ata_port *ap);
+ static u8 piix_vmw_bmdma_status(struct ata_port *ap);
++#ifdef CONFIG_PM
++static int piix_pci_device_suspend(struct pci_dev *pdev, pm_message_t mesg);
++static int piix_pci_device_resume(struct pci_dev *pdev);
++#endif

+ static unsigned int in_module_init = 1;

+@@ -259,8 +267,8 @@ static struct pci_driver piix_pci_driver
+       .probe                  = piix_init_one,
+       .remove                 = ata_pci_remove_one,
+ #ifdef CONFIG_PM
+-      .suspend                = ata_pci_device_suspend,
+-      .resume                 = ata_pci_device_resume,
++      .suspend                = piix_pci_device_suspend,
++      .resume                 = piix_pci_device_resume,
+ #endif
+ };

+@@ -934,6 +942,130 @@ static u8 piix_vmw_bmdma_status(struct a
+       return ata_bmdma_status(ap) & ~ATA_DMA_ERR;
+ }

++#ifdef CONFIG_PM
++static int piix_broken_suspend(void)
++{
++      static struct dmi_system_id sysids[] = {
++              {
++                      .ident = "TECRA M5",
++                      .matches = {
++                              DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
++                              DMI_MATCH(DMI_PRODUCT_NAME, "TECRA M5"),
++                      },
++              },
++              {
++                      .ident = "TECRA M7",
++                      .matches = {
++                              DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
++                              DMI_MATCH(DMI_PRODUCT_NAME, "TECRA M7"),
++                      },
++              },
++              {
++                      .ident = "Satellite U200",
++                      .matches = {
++                              DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
++                              DMI_MATCH(DMI_PRODUCT_NAME, "Satellite U200"),
++                      },
++              },
++              {
++                      .ident = "Satellite U205",
++                      .matches = {
++                              DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
++                              DMI_MATCH(DMI_PRODUCT_NAME, "Satellite U205"),
++                      },
++              },
++              {
++                      .ident = "Portege M500",
++                      .matches = {
++                              DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
++                              DMI_MATCH(DMI_PRODUCT_NAME, "PORTEGE M500"),
++                      },
++              },
++
++              { }     /* terminate list */
++      };
++      static const char *oemstrs[] = {
++              "Tecra M3,",
++      };
++      int i;
++
++      if (dmi_check_system(sysids))
++              return 1;
++
++      for (i = 0; i < ARRAY_SIZE(oemstrs); i++)
++              if (dmi_find_device(DMI_DEV_TYPE_OEM_STRING, oemstrs[i], NULL))
++                      return 1;
++
++      return 0;
++}
++
++static int piix_pci_device_suspend(struct pci_dev *pdev, pm_message_t mesg)
++{
++      struct ata_host *host = dev_get_drvdata(&pdev->dev);
++      unsigned long flags;
++      int rc = 0;
++
++      rc = ata_host_suspend(host, mesg);
++      if (rc)
++              return rc;
++
++      /* Some braindamaged ACPI suspend implementations expect the
++       * controller to be awake on entry; otherwise, it burns cpu
++       * cycles and power trying to do something to the sleeping
++       * beauty.
++       */
++      if (piix_broken_suspend() && mesg.event == PM_EVENT_SUSPEND) {
++              pci_save_state(pdev);
++
++              /* mark its power state as "unknown", since we don't
++               * know if e.g. the BIOS will change its device state
++               * when we suspend.
++               */
++              if (pdev->current_state == PCI_D0)
++                      pdev->current_state = PCI_UNKNOWN;
++
++              /* tell resume that it's waking up from broken suspend */
++              spin_lock_irqsave(&host->lock, flags);
++              host->flags |= PIIX_HOST_BROKEN_SUSPEND;
++              spin_unlock_irqrestore(&host->lock, flags);
++      } else
++              ata_pci_device_do_suspend(pdev, mesg);
++
++      return 0;
++}
++
++static int piix_pci_device_resume(struct pci_dev *pdev)
++{
++      struct ata_host *host = dev_get_drvdata(&pdev->dev);
++      unsigned long flags;
++      int rc;
++
++      if (host->flags & PIIX_HOST_BROKEN_SUSPEND) {
++              spin_lock_irqsave(&host->lock, flags);
++              host->flags &= ~PIIX_HOST_BROKEN_SUSPEND;
++              spin_unlock_irqrestore(&host->lock, flags);
++
++              pci_set_power_state(pdev, PCI_D0);
++              pci_restore_state(pdev);
++
++              /* PCI device wasn't disabled during suspend.  Use
++               * pci_reenable_device() to avoid affecting the enable
++               * count.
++               */
++              rc = pci_reenable_device(pdev);
++              if (rc)
++                      dev_printk(KERN_ERR, &pdev->dev, "failed to enable "
++                                 "device after resume (%d)\n", rc);
++      } else
++              rc = ata_pci_device_do_resume(pdev);
++
++      if (rc == 0)
++              ata_host_resume(host);
++
++      return rc;
++}
++#endif
++
+ #define AHCI_PCI_BAR 5
+ #define AHCI_GLOBAL_CTL 0x04
+ #define AHCI_ENABLE (1 << 31)
+Index: linux-2.6.22/drivers/pci/pci-driver.c
+===================================================================
+--- linux-2.6.22.orig/drivers/pci/pci-driver.c
++++ linux-2.6.22/drivers/pci/pci-driver.c
+@@ -310,7 +310,7 @@ static int pci_default_resume(struct pci
+       /* restore the PCI config space */
+       pci_restore_state(pci_dev);
+       /* if the device was enabled before suspend, reenable */
+-      retval = __pci_reenable_device(pci_dev);
++      retval = pci_reenable_device(pci_dev);
+       /* if the device was busmaster before the suspend, make it busmaster again */
+       if (pci_dev->is_busmaster)
+               pci_set_master(pci_dev);
+Index: linux-2.6.22/drivers/pci/pci.h
+===================================================================
+--- linux-2.6.22.orig/drivers/pci/pci.h
++++ linux-2.6.22/drivers/pci/pci.h
+@@ -1,6 +1,5 @@
+ /* Functions internal to the PCI core code */

+-extern int __must_check __pci_reenable_device(struct pci_dev *);
+ extern int pci_uevent(struct device *dev, char **envp, int num_envp,
+                     char *buffer, int buffer_size);
+ extern int pci_create_sysfs_dev_files(struct pci_dev *pdev);
+Index: linux-2.6.22/include/linux/pci.h
+===================================================================
+--- linux-2.6.22.orig/include/linux/pci.h
++++ linux-2.6.22/include/linux/pci.h
+@@ -531,6 +531,7 @@ static inline int pci_write_config_dword

+ int __must_check pci_enable_device(struct pci_dev *dev);
+ int __must_check pci_enable_device_bars(struct pci_dev *dev, int mask);
++int __must_check pci_reenable_device(struct pci_dev *);
+ int __must_check pcim_enable_device(struct pci_dev *pdev);
+ void pcim_pin_device(struct pci_dev *pdev);

+Index: linux-2.6.22/drivers/pci/pci.c
+===================================================================
+--- linux-2.6.22.orig/drivers/pci/pci.c
++++ linux-2.6.22/drivers/pci/pci.c
+@@ -695,14 +695,14 @@ static int do_pci_enable_device(struct p
+ }

+ /**
+- * __pci_reenable_device - Resume abandoned device
++ * pci_reenable_device - Resume abandoned device
+  * @dev: PCI device to be resumed
+  *
+  *  Note this function is a backend of pci_default_resume and is not supposed
+  *  to be called by normal code, write proper resume handler and use it instead.
+  */
+ int
+-__pci_reenable_device(struct pci_dev *dev)
++pci_reenable_device(struct pci_dev *dev)
+ {
+       if (atomic_read(&dev->enable_cnt))
+               return do_pci_enable_device(dev, (1 << PCI_NUM_RESOURCES) - 1);
+@@ -1427,6 +1427,7 @@ early_param("pci", pci_setup);
+ device_initcall(pci_init);

+ EXPORT_SYMBOL_GPL(pci_restore_bars);
++EXPORT_SYMBOL(pci_reenable_device);
+ EXPORT_SYMBOL(pci_enable_device_bars);
+ EXPORT_SYMBOL(pci_enable_device);
+ EXPORT_SYMBOL(pcim_enable_device);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-atapi-passthru16 new/patches.drivers/libata-atapi-passthru16
--- old/patches.drivers/libata-atapi-passthru16 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-atapi-passthru16 2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,120 @@
+From b3a95225c18faee3f82c9927a932756b8dc39ee2 Mon Sep 17 00:00:00 2001
+From: Mark Lord <liml@xxxxxx>
+Date: Wed, 8 Aug 2007 01:08:45 +0900
+Subject: [PATCH] libata: add support for ATA_16 on ATAPI
+References: 308482
+Mainline: 2.6.24
+
+Add support for issuing ATA_16 passthru commands to ATAPI devices
+managed by libata.  It requires the previous CDB length fix patch.
+
+A boot/module parameter, "atapi_passthru16=0" can be used to globally
+disable this feature, if ever desired.
+
+tj: restructured __ata_scsi_queuecmd() according to Jeff's suggestion.
+
+Signed-off-by: Mark Lord <liml@xxxxxx>
+Signed-off-by: Tejun Heo <htejun@xxxxxxxxx>
+Signed-off-by: Jeff Garzik <jeff@xxxxxxxxxx>
+---
+ drivers/ata/libata-core.c |    4 +++
+ drivers/ata/libata-scsi.c |   52 +++++++++++++++++++++++++++++++---------------
+ drivers/ata/libata.h      |    1 
+ 3 files changed, 41 insertions(+), 16 deletions(-)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -86,6 +86,10 @@ int atapi_dmadir = 0;
+ module_param(atapi_dmadir, int, 0444);
+ MODULE_PARM_DESC(atapi_dmadir, "Enable ATAPI DMADIR bridge support (0=off, 1=on)");

++int atapi_passthru16 = 1;
++module_param(atapi_passthru16, int, 0444);
++MODULE_PARM_DESC(atapi_passthru16, "Enable ATA_16 passthru for ATAPI devices; on by default (0=off, 1=on)");
++
+ int libata_fua = 0;
+ module_param_named(fua, libata_fua, int, 0444);
+ MODULE_PARM_DESC(fua, "FUA support (0=off, 1=on)");
+Index: linux-2.6.22/drivers/ata/libata-scsi.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-scsi.c
++++ linux-2.6.22/drivers/ata/libata-scsi.c
+@@ -2751,28 +2751,48 @@ static inline int __ata_scsi_queuecmd(st
+                                     void (*done)(struct scsi_cmnd *),
+                                     struct ata_device *dev)
+ {
++      u8 scsi_op = scmd->cmnd[0];
++      ata_xlat_func_t xlat_func;
+       int rc = 0;

+-      if (unlikely(!scmd->cmd_len || scmd->cmd_len > dev->cdb_len)) {
+-              DPRINTK("bad CDB len=%u, max=%u\n",
+-                      scmd->cmd_len, dev->cdb_len);
+-              scmd->result = DID_ERROR << 16;
+-              done(scmd);
+-              return 0;
+-      }
+-
+       if (dev->class == ATA_DEV_ATA) {
+-              ata_xlat_func_t xlat_func = ata_get_xlat_func(dev,
+-                                                            scmd->cmnd[0]);
++              if (unlikely(!scmd->cmd_len || scmd->cmd_len > dev->cdb_len))
++                      goto bad_cdb_len;

+-              if (xlat_func)
+-                      rc = ata_scsi_translate(dev, scmd, done, xlat_func);
+-              else
+-                      ata_scsi_simulate(dev, scmd, done);
+-      } else
+-              rc = ata_scsi_translate(dev, scmd, done, atapi_xlat);
++              xlat_func = ata_get_xlat_func(dev, scsi_op);
++      } else {
++              if (unlikely(!scmd->cmd_len))
++                      goto bad_cdb_len;
++
++              xlat_func = NULL;
++              if (likely((scsi_op != ATA_16) || !atapi_passthru16)) {
++                      /* relay SCSI command to ATAPI device */
++                      if (unlikely(scmd->cmd_len > dev->cdb_len))
++                              goto bad_cdb_len;
++
++                      xlat_func = atapi_xlat;
++              } else {
++                      /* ATA_16 passthru, treat as an ATA command */
++                      if (unlikely(scmd->cmd_len > 16))
++                              goto bad_cdb_len;
++
++                      xlat_func = ata_get_xlat_func(dev, scsi_op);
++              }
++      }
++
++      if (xlat_func)
++              rc = ata_scsi_translate(dev, scmd, done, xlat_func);
++      else
++              ata_scsi_simulate(dev, scmd, done);

+       return rc;
++
++ bad_cdb_len:
++      DPRINTK("bad CDB len=%u, scsi_op=0x%02x, max=%u\n",
++              scmd->cmd_len, scsi_op, dev->cdb_len);
++      scmd->result = DID_ERROR << 16;
++      done(scmd);
++      return 0;
+ }

+ /**
+Index: linux-2.6.22/drivers/ata/libata.h
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata.h
++++ linux-2.6.22/drivers/ata/libata.h
+@@ -56,6 +56,7 @@ extern unsigned int ata_print_id;
+ extern struct workqueue_struct *ata_aux_wq;
+ extern int atapi_enabled;
+ extern int atapi_dmadir;
++extern int atapi_passthru16;
+ extern int libata_fua;
+ extern int libata_noacpi;
+ extern struct ata_queued_cmd *ata_qc_new_init(struct ata_device *dev);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-clear-horkage-on-ata_dev_init new/patches.drivers/libata-clear-horkage-on-ata_dev_init
--- old/patches.drivers/libata-clear-horkage-on-ata_dev_init    1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-clear-horkage-on-ata_dev_init    2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,25 @@
+From: Tejun Heo <htejun@xxxxxxxxx>
+Subject: [PATCH]: libata clear horkage on ata_dev_init()
+References: 308490
+Mainline: pending for 2.6.23
+
+dev->horkage should be cleared over device hotunplug/plug.  Clear it
+in ata_dev_init().
+
+Signed-off-by: Tejun Heo <htejun@xxxxxxxxx>
+---
+ drivers/ata/libata-core.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -6172,6 +6172,7 @@ void ata_dev_init(struct ata_device *dev
+        */
+       spin_lock_irqsave(ap->lock, flags);
+       dev->flags &= ~ATA_DFLAG_INIT_MASK;
++      dev->horkage = 0;
+       spin_unlock_irqrestore(ap->lock, flags);

+       memset((void *)dev + ATA_DEVICE_CLEAR_OFFSET, 0,
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-fix-n_sectors-handling-during-revalidation new/patches.drivers/libata-fix-n_sectors-handling-during-revalidation
--- old/patches.drivers/libata-fix-n_sectors-handling-during-revalidation       1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-fix-n_sectors-handling-during-revalidation       2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,58 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] libata: fix n_sectors handling during revalidation
+References: 308493
+Mainline: 2.6.23
+
+n_sectors handling was wrong during revalidation, fix it.  This patch
+is combined patch of the following two commits.
+
+  commit 8270bec40075eec9df8778c1d5da36ef0e535176
+  Author: Tejun Heo <htejun@xxxxxxxxx>
+  Date:   Thu Aug 16 03:02:22 2007 +0900
+
+      libata: fix n_sectors failure handling during revalidation
+
+      If revalidation fails because device has different n_sectors after
+      configuration the original n_sectors should be restored before failing
+      revalidation.  Without this fix, n_sectors difference will incorrectly
+      and silently pass revalidation when revalidation is retried.
+
+  commit b54eebd673861136291b97e409a0f248b96e74ae
+  Author: Tejun Heo <htejun@xxxxxxxxx>
+  Date:   Fri Aug 17 18:46:51 2007 +0900
+
+      libata: don't check n_sectors during revalidation if zero
+
+      If the initial configuration fails early, n_sectors is left at zero.
+      Checking against it during revalidation makes retried configuration
+      fail due to n_sectors mismatch.  Ignore zero n_sectors during
+      revalidation.
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/libata-core.c |    7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -3777,12 +3777,17 @@ int ata_dev_revalidate(struct ata_device
+               goto fail;

+       /* verify n_sectors hasn't changed */
+-      if (dev->class == ATA_DEV_ATA && dev->n_sectors != n_sectors) {
++      if (dev->class == ATA_DEV_ATA && n_sectors &&
++          dev->n_sectors != n_sectors) {
+               ata_dev_printk(dev, KERN_INFO, "n_sectors mismatch "
+                              "%llu != %llu\n",
+                              (unsigned long long)n_sectors,
+                              (unsigned long long)dev->n_sectors);
+               rc = -ENODEV;
++
++              /* restore original n_sectors */
++              dev->n_sectors = n_sectors;
++
+               goto fail;
+       }

diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-improve-diagnostic-failure-handling new/patches.drivers/libata-improve-diagnostic-failure-handling
--- old/patches.drivers/libata-improve-diagnostic-failure-handling      1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-improve-diagnostic-failure-handling      2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,177 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] libata: improve diagnostic failure handling
+References: 308499
+Mainline: 2.6.23
+
+Certain device which reports diagnostic failure also reports invalid
+device signature.  Assume ATA_DEV_ATA on diagnostic failure if reset
+indicates device presence.
+
+This is fix for bugzilla bug 8784.
+
+  http://bugzilla.kernel.org/show_bug.cgi?id=8784
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/libata-core.c |   48 ++++++++++++++++++++++++++++------------------
+ drivers/ata/pata_scc.c    |    6 +++--
+ drivers/ata/sata_mv.c     |    2 -
+ include/linux/libata.h    |    3 +-
+ 4 files changed, 37 insertions(+), 22 deletions(-)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -724,8 +724,8 @@ unsigned int ata_dev_classify(const stru

+ /**
+  *    ata_dev_try_classify - Parse returned ATA device signature
+- *    @ap: ATA channel to examine
+- *    @device: Device to examine (starting at zero)
++ *    @dev: ATA device to classify (starting at zero)
++ *    @present: device seems present
+  *    @r_err: Value of error register on completion
+  *
+  *    After an event -- SRST, E.D.D., or SATA COMRESET -- occurs,
+@@ -743,15 +743,15 @@ unsigned int ata_dev_classify(const stru
+  *    RETURNS:
+  *    Device type - %ATA_DEV_ATA, %ATA_DEV_ATAPI or %ATA_DEV_NONE.
+  */
+-
+-unsigned int
+-ata_dev_try_classify(struct ata_port *ap, unsigned int device, u8 *r_err)
++unsigned int ata_dev_try_classify(struct ata_device *dev, int present,
++                                u8 *r_err)
+ {
++      struct ata_port *ap = dev->link->ap;
+       struct ata_taskfile tf;
+       unsigned int class;
+       u8 err;

+-      ap->ops->dev_select(ap, device);
++      ap->ops->dev_select(ap, dev->devno);

+       memset(&tf, 0, sizeof(tf));

+@@ -761,12 +761,12 @@ ata_dev_try_classify(struct ata_port *ap
+               *r_err = err;

+       /* see if device passed diags: if master then continue and warn later */
+-      if (err == 0 && device == 0)
++      if (err == 0 && dev->devno == 0)
+               /* diagnostic fail : do nothing _YET_ */
+-              ap->link.device[device].horkage |= ATA_HORKAGE_DIAGNOSTIC;
++              dev->horkage |= ATA_HORKAGE_DIAGNOSTIC;
+       else if (err == 1)
+               /* do nothing */ ;
+-      else if ((device == 0) && (err == 0x81))
++      else if ((dev->devno == 0) && (err == 0x81))
+               /* do nothing */ ;
+       else
+               return ATA_DEV_NONE;
+@@ -774,10 +774,20 @@ ata_dev_try_classify(struct ata_port *ap
+       /* determine if device is ATA or ATAPI */
+       class = ata_dev_classify(&tf);

+-      if (class == ATA_DEV_UNKNOWN)
+-              return ATA_DEV_NONE;
+-      if ((class == ATA_DEV_ATA) && (ata_chk_status(ap) == 0))
+-              return ATA_DEV_NONE;
++      if (class == ATA_DEV_UNKNOWN) {
++              /* If the device failed diagnostic, it's likely to
++               * have reported incorrect device signature too.
++               * Assume ATA device if the device seems present but
++               * device signature is invalid with diagnostic
++               * failure.
++               */
++              if (present && (dev->horkage & ATA_HORKAGE_DIAGNOSTIC))
++                      class = ATA_DEV_ATA;
++              else
++                      class = ATA_DEV_NONE;
++      } else if ((class == ATA_DEV_ATA) && (ata_chk_status(ap) == 0))
++              class = ATA_DEV_NONE;
++
+       return class;
+ }

+@@ -3228,9 +3238,9 @@ void ata_bus_reset(struct ata_port *ap)
+       /*
+        * determine by signature whether we have ATA or ATAPI devices
+        */
+-      device[0].class = ata_dev_try_classify(ap, 0, &err);
++      device[0].class = ata_dev_try_classify(&device[0], dev0, &err);
+       if ((slave_possible) && (err != 0x81))
+-              device[1].class = ata_dev_try_classify(ap, 1, &err);
++              device[1].class = ata_dev_try_classify(&device[1], dev1, &err);

+       /* is double-select really necessary? */
+       if (device[1].class != ATA_DEV_NONE)
+@@ -3485,9 +3495,11 @@ int ata_std_softreset(struct ata_link *l
+       }

+       /* determine by signature whether we have ATA or ATAPI devices */
+-      classes[0] = ata_dev_try_classify(ap, 0, &err);
++      classes[0] = ata_dev_try_classify(&link->device[0],
++                                        devmask & (1 << 0), &err);
+       if (slave_possible && err != 0x81)
+-              classes[1] = ata_dev_try_classify(ap, 1, &err);
++              classes[1] = ata_dev_try_classify(&link->device[1],
++                                                devmask & (1 << 1), &err);

+  out:
+       DPRINTK("EXIT, classes[0]=%u [1]=%u\n", classes[0], classes[1]);
+@@ -3616,7 +3628,7 @@ int sata_std_hardreset(struct ata_link *

+       ap->ops->dev_select(ap, 0);       /* probably unnecessary */

+-      *class = ata_dev_try_classify(ap, 0, NULL);
++      *class = ata_dev_try_classify(link->device, 1, NULL);

+       DPRINTK("EXIT, class=%u\n", *class);
+       return 0;
+Index: linux-2.6.22/drivers/ata/pata_scc.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/pata_scc.c
++++ linux-2.6.22/drivers/ata/pata_scc.c
+@@ -636,9 +636,11 @@ static int scc_std_softreset (struct ata
+       }

+       /* determine by signature whether we have ATA or ATAPI devices */
+-      classes[0] = ata_dev_try_classify(ap, 0, &err);
++      classes[0] = ata_dev_try_classify(&ap->link.device[0],
++                                        devmask & (1 << 0), &err);
+       if (slave_possible && err != 0x81)
+-              classes[1] = ata_dev_try_classify(ap, 1, &err);
++              classes[1] = ata_dev_try_classify(&ap->link.device[1],
++                                                devmask & (1 << 1), &err);

+  out:
+       DPRINTK("EXIT, classes[0]=%u [1]=%u\n", classes[0], classes[1]);
+Index: linux-2.6.22/drivers/ata/sata_mv.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/sata_mv.c
++++ linux-2.6.22/drivers/ata/sata_mv.c
+@@ -2233,7 +2233,7 @@ comreset_retry:
+        */

+       /* finally, read device signature from TF registers */
+-      *class = ata_dev_try_classify(ap, 0, NULL);
++      *class = ata_dev_try_classify(ap->link.device, 1, NULL);

+       writelfl(0, port_mmio + EDMA_ERR_IRQ_CAUSE_OFS);

+Index: linux-2.6.22/include/linux/libata.h
+===================================================================
+--- linux-2.6.22.orig/include/linux/libata.h
++++ linux-2.6.22/include/linux/libata.h
+@@ -822,7 +822,8 @@ extern void ata_port_queue_task(struct a
+ extern u32 ata_wait_register(void __iomem *reg, u32 mask, u32 val,
+                            unsigned long interval_msec,
+                            unsigned long timeout_msec);
+-extern unsigned int ata_dev_try_classify(struct ata_port *, unsigned int, u8 *);
++extern unsigned int ata_dev_try_classify(struct ata_device *dev, int present,
++                                       u8 *r_err);

+ /*
+  * Default driver ops implementations
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-improve-hpa-failure-handling new/patches.drivers/libata-improve-hpa-failure-handling
--- old/patches.drivers/libata-improve-hpa-failure-handling     1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-improve-hpa-failure-handling     2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,400 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] libata: improve HPA failure handling
+References: 308503 299267
+Mainline: pending for 2.6.24
+
+The current code fails disk detection if HPA fails.  This is bad
+because 1. modern SATA disks are more likely to have broken HPA
+support 2. SUSE is unlocking HPA by default.  libata should disable
+HPA unlocking automatically if device pukes on HPA related commands.
+This is combined patch of patches pending for 2.6.24 (generally
+acked).
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/libata-core.c |  300 ++++++++++++++++++++++++----------------------
+ 1 file changed, 163 insertions(+), 137 deletions(-)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -854,6 +854,21 @@ void ata_id_c_string(const u16 *id, unsi
+       *p = '\0';
+ }

++static u64 ata_id_n_sectors(const u16 *id)
++{
++      if (ata_id_has_lba(id)) {
++              if (ata_id_has_lba48(id))
++                      return ata_id_u64(id, 100);
++              else
++                      return ata_id_u32(id, 60);
++      } else {
++              if (ata_id_current_chs_valid(id))
++                      return ata_id_u32(id, 57);
++              else
++                      return id[1] * id[3] * id[6];
++      }
++}
++
+ static u64 ata_tf_to_lba48(struct ata_taskfile *tf)
+ {
+       u64 sectors = 0;
+@@ -881,129 +896,106 @@ static u64 ata_tf_to_lba(struct ata_task
+ }

+ /**
+- *    ata_read_native_max_address_ext -       LBA48 native max query
+- *    @dev: Device to query
++ *    ata_read_native_max_address - Read native max address
++ *    @dev: target device
++ *    @max_sectors: out parameter for the result native max address
+  *
+- *    Perform an LBA48 size query upon the device in question. Return the
+- *    actual LBA48 size or zero if the command fails.
+- */
+-
+-static u64 ata_read_native_max_address_ext(struct ata_device *dev)
+-{
+-      unsigned int err;
+-      struct ata_taskfile tf;
+-
+-      ata_tf_init(dev, &tf);
+-
+-      tf.command = ATA_CMD_READ_NATIVE_MAX_EXT;
+-      tf.flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48 | ATA_TFLAG_ISADDR;
+-      tf.protocol |= ATA_PROT_NODATA;
+-      tf.device |= 0x40;
+-
+-      err = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0);
+-      if (err)
+-              return 0;
+-
+-      return ata_tf_to_lba48(&tf);
+-}
+-
+-/**
+- *    ata_read_native_max_address     -       LBA28 native max query
+- *    @dev: Device to query
++ *    Perform an LBA48 or LBA28 native size query upon the device in
++ *    question.
+  *
+- *    Performa an LBA28 size query upon the device in question. Return the
+- *    actual LBA28 size or zero if the command fails.
++ *    RETURNS:
++ *    0 on success, -EACCES if command is aborted by the drive.
++ *    -EIO on other errors.
+  */
+-
+-static u64 ata_read_native_max_address(struct ata_device *dev)
++static int ata_read_native_max_address(struct ata_device *dev, u64 *max_sectors)
+ {
+-      unsigned int err;
++      unsigned int err_mask;
+       struct ata_taskfile tf;
++      int lba48 = ata_id_has_lba48(dev->id);

+       ata_tf_init(dev, &tf);

+-      tf.command = ATA_CMD_READ_NATIVE_MAX;
++      /* always clear all address registers */
+       tf.flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_ISADDR;
+-      tf.protocol |= ATA_PROT_NODATA;
+-      tf.device |= 0x40;
+-
+-      err = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0);
+-      if (err)
+-              return 0;
+-
+-      return ata_tf_to_lba(&tf);
+-}
+-
+-/**
+- *    ata_set_native_max_address_ext  -       LBA48 native max set
+- *    @dev: Device to query
+- *    @new_sectors: new max sectors value to set for the device
+- *
+- *    Perform an LBA48 size set max upon the device in question. Return the
+- *    actual LBA48 size or zero if the command fails.
+- */
+-
+-static u64 ata_set_native_max_address_ext(struct ata_device *dev, u64 new_sectors)
+-{
+-      unsigned int err;
+-      struct ata_taskfile tf;
+-
+-      new_sectors--;

+-      ata_tf_init(dev, &tf);
++      if (lba48) {
++              tf.command = ATA_CMD_READ_NATIVE_MAX_EXT;
++              tf.flags |= ATA_TFLAG_LBA48;
++      } else
++              tf.command = ATA_CMD_READ_NATIVE_MAX;

+-      tf.command = ATA_CMD_SET_MAX_EXT;
+-      tf.flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48 | ATA_TFLAG_ISADDR;
+       tf.protocol |= ATA_PROT_NODATA;
+-      tf.device |= 0x40;
+-
+-      tf.lbal = (new_sectors >> 0) & 0xff;
+-      tf.lbam = (new_sectors >> 8) & 0xff;
+-      tf.lbah = (new_sectors >> 16) & 0xff;
++      tf.device |= ATA_LBA;

+-      tf.hob_lbal = (new_sectors >> 24) & 0xff;
+-      tf.hob_lbam = (new_sectors >> 32) & 0xff;
+-      tf.hob_lbah = (new_sectors >> 40) & 0xff;
++      err_mask = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0);
++      if (err_mask) {
++              ata_dev_printk(dev, KERN_WARNING, "failed to read native "
++                             "max address (err_mask=0x%x)\n", err_mask);
++              if (err_mask == AC_ERR_DEV && (tf.feature & ATA_ABORTED))
++                      return -EACCES;
++              return -EIO;
++      }

+-      err = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0);
+-      if (err)
+-              return 0;
++      if (lba48)
++              *max_sectors = ata_tf_to_lba48(&tf);
++      else
++              *max_sectors = ata_tf_to_lba(&tf);

+-      return ata_tf_to_lba48(&tf);
++      return 0;
+ }

+ /**
+- *    ata_set_native_max_address      -       LBA28 native max set
+- *    @dev: Device to query
++ *    ata_set_max_sectors - Set max sectors
++ *    @dev: target device
+  *    @new_sectors: new max sectors value to set for the device
+  *
+- *    Perform an LBA28 size set max upon the device in question. Return the
+- *    actual LBA28 size or zero if the command fails.
++ *    Set max sectors of @dev to @new_sectors.
++ *
++ *    RETURNS:
++ *    0 on success, -EACCES if command is aborted or denied (due to
++ *    previous non-volatile SET_MAX) by the drive.  -EIO on other
++ *    errors.
+  */
+-
+-static u64 ata_set_native_max_address(struct ata_device *dev, u64 new_sectors)
++static int ata_set_max_sectors(struct ata_device *dev, u64 new_sectors)
+ {
+-      unsigned int err;
++      unsigned int err_mask;
+       struct ata_taskfile tf;
++      int lba48 = ata_id_has_lba48(dev->id);

+       new_sectors--;

+       ata_tf_init(dev, &tf);

+-      tf.command = ATA_CMD_SET_MAX;
+       tf.flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_ISADDR;
++
++      if (lba48) {
++              tf.command = ATA_CMD_SET_MAX_EXT;
++              tf.flags |= ATA_TFLAG_LBA48;
++
++              tf.hob_lbal = (new_sectors >> 24) & 0xff;
++              tf.hob_lbam = (new_sectors >> 32) & 0xff;
++              tf.hob_lbah = (new_sectors >> 40) & 0xff;
++      } else
++              tf.command = ATA_CMD_SET_MAX;
++
+       tf.protocol |= ATA_PROT_NODATA;
++      tf.device |= ATA_LBA;

+       tf.lbal = (new_sectors >> 0) & 0xff;
+       tf.lbam = (new_sectors >> 8) & 0xff;
+       tf.lbah = (new_sectors >> 16) & 0xff;
+-      tf.device |= ((new_sectors >> 24) & 0x0f) | 0x40;

+-      err = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0);
+-      if (err)
+-              return 0;
++      err_mask = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0);
++      if (err_mask) {
++              ata_dev_printk(dev, KERN_WARNING, "failed to set "
++                             "max address (err_mask=0x%x)\n", err_mask);
++              if (err_mask == AC_ERR_DEV &&
++                  (tf.feature & (ATA_ABORTED | ATA_IDNF)))
++                      return -EACCES;
++              return -EIO;
++      }

+-      return ata_tf_to_lba(&tf);
++      return 0;
+ }

+ /**
+@@ -1013,60 +1005,93 @@ static u64 ata_set_native_max_address(st
+  *    Read the size of an LBA28 or LBA48 disk with HPA features and resize
+  *    it if required to the full size of the media. The caller must check
+  *    the drive has the HPA feature set enabled.
++ *
++ *    RETURNS:
++ *    0 on success, -errno on failure.
+  */
+-
+-static u64 ata_hpa_resize(struct ata_device *dev)
++static int ata_hpa_resize(struct ata_device *dev)
+ {
+-      u64 sectors = dev->n_sectors;
+-      u64 hpa_sectors;
+-
+-      if (ata_id_has_lba48(dev->id))
+-              hpa_sectors = ata_read_native_max_address_ext(dev);
+-      else
+-              hpa_sectors = ata_read_native_max_address(dev);
++      struct ata_eh_context *ehc = &dev->link->eh_context;
++      int print_info = ehc->i.flags & ATA_EHI_PRINTINFO;
++      u64 sectors = ata_id_n_sectors(dev->id);
++      u64 native_sectors;
++      int rc;

+-      if (hpa_sectors > sectors) {
+-              ata_dev_printk(dev, KERN_INFO,
+-                      "Host Protected Area detected:\n"
+-                      "\tcurrent size: %lld sectors\n"
+-                      "\tnative size: %lld sectors\n",
+-                      (long long)sectors, (long long)hpa_sectors);
+-
+-              if (ata_ignore_hpa) {
+-                      if (ata_id_has_lba48(dev->id))
+-                              hpa_sectors = ata_set_native_max_address_ext(dev, hpa_sectors);
+-                      else
+-                              hpa_sectors = ata_set_native_max_address(dev,
+-                                                              hpa_sectors);
++      /* do we need to do it? */
++      if (dev->class != ATA_DEV_ATA ||
++          !ata_id_has_lba(dev->id) || !ata_id_hpa_enabled(dev->id) ||
++          (dev->horkage & ATA_HORKAGE_BROKEN_HPA))
++              return 0;

+-                      if (hpa_sectors) {
+-                              ata_dev_printk(dev, KERN_INFO, "native size "
+-                                      "increased to %lld sectors\n",
+-                                      (long long)hpa_sectors);
+-                              return hpa_sectors;
+-                      }
++      /* read native max address */
++      rc = ata_read_native_max_address(dev, &native_sectors);
++      if (rc) {
++              /* If HPA isn't going to be unlocked, skip HPA
++               * resizing from the next try.
++               */
++              if (!ata_ignore_hpa) {
++                      ata_dev_printk(dev, KERN_WARNING, "HPA support seems "
++                                     "broken, will skip HPA handling\n");
++                      dev->horkage |= ATA_HORKAGE_BROKEN_HPA;
++
++                      /* we can continue if device aborted the command */
++                      if (rc == -EACCES)
++                              rc = 0;
+               }
+-      } else if (hpa_sectors < sectors)
+-              ata_dev_printk(dev, KERN_WARNING, "%s 1: hpa sectors (%lld) "
+-                             "is smaller than sectors (%lld)\n", __FUNCTION__,
+-                             (long long)hpa_sectors, (long long)sectors);

+-      return sectors;
+-}
++              return rc;
++      }

+-static u64 ata_id_n_sectors(const u16 *id)
+-{
+-      if (ata_id_has_lba(id)) {
+-              if (ata_id_has_lba48(id))
+-                      return ata_id_u64(id, 100);
+-              else
+-                      return ata_id_u32(id, 60);
+-      } else {
+-              if (ata_id_current_chs_valid(id))
+-                      return ata_id_u32(id, 57);
+-              else
+-                      return id[1] * id[3] * id[6];
++      /* nothing to do? */
++      if (native_sectors <= sectors || !ata_ignore_hpa) {
++              if (!print_info || native_sectors == sectors)
++                      return 0;
++
++              if (native_sectors > sectors)
++                      ata_dev_printk(dev, KERN_INFO,
++                              "HPA detected: current %llu, native %llu\n",
++                              (unsigned long long)sectors,
++                              (unsigned long long)native_sectors);
++              else if (native_sectors < sectors)
++                      ata_dev_printk(dev, KERN_WARNING,
++                              "native sectors (%llu) is smaller than "
++                              "sectors (%llu)\n",
++                              (unsigned long long)native_sectors,
++                              (unsigned long long)sectors);
++              return 0;
+       }
++
++      /* let's unlock HPA */
++      rc = ata_set_max_sectors(dev, native_sectors);
++      if (rc == -EACCES) {
++              /* if device aborted the command, skip HPA resizing */
++              ata_dev_printk(dev, KERN_WARNING, "device aborted resize "
++                             "(%llu -> %llu), skipping HPA handling\n",
++                             (unsigned long long)sectors,
++                             (unsigned long long)native_sectors);
++              dev->horkage |= ATA_HORKAGE_BROKEN_HPA;
++              return 0;
++      } else if (rc)
++              return rc;
++
++      /* re-read IDENTIFY data */
++      rc = ata_dev_reread_id(dev, 0);
++      if (rc) {
++              ata_dev_printk(dev, KERN_ERR, "failed to re-read IDENTIFY "
++                             "data after HPA resizing\n");
++              return rc;
++      }
++
++      if (print_info) {
++              u64 new_sectors = ata_id_n_sectors(dev->id);
++              ata_dev_printk(dev, KERN_INFO,
++                      "HPA unlocked: %llu -> %llu, native %llu\n",
++                      (unsigned long long)sectors,
++                      (unsigned long long)new_sectors,
++                      (unsigned long long)native_sectors);
++      }
++
++      return 0;
+ }

+ /**
+@@ -1888,6 +1913,11 @@ int ata_dev_configure(struct ata_device 
+       if (rc)
+               return rc;

++      /* massage HPA, do it early as it might change IDENTIFY data */
++      rc = ata_hpa_resize(dev);
++      if (rc)
++              return rc;
++
+       /* print device capabilities */
+       if (ata_msg_probe(ap))
+               ata_dev_printk(dev, KERN_DEBUG,
+@@ -1955,10 +1985,6 @@ int ata_dev_configure(struct ata_device 
+                                       dev->flags |= ATA_DFLAG_FLUSH_EXT;
+                       }

+-                      if (!(dev->horkage & ATA_HORKAGE_BROKEN_HPA) &&
+-                          ata_id_has_hpa(id) && ata_id_hpa_enabled(dev->id))
+-                              dev->n_sectors = ata_hpa_resize(dev);
+-
+                       /* config NCQ */
+                       ata_dev_config_ncq(dev, ncq_desc, sizeof(ncq_desc));

diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-more-machines-for-short-cable-list new/patches.drivers/libata-more-machines-for-short-cable-list
--- old/patches.drivers/libata-more-machines-for-short-cable-list       1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-more-machines-for-short-cable-list       2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,39 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] libata: more machines for short cable list
+References: 308510
+Mainline: 2.6.23
+
+More machines with short 40-c cable which can do 80-c speed.
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/pata_sis.c |    1 +
+ drivers/ata/pata_via.c |    3 +++
+ 2 files changed, 4 insertions(+)
+
+Index: linux-2.6.22/drivers/ata/pata_sis.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/pata_sis.c
++++ linux-2.6.22/drivers/ata/pata_sis.c
+@@ -53,6 +53,7 @@ struct sis_laptop {
+ static const struct sis_laptop sis_laptop[] = {
+       /* devid, subvendor, subdev */
+       { 0x5513, 0x1043, 0x1107 },     /* ASUS A6K */
++      { 0x5513, 0x1734, 0x105F },     /* FSC Amilo A1630 */
+       /* end marker */
+       { 0, }
+ };
+Index: linux-2.6.22/drivers/ata/pata_via.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/pata_via.c
++++ linux-2.6.22/drivers/ata/pata_via.c
+@@ -144,6 +144,9 @@ static int via_cable_override(struct pci
+       /* Systems by DMI */
+       if (dmi_check_system(cable_dmi_table))
+               return 1;
++      /* Arima W730-K8/Targa Visionary 811/... */
++      if (pdev->subsystem_vendor == 0x161F && pdev->subsystem_device == 0x2032)
++              return 1;
+       return 0;
+ }

diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-pata_it821x-fix-initialization-bug new/patches.drivers/libata-pata_it821x-fix-initialization-bug
--- old/patches.drivers/libata-pata_it821x-fix-initialization-bug       1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-pata_it821x-fix-initialization-bug       2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,31 @@
+From:  Alan Cox <alan@xxxxxxxxxxxxxxxxxxx>
+Subject: [PATCH] pata_it821x: Fix regression/corruptor
+References: 308504
+Mainline: pending for 2.6.23
+
+Whoever did the PCI revision patch slipped up on the it821x, and I didn't
+spot this at the time either. They moved the check for the errata from
+the 0x10 revision to 0x11. Put it back
+
+This one is important for 2.6.23 final as in some cases bad things will
+occur if 0x10 revision boards don't get the fixups.
+
+Signed-off-by: Alan Cox <alan@xxxxxxxxxx>
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/pata_it821x.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: linux-2.6.22/drivers/ata/pata_it821x.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/pata_it821x.c
++++ linux-2.6.22/drivers/ata/pata_it821x.c
+@@ -587,7 +587,7 @@ static int it821x_port_start(struct ata_
+       itdev->last_device = -1;

+       pci_read_config_byte(pdev, PCI_REVISION_ID, &conf);
+-      if (conf == 0x11) {
++      if (conf == 0x10) {
+               itdev->timing10 = 1;
+               /* Need to disable ATAPI DMA for this case */
+               if (!itdev->smart)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-pata_marvell-add-PCI-IDs new/patches.drivers/libata-pata_marvell-add-PCI-IDs
--- old/patches.drivers/libata-pata_marvell-add-PCI-IDs 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-pata_marvell-add-PCI-IDs 2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,26 @@
+From:  Alan Cox <alan@xxxxxxxxxxxxxxxxxxx>
+Subject: [PATCH] pata_marvell: Add more identifiers
+References: 308513
+Mainline: 2.6.23
+
+This replaces the patch which incorrectly removed the 6145
+
+Signed-off-by: Alan Cox <alan@xxxxxxxxxx>
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/pata_marvell.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+Index: linux-2.6.22/drivers/ata/pata_marvell.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/pata_marvell.c
++++ linux-2.6.22/drivers/ata/pata_marvell.c
+@@ -193,6 +193,8 @@ static int marvell_init_one (struct pci_

+ static const struct pci_device_id marvell_pci_tbl[] = {
+       { PCI_DEVICE(0x11AB, 0x6101), },
++      { PCI_DEVICE(0x11AB, 0x6121), },
++      { PCI_DEVICE(0x11AB, 0x6123), },
+       { PCI_DEVICE(0x11AB, 0x6145), },
+       { }     /* terminate list */
+ };
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421 new/patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421
--- old/patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421      1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421      2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,34 @@
+From b4154d4a01c6cc98b97dc239ca4302316c8f98da Mon Sep 17 00:00:00 2001
+From: Ondrej Zary <linux@xxxxxxxxxxxxxxxxxxxx>
+Date: Sat, 1 Sep 2007 00:55:21 +0200
+Subject: [PATCH] Fix sata_via write errors on PATA drive connected to VT6421
+References: 308507
+Mainline: 2.6.23
+
+I think that I've found and fixed the problem. There is a copy/paste bug in
+vt6421_set_dma_mode() function which causes wrong values to be written to
+PATA_UDMA_TIMING register.
+
+This patch fixes a copy/paste bug that breaks DMA modes on VT6421 PATA port.
+
+Signed-off-by: Ondrej Zary <linux@xxxxxxxxxxxxxxxxxxxx>
+Acked-by: Alan Cox <alan@xxxxxxxxxx>
+Signed-off-by: Jeff Garzik <jeff@xxxxxxxxxx>
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/sata_via.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: linux-2.6.22/drivers/ata/sata_via.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/sata_via.c
++++ linux-2.6.22/drivers/ata/sata_via.c
+@@ -372,7 +372,7 @@ static void vt6421_set_dma_mode(struct a
+ {
+       struct pci_dev *pdev = to_pci_dev(ap->host->dev);
+       static const u8 udma_bits[] = { 0xEE, 0xE8, 0xE6, 0xE4, 0xE2, 0xE1, 0xE0, 0xE0 };
+-      pci_write_config_byte(pdev, PATA_UDMA_TIMING, udma_bits[adev->pio_mode - XFER_UDMA_0]);
++      pci_write_config_byte(pdev, PATA_UDMA_TIMING, udma_bits[adev->dma_mode - XFER_UDMA_0]);
+ }

+ static const unsigned int svia_bar_sizes[] = {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-scc-ata_link.patch new/patches.drivers/libata-scc-ata_link.patch
--- old/patches.drivers/libata-scc-ata_link.patch       1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-scc-ata_link.patch       2007-09-04 15:46:17.000000000 +0200
@@ -0,0 +1,15 @@
+---
+ drivers/ata/pata_scc.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/ata/pata_scc.c
++++ b/drivers/ata/pata_scc.c
+@@ -740,7 +740,7 @@ static u8 scc_bmdma_status (struct ata_p
+       void __iomem *mmio = ap->ioaddr.bmdma_addr;
+       u8 host_stat = in_be32(mmio + SCC_DMA_STATUS);
+       u32 int_status = in_be32(mmio + SCC_DMA_INTST);
+-      struct ata_queued_cmd *qc = ata_qc_from_tag(ap, ap->active_tag);
++      struct ata_queued_cmd *qc = ata_qc_from_tag(ap, ap->link.active_tag);
+       static int retry = 0;

+       /* return if IOS_SS is cleared */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.drivers/libata-unlock-hpa-by-default new/patches.drivers/libata-unlock-hpa-by-default
--- old/patches.drivers/libata-unlock-hpa-by-default    1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/libata-unlock-hpa-by-default    2007-09-07 08:08:09.000000000 +0200
@@ -0,0 +1,25 @@
+From: Tejun Heo <teheo@xxxxxxx>
+Subject: [PATCH] libata: unlock HPA by default
+References: 299267
+
+Unlock HPA by default.  This is to stay compatible with the old IDE
+drivers.
+
+Signed-off-by: Tejun Heo <teheo@xxxxxxx>
+---
+ drivers/ata/libata-core.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: linux-2.6.22/drivers/ata/libata-core.c
+===================================================================
+--- linux-2.6.22.orig/drivers/ata/libata-core.c
++++ linux-2.6.22/drivers/ata/libata-core.c
+@@ -90,7 +90,7 @@ int libata_fua = 0;
+ module_param_named(fua, libata_fua, int, 0444);
+ MODULE_PARM_DESC(fua, "FUA support (0=off, 1=on)");

+-static int ata_ignore_hpa = 0;
++static int ata_ignore_hpa = 1;
+ module_param_named(ignore_hpa, ata_ignore_hpa, int, 0644);
+ MODULE_PARM_DESC(ignore_hpa, "Ignore HPA limit (0=keep BIOS limits, 1=ignore limits, using full disk)");


++++++ patches.fixes.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/acpi_autoload_baydock.patch new/patches.fixes/acpi_autoload_baydock.patch
--- old/patches.fixes/acpi_autoload_baydock.patch       1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/acpi_autoload_baydock.patch       2007-09-05 13:41:35.000000000 +0200
@@ -0,0 +1,200 @@
+From: Thomas Renninger <trenn@xxxxxxxxxx>
+Subject: autloading of dock module
+Patch-mainline: no
+References: 302482
+Due to the new autloading of acpi drivers, the dock driver
+wasn't loaded anymore as there is no HID to identify it with
+(dock is needed if ACPI has a  _DCK method).
+This patch is a workaround for this, original by Thomas Renninger,
+revised first by Kay Sievers and last by Frank Seidel.
+V2 of this patch fixed problems on systems without a defined _CID for
+the docking devices.
+
+Signed-off-by: Thomas Renninger <trenn@xxxxxxxxxx>
+Signed-off-by: Kay Sievers <kasievers@xxxxxxxxxx>
+Signed-off-by: Frank Seidel <fseidel@xxxxxxx>
+
+---
+ drivers/acpi/dock.c         |    6 ++
+ drivers/acpi/scan.c         |  100 ++++++++++++++++++++++++++++++++++++--------
+ include/acpi/acpi_drivers.h |    1 
+ 3 files changed, 91 insertions(+), 16 deletions(-)
+
+Index: linux-2.6.22/drivers/acpi/dock.c
+===================================================================
+--- linux-2.6.22.orig/drivers/acpi/dock.c
++++ linux-2.6.22/drivers/acpi/dock.c
+@@ -44,6 +44,12 @@ static struct atomic_notifier_head dock_
+ static struct platform_device dock_device;
+ static char dock_device_name[] = "dock";

++static const struct acpi_device_id dock_device_ids[] = {
++      {"LNXDOCK", 0},
++      {"", 0},
++};
++MODULE_DEVICE_TABLE(acpi, dock_device_ids);
++
+ struct dock_station {
+       acpi_handle handle;
+       unsigned long last_dock_time;
+Index: linux-2.6.22/drivers/acpi/scan.c
+===================================================================
+--- linux-2.6.22.orig/drivers/acpi/scan.c
++++ linux-2.6.22/drivers/acpi/scan.c
+@@ -938,6 +938,15 @@ static int acpi_bay_match(struct acpi_de
+       return -ENODEV;
+ }

++/*
++ * acpi_dock_match - see if a device has a _DCK method
++ */
++static int acpi_dock_match(struct acpi_device *device)
++{
++      acpi_handle tmp;
++      return acpi_get_handle(device->handle, "_DCK", &tmp);
++}
++
+ static void acpi_device_set_id(struct acpi_device *device,
+                              struct acpi_device *parent, acpi_handle handle,
+                              int type)
+@@ -947,6 +956,7 @@ static void acpi_device_set_id(struct ac
+       char *hid = NULL;
+       char *uid = NULL;
+       struct acpi_compatible_id_list *cid_list = NULL;
++      const char *cid_add = NULL;
+       acpi_status status;

+       switch (type) {
+@@ -969,15 +979,18 @@ static void acpi_device_set_id(struct ac
+                       device->flags.bus_address = 1;
+               }

+-              if(!(info->valid & (ACPI_VALID_HID | ACPI_VALID_CID))){
+-                      status = acpi_video_bus_match(device);
+-                      if(ACPI_SUCCESS(status))
+-                              hid = ACPI_VIDEO_HID;
+-
+-                      status = acpi_bay_match(device);
+-                      if (ACPI_SUCCESS(status))
+-                              hid = ACPI_BAY_HID;
+-              }
++              /* If we have a video/bay/dock device, add our selfdefined
++                 HID to the CID list. Like that the video/bay/dock drivers
++                 will get autoloaded and the device might still match
++                 against another driver.
++              */
++              if (ACPI_SUCCESS(acpi_video_bus_match(device)))
++                      cid_add = ACPI_VIDEO_HID;
++              else if (ACPI_SUCCESS(acpi_bay_match(device)))
++                      cid_add = ACPI_BAY_HID;
++              else if (ACPI_SUCCESS(acpi_dock_match(device)))
++                      cid_add = ACPI_DOCK_HID;
++
+               break;
+       case ACPI_BUS_TYPE_POWER:
+               hid = ACPI_POWER_HID;
+@@ -1018,11 +1031,43 @@ static void acpi_device_set_id(struct ac
+               strcpy(device->pnp.unique_id, uid);
+               device->flags.unique_id = 1;
+       }
+-      if (cid_list) {
+-              device->pnp.cid_list = kmalloc(cid_list->size, GFP_KERNEL);
+-              if (device->pnp.cid_list)
+-                      memcpy(device->pnp.cid_list, cid_list, cid_list->size);
+-              else
++      if (cid_list || cid_add) {
++              struct  acpi_compatible_id_list *list;
++              int size = 0;
++              int count = 0;
++
++              if (cid_list) {
++                      size = cid_list->size;
++              } else if (cid_add) {
++                      size = sizeof(struct acpi_compatible_id_list);
++                      cid_list = ACPI_ALLOCATE_ZEROED((acpi_size) size);
++                      if (!cid_list) {
++                              printk(KERN_ERR "Memory allocation error\n");
++                              kfree(buffer.pointer);
++                              return;
++                      } else {
++                              cid_list->count = 0;
++                              cid_list->size = size;
++                      }
++              }
++              if (cid_add)
++                      size += sizeof(struct acpi_compatible_id);
++              list = kmalloc(size, GFP_KERNEL);
++
++              if (list) {
++                      if (cid_list) {
++                              memcpy(list, cid_list, cid_list->size);
++                              count = cid_list->count;
++                      }
++                      if (cid_add) {
++                              strncpy(list->id[count].value, cid_add, ACPI_MAX_CID_LENGTH);
++                              count++;
++                              device->flags.compatible_ids = 1;
++                      }
++                      list->size = size;
++                      list->count = count;
++                      device->pnp.cid_list = list;
++              } else
+                       printk(KERN_ERR "Memory allocation error\n");
+       }

+@@ -1078,6 +1123,20 @@ static int acpi_bus_remove(struct acpi_d
+ }

+ static int
++acpi_is_child_device(struct acpi_device *device,
++                      int (*matcher)(struct acpi_device*))
++{
++      int result = -ENODEV;
++
++      do {
++              if (ACPI_SUCCESS(matcher(device)))
++                      return AE_OK;
++      } while ((device = device->parent));
++
++      return result;
++}
++
++static int
+ acpi_add_single_object(struct acpi_device **child,
+                      struct acpi_device *parent, acpi_handle handle, int type,
+                       struct acpi_bus_ops *ops)
+@@ -1128,10 +1187,20 @@ acpi_add_single_object(struct acpi_devic
+       case ACPI_BUS_TYPE_PROCESSOR:
+       case ACPI_BUS_TYPE_DEVICE:
+               result = acpi_bus_get_status(device);
+-              if (ACPI_FAILURE(result) || !device->status.present) {
+-                      result = -ENOENT;
++              if (ACPI_FAILURE(result)) {
++                      result = -ENODEV;
+                       goto end;
+               }
++              if (!device->status.present) {
++                      /* Bay and dock should be handled even if absent */
++                      if (!ACPI_SUCCESS(
++                           acpi_is_child_device(device, acpi_bay_match)) &&
++                          !ACPI_SUCCESS(
++                           acpi_is_child_device(device, acpi_dock_match))) {
++                                      result = -ENODEV;
++                                      goto end;
++                      }
++              }
+               break;
+       default:
+               STRUCT_TO_INT(device->status) =
+Index: linux-2.6.22/include/acpi/acpi_drivers.h
+===================================================================
+--- linux-2.6.22.orig/include/acpi/acpi_drivers.h
++++ linux-2.6.22/include/acpi/acpi_drivers.h
+@@ -48,6 +48,7 @@
+ #define ACPI_BUTTON_HID_SLEEPF                "LNXSLPBN"
+ #define ACPI_VIDEO_HID                        "LNXVIDEO"
+ #define ACPI_BAY_HID                  "LNXIOBAY"
++#define ACPI_DOCK_HID                 "LNXDOCK"

+ /* --------------------------------------------------------------------------
+                                        PCI
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch new/patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
--- old/patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch        1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch        2007-09-07 15:22:05.000000000 +0200
@@ -0,0 +1,38 @@
+Subject: Rename TSS_sysenter_esp0 to SYSENTER_stack_esp0
+From: http://xenbits.xensource.com/xen-3.1-testing.hg ;(tip 15042)
+Patch-mainline: obsolete
+Acked-by: jbeulich@xxxxxxxxxx
+
+---
+ arch/i386/kernel/entry.S |    6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/arch/i386/kernel/entry.S 2007-08-27 14:01:24.000000000 -0400
++++ b/arch/i386/kernel/entry.S 2007-08-27 14:01:24.000000000 -0400
+@@ -287,7 +287,7 @@ ENTRY(sysenter_entry)
+       CFI_SIGNAL_FRAME
+       CFI_DEF_CFA esp, 0
+       CFI_REGISTER esp, ebp
+-      movl TSS_sysenter_esp0(%esp),%esp
++      movl SYSENTER_stack_esp0(%esp),%esp
+ sysenter_past_esp:
+       /*
+        * No need to follow this irqs on/off section: the syscall
+@@ -741,7 +741,7 @@ END(device_not_available)
+  * that sets up the real kernel stack. Check here, since we can't
+  * allow the wrong stack to be used.
+  *
+- * "TSS_sysenter_esp0+12" is because the NMI/debug handler will have
++ * "SYSENTER_stack_esp0+12" is because the NMI/debug handler will have
+  * already pushed 3 words if it hits on the sysenter instruction:
+  * eflags, cs and eip.
+  *
+@@ -753,7 +753,7 @@ END(device_not_available)
+       cmpw $__KERNEL_CS,4(%esp);              \
+       jne ok;                                 \
+ label:                                                \
+-      movl TSS_sysenter_esp0+offset(%esp),%esp;       \
++      movl SYSENTER_stack_esp0+offset(%esp),%esp;     \
+       CFI_DEF_CFA esp, 0;                     \
+       CFI_UNDEFINED eip;                      \
+       pushfl;                                 \

++++++ patches.kernel.org.tar.bz2 ++++++

++++++ patches.rpmify.tar.bz2 ++++++

++++++ patches.rt.tar.bz2 ++++++

++++++ patches.suse.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/bootsplash new/patches.suse/bootsplash
--- old/patches.suse/bootsplash 2007-08-31 10:09:46.000000000 +0200
+++ new/patches.suse/bootsplash 2007-09-07 19:55:38.000000000 +0200
@@ -30,8 +30,8 @@
  kernel/panic.c                        |   12 
  19 files changed, 2601 insertions(+), 1 deletion(-)
 
---- a/drivers/char/keyboard.c  2007-07-08 19:32:17.000000000 -0400
-+++ b/drivers/char/keyboard.c  2007-08-27 14:02:26.000000000 -0400
+--- a/drivers/char/keyboard.c
++++ b/drivers/char/keyboard.c
 @@ -1138,6 +1138,15 @@ static void kbd_keycode(unsigned int key
                        if (keycode < BTN_MISC && printk_ratelimit())
                                printk(KERN_WARNING "keyboard.c: can't emulate rawmode for keycode %d\n", keycode);
@@ -48,8 +48,8 @@
  #ifdef CONFIG_MAGIC_SYSRQ            /* Handle the SysRq Hack */
        if (keycode == KEY_SYSRQ && (sysrq_down || (down == 1 && sysrq_alt))) {
                if (!sysrq_down) {
---- a/drivers/char/n_tty.c     2007-07-08 19:32:17.000000000 -0400
-+++ b/drivers/char/n_tty.c     2007-08-27 14:01:23.000000000 -0400
+--- a/drivers/char/n_tty.c
++++ b/drivers/char/n_tty.c
 @@ -1297,6 +1297,15 @@ do_it_again:
                        tty->minimum_to_wake = (minimum - (b - buf));
                
@@ -66,8 +66,8 @@
                        if (test_bit(TTY_OTHER_CLOSED, &tty->flags)) {
                                retval = -EIO;
                                break;
---- a/drivers/char/vt.c        2007-08-27 14:01:21.000000000 -0400
-+++ b/drivers/char/vt.c        2007-08-27 14:01:23.000000000 -0400
+--- a/drivers/char/vt.c
++++ b/drivers/char/vt.c
 @@ -3952,6 +3952,31 @@ void vcs_scr_writew(struct vc_data *vc, 
        }
  }
@@ -100,8 +100,8 @@
  /*
   *    Visible symbols for modules
   */
---- a/drivers/video/Kconfig    2007-08-27 14:01:21.000000000 -0400
-+++ b/drivers/video/Kconfig    2007-08-27 14:01:50.000000000 -0400
+--- a/drivers/video/Kconfig
++++ b/drivers/video/Kconfig
 @@ -1852,5 +1852,9 @@ if FB || SGI_NEWPORT_CONSOLE
        source "drivers/video/logo/Kconfig"
  endif
@@ -112,8 +112,8 @@
 +
  endmenu
  
---- a/drivers/video/Makefile   2007-07-08 19:32:17.000000000 -0400
-+++ b/drivers/video/Makefile   2007-08-27 14:01:23.000000000 -0400
+--- a/drivers/video/Makefile
++++ b/drivers/video/Makefile
 @@ -14,6 +14,7 @@ fb-objs                           := $(f
  obj-$(CONFIG_VT)                += console/
  obj-$(CONFIG_LOGO)              += logo/
@@ -122,8 +122,8 @@
  
  obj-$(CONFIG_FB_CFB_FILLRECT)  += cfbfillrect.o
  obj-$(CONFIG_FB_CFB_COPYAREA)  += cfbcopyarea.o
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ b/drivers/video/bootsplash/Kconfig 2007-08-27 14:01:23.000000000 -0400
+--- /dev/null
++++ b/drivers/video/bootsplash/Kconfig
 @@ -0,0 +1,17 @@
 +#
 +# Bootsplash configuration
@@ -142,16 +142,16 @@
 +          If you are unsure, say N
 +endmenu
 +
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ b/drivers/video/bootsplash/Makefile        2007-08-27 14:01:23.000000000 -0400
+--- /dev/null
++++ b/drivers/video/bootsplash/Makefile
 @@ -0,0 +1,5 @@
 +# Makefile for the Linux bootsplash
 +
 +obj-$(CONFIG_BOOTSPLASH)              += bootsplash.o
 +obj-$(CONFIG_BOOTSPLASH)              += decode-jpg.o
 +obj-$(CONFIG_BOOTSPLASH)              += render.o
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ b/drivers/video/bootsplash/bootsplash.c    2007-08-27 14:01:23.000000000 -0400
+--- /dev/null
++++ b/drivers/video/bootsplash/bootsplash.c
 @@ -0,0 +1,1017 @@
 +/*
 + *           linux/drivers/video/bootsplash/bootsplash.c -
@@ -559,7 +559,7 @@
 +      *update = -1;
 +
 +    if (!update || start[7] < '2' || start[7] > '3' || splash_geti(start, 12) != (int)0xffffffff)
-+      printk(KERN_INFO "bootsplash %s: looking for picture...", SPLASH_VERSION);
++      printk(KERN_INFO "bootsplash %s: looking for picture...\n", SPLASH_VERSION);
 +
 +    for (ndata = start; ndata < end; ndata++) {
 +      if (ndata[0] != 'B' || ndata[1] != 'O' || ndata[2] != 'O' || ndata[3] != 'T')
@@ -630,7 +630,7 @@
 +          return unit;
 +      }
 +      if (splash_size == 0) {
-+          printk(KERN_INFO"...found, freeing memory.\n");
++          printk(KERN_INFO "bootsplash: ...found, freeing memory.\n");
 +          if (vc->vc_splash_data)
 +              splash_free(vc, info);
 +          return unit;
@@ -638,7 +638,7 @@
 +      boxcnt = splash_gets(ndata, SPLASH_OFF_BOXCNT);
 +      palcnt = 3 * splash_getb(ndata, SPLASH_OFF_PALCNT);
 +      if (ndata + len + splash_size > end) {
-+          printk(KERN_INFO "...found, but truncated!\n");
++          printk(KERN_ERR "bootsplash: ...found, but truncated!\n");
 +          return -1;
 +      }
 +      if (!jpeg_check_size(ndata + len + boxcnt * 12 + palcnt, width, height)) {
@@ -649,16 +649,16 @@
 +          return -1;
 +      silentsize = splash_geti(ndata, SPLASH_OFF_SSIZE);
 +      if (silentsize)
-+          printk(KERN_INFO" silentjpeg size %d bytes,", silentsize);
++          printk(KERN_INFO "bootsplash: silentjpeg size %d bytes\n", silentsize);
 +      if (silentsize >= splash_size) {
-+          printk(KERN_INFO " bigger than splashsize!\n");
++          printk(KERN_ERR "bootsplash: bigger than splashsize!\n");
 +          return -1;
 +      }
 +      splash_size -= silentsize;
 +      if (!splash_usesilent)
 +          silentsize = 0;
 +      else if (height * 2 * info->fix.line_length > info->fix.smem_len) {
-+          printk(KERN_INFO " does not fit into framebuffer.\n");
++          printk(KERN_WARNING "bootsplash: does not fit into framebuffer.\n");
 +          silentsize = 0;
 +      }
 +      sboxcnt = splash_gets(ndata, SPLASH_OFF_SBOXCNT);
@@ -666,7 +666,7 @@
 +          unsigned char *simage = ndata + len + splash_size + 12 * sboxcnt;
 +          if (!jpeg_check_size(simage, width, height) ||
 +              splash_check_jpeg(simage, width, height, info->var.bits_per_pixel)) {
-+                  printk(KERN_INFO " error in silent jpeg.\n");
++                  printk(KERN_WARNING "bootsplash: error in silent jpeg.\n");
 +                  silentsize = 0;
 +              }
 +      }
@@ -712,15 +712,15 @@
 +      }
 +      if (sd->splash_text_xo + sd->splash_text_wi > width || sd->splash_text_yo + sd->splash_text_he > height) {
 +          splash_free(vc, info);
-+          printk(KERN_INFO " found, but has oversized text area!\n");
++          printk(KERN_ERR "bootsplash: found, but has oversized text area!\n");
 +          return -1;
 +      }
 +      if (!vc_cons[unit].d || info->fbops->fb_imageblit != cfb_imageblit) {
 +          splash_free(vc, info);
-+          printk(KERN_INFO " found, but framebuffer can't handle it!\n");
++          printk(KERN_ERR "bootsplash: found, but framebuffer can't handle it!\n");
 +          return -1;
 +      }
-+      printk(KERN_INFO "...found (%dx%d, %d bytes, v%d).\n", width, height, splash_size, version);
++      printk(KERN_INFO "bootsplash: ...found (%dx%d, %d bytes, v%d).\n", width, height, splash_size, version);
 +      if (version == 1) {
 +          printk(KERN_WARNING "bootsplash: Using deprecated v1 header. Updating your splash utility recommended.\n");
 +          printk(KERN_INFO    "bootsplash: Find the latest version at http://www.bootsplash.org/\n";);
@@ -741,7 +741,7 @@
 +      sd->splash_dosilent = sd->splash_silentjpeg != 0 ? (oldsilent == -1 ? 1 : oldsilent) : 0;
 +      return unit;
 +    }
-+    printk(KERN_INFO "...no good signature found.\n");
++    printk(KERN_ERR "bootsplash: ...no good signature found.\n");
 +    return -1;
 +}
 +
@@ -1170,8 +1170,8 @@
 +      return;
 +}
 +
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ b/drivers/video/bootsplash/bootsplash.h    2007-08-27 14:01:23.000000000 -0400
+--- /dev/null
++++ b/drivers/video/bootsplash/bootsplash.h
 @@ -0,0 +1,44 @@
 +/*
 + *    linux/drivers/video/bootsplash/bootsplash.h - splash screen definition.
@@ -1217,8 +1217,8 @@
 +extern void release_console_sem(void);
 +
 +#endif
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ b/drivers/video/bootsplash/decode-jpg.c    2007-08-27 14:01:23.000000000 -0400
+--- /dev/null
++++ b/drivers/video/bootsplash/decode-jpg.c
 @@ -0,0 +1,957 @@
 +/*
 + *    linux/drivers/video/bootsplash/decode-jpg.c - a tiny jpeg decoder.
@@ -2177,8 +2177,8 @@
 +              outy += 64 * 2 - 16 * 4;
 +      }
 +}
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ b/drivers/video/bootsplash/decode-jpg.h    2007-08-27 14:01:23.000000000 -0400
+--- /dev/null
++++ b/drivers/video/bootsplash/decode-jpg.h
 @@ -0,0 +1,35 @@
 +/*
 + *    linux/drivers/video/bootsplash/decode-jpg.h - a tiny jpeg decoder.
@@ -2215,8 +2215,8 @@
 +extern int jpeg_check_size(unsigned char *, int, int);
 +
 +#endif
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ b/drivers/video/bootsplash/render.c        2007-08-27 14:01:23.000000000 -0400
+--- /dev/null
++++ b/drivers/video/bootsplash/render.c
 @@ -0,0 +1,328 @@
 +/*
 + *    linux/drivers/video/bootsplash/render.c - splash screen render functions.
@@ -2546,8 +2546,8 @@
 +      }
 +}
 +
---- a/drivers/video/console/bitblit.c  2007-07-08 19:32:17.000000000 -0400
-+++ b/drivers/video/console/bitblit.c  2007-08-27 14:01:23.000000000 -0400
+--- a/drivers/video/console/bitblit.c
++++ b/drivers/video/console/bitblit.c
 @@ -17,6 +17,9 @@
  #include <linux/console.h>
  #include <asm/types.h>
@@ -2629,8 +2629,8 @@
        if (info->fbops->fb_cursor)
                err = info->fbops->fb_cursor(info, &cursor);
  
---- a/drivers/video/console/fbcon.c    2007-08-27 14:01:21.000000000 -0400
-+++ b/drivers/video/console/fbcon.c    2007-08-27 14:01:23.000000000 -0400
+--- a/drivers/video/console/fbcon.c
++++ b/drivers/video/console/fbcon.c
 @@ -90,6 +90,9 @@
  #endif
  
@@ -2755,8 +2755,8 @@
                cols /= w;
                rows /= h;
                vc_resize(vc, cols, rows);
---- a/drivers/video/console/fbcon.h    2007-07-08 19:32:17.000000000 -0400
-+++ b/drivers/video/console/fbcon.h    2007-08-27 14:01:23.000000000 -0400
+--- a/drivers/video/console/fbcon.h
++++ b/drivers/video/console/fbcon.h
 @@ -25,6 +25,34 @@
      *    low-level frame buffer device
      */
@@ -2792,8 +2792,8 @@
  struct display {
      /* Filled in by the low-level console driver */
      const u_char *fontdata;
---- a/drivers/video/vesafb.c   2007-07-08 19:32:17.000000000 -0400
-+++ b/drivers/video/vesafb.c   2007-08-27 14:01:23.000000000 -0400
+--- a/drivers/video/vesafb.c
++++ b/drivers/video/vesafb.c
 @@ -174,7 +174,10 @@ static int vesafb_setcolreg(unsigned reg
        return err;
  }
@@ -2816,8 +2816,8 @@
        if (vram_remap)
                size_remap = vram_remap * 1024 * 1024;
        if (size_remap < size_vmode)
---- a/include/linux/console_struct.h   2007-07-08 19:32:17.000000000 -0400
-+++ b/include/linux/console_struct.h   2007-08-27 14:01:23.000000000 -0400
+--- a/include/linux/console_struct.h
++++ b/include/linux/console_struct.h
 @@ -105,6 +105,9 @@ struct vc_data {
        struct vc_data **vc_display_fg;         /* [!] Ptr to var holding fg console for this display */
        unsigned long   vc_uni_pagedir;
@@ -2828,8 +2828,8 @@
        /* additional information is in vt_kern.h */
  };
  
---- a/include/linux/fb.h       2007-08-27 14:01:21.000000000 -0400
-+++ b/include/linux/fb.h       2007-08-27 14:01:23.000000000 -0400
+--- a/include/linux/fb.h
++++ b/include/linux/fb.h
 @@ -832,6 +832,14 @@ struct fb_info {
        void *fbcon_par;                /* fbcon use-only private area */
        /* From here on everything is device dependent */
@@ -2845,8 +2845,8 @@
  };
  
  #ifdef MODULE
---- a/kernel/panic.c   2007-08-27 14:01:19.000000000 -0400
-+++ b/kernel/panic.c   2007-08-27 14:01:23.000000000 -0400
+--- a/kernel/panic.c
++++ b/kernel/panic.c
 @@ -107,6 +107,12 @@ NORET_TYPE void panic(const char * fmt, 
                 * We can't use the "normal" timers since we just panicked..
                 */

++++++ patches.uml.tar.bz2 ++++++

++++++ patches.xen.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.xen/30-bit-field-booleans.patch new/patches.xen/30-bit-field-booleans.patch
--- old/patches.xen/30-bit-field-booleans.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.xen/30-bit-field-booleans.patch 2007-09-07 19:46:00.000000000 +0200
@@ -0,0 +1,36 @@
+# HG changeset patch
+# User kfraser@xxxxxxxxxxxxxxxxxxxxx
+# Date 1180964151 -3600
+# Node ID 45dfe4cfc5ef81f158cbf301a10939ed66dcc483
+# Parent  2bd50dc2ffbcae334c8d36f64f1ff09330242394
+netback: Bit-field booleans must be unsigned.
+Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
+
+Index: linux-2.6.22/drivers/xen/netback/common.h
+===================================================================
+--- linux-2.6.22.orig/drivers/xen/netback/common.h
++++ linux-2.6.22/drivers/xen/netback/common.h
+@@ -78,8 +78,8 @@ typedef struct netif_st {
+       int features;

+       /* Internal feature information. */
+-      int can_queue:1;        /* can queue packets for receiver? */
+-      int copying_receiver:1; /* copy packets to receiver?       */
++      u8 can_queue:1; /* can queue packets for receiver? */
++      u8 copying_receiver:1;  /* copy packets to receiver?       */

+       /* Allow netif_be_start_xmit() to peek ahead in the rx request ring. */
+       RING_IDX rx_req_cons_peek;
+Index: linux-2.6.22/drivers/xen/netback/netback.c
+===================================================================
+--- linux-2.6.22.orig/drivers/xen/netback/netback.c
++++ linux-2.6.22/drivers/xen/netback/netback.c
+@@ -46,7 +46,7 @@
+ struct netbk_rx_meta {
+       skb_frag_t frag;
+       int id;
+-      int copy:1;
++      u8 copy:1;
+ };

+ static void netif_idx_release(u16 pending_idx);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch new/patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
--- old/patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch  2007-08-31 10:10:29.000000000 +0200
+++ new/patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch  1970-01-01 01:00:00.000000000 +0100
@@ -1,38 +0,0 @@
-Subject: Rename TSS_sysenter_esp0 to SYSENTER_stack_esp0
-From: http://xenbits.xensource.com/xen-3.1-testing.hg ;(tip 15042)
-Patch-mainline: obsolete
-Acked-by: jbeulich@xxxxxxxxxx
-
----
- arch/i386/kernel/entry.S |    6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
---- a/arch/i386/kernel/entry.S 2007-08-27 14:01:24.000000000 -0400
-+++ b/arch/i386/kernel/entry.S 2007-08-27 14:01:24.000000000 -0400
-@@ -287,7 +287,7 @@ ENTRY(sysenter_entry)
-       CFI_SIGNAL_FRAME
-       CFI_DEF_CFA esp, 0
-       CFI_REGISTER esp, ebp
--      movl TSS_sysenter_esp0(%esp),%esp
-+      movl SYSENTER_stack_esp0(%esp),%esp
- sysenter_past_esp:
-       /*
-        * No need to follow this irqs on/off section: the syscall
-@@ -741,7 +741,7 @@ END(device_not_available)
-  * that sets up the real kernel stack. Check here, since we can't
-  * allow the wrong stack to be used.
-  *
-- * "TSS_sysenter_esp0+12" is because the NMI/debug handler will have
-+ * "SYSENTER_stack_esp0+12" is because the NMI/debug handler will have
-  * already pushed 3 words if it hits on the sysenter instruction:
-  * eflags, cs and eip.
-  *
-@@ -753,7 +753,7 @@ END(device_not_available)
-       cmpw $__KERNEL_CS,4(%esp);              \
-       jne ok;                                 \
- label:                                                \
--      movl TSS_sysenter_esp0+offset(%esp),%esp;       \
-+      movl SYSENTER_stack_esp0+offset(%esp),%esp;     \
-       CFI_DEF_CFA esp, 0;                     \
-       CFI_UNDEFINED eip;                      \
-       pushfl;                                 \






++++++ series.conf ++++++
--- kernel-source/series.conf   2007-09-04 14:36:12.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/series.conf      2007-09-07 19:55:57.000000000 +0200
@@ -183,6 +183,7 @@
        patches.arch/ppc-ps3tree-other_Documentation-block-barrier.txt-update.diff
        patches.arch/ppc-ps3tree-spe-logo_fb_show_logo_line.diff
        patches.arch/ppc-ps3tree-spe-logo_logo-extern-in-header.diff
+-      patches.arch/ppc-suse-spe-logo_logo-extern-in-header.diff
        patches.arch/ppc-ps3tree-spe-logo_fb_append_extra_logo.diff
        patches.arch/ppc-ps3tree-spe-logo_logo_spe_clut224.diff
        patches.arch/ppc-ps3tree-spe-logo_logo-extra-spe-glue-2.6.21.diff
@@ -259,6 +260,7 @@
        ########################################################
        patches.suse/connector-read-mostly
        patches.suse/kbd-ignore-gfx.patch
+       patches.fixes/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
 
        ########################################################
        #
@@ -283,6 +285,7 @@
        patches.arch/acpi_bay_uevent_fix.patch
        patches.arch/acpi_enable_gpes_before_wak.patch
        patches.suse/acpi-unexport-acpi_rs_match_vendor_resource.diff
+       patches.fixes/acpi_autoload_baydock.patch
 
        # CPUFREQ
        patches.fixes/cpufreq_move_policy_init.patch
@@ -480,6 +483,23 @@
        patches.drivers/libata-add-waits-for-govault
        patches.drivers/libata-ahci-priv-flags.patch
        patches.drivers/libata-ahci-no-pmp.patch
+       patches.drivers/libata-scc-ata_link.patch
+       patches.drivers/libata-unlock-hpa-by-default
+       patches.drivers/libata-atapi-passthru16
+       patches.drivers/libata-clear-horkage-on-ata_dev_init
+       patches.drivers/libata-fix-n_sectors-handling-during-revalidation
+       patches.drivers/libata-add-pata_dma-kernel-parameter
+       patches.drivers/libata-improve-diagnostic-failure-handling
+       patches.drivers/libata-add-NCQ-spurious-completion-horkages
+       patches.drivers/libata-add-broken-HPA-horkages
+       patches.drivers/libata-improve-hpa-failure-handling
+       patches.drivers/libata-ata_piix-suspend-workaround-for-toshiba-laptops
+       patches.drivers/libata-ata_piix-implement-IOCFG-bit18-quirk
+       patches.drivers/libata-pata_it821x-fix-initialization-bug
+       patches.drivers/libata-sata_via-fix-write-errors-on-PATA-drive-connected-to-VT6421
+       patches.drivers/libata-more-machines-for-short-cable-list
+       patches.drivers/libata-add-pci-ids-for-intel-tolapi
+       patches.drivers/libata-pata_marvell-add-PCI-IDs
 
        patches.fixes/mptbase-vmware-fix
 
@@ -729,7 +749,6 @@
 -RT            patches.xen/fix-ide-cd-pio-mode.patch
 -RT            patches.xen/i386-mach-io-check-nmi.patch
 -RT            patches.xen/net-csum.patch
--RT            patches.xen/rename-TSS_sysenter_esp0-SYSENTER_stack_esp0.patch
 -RT            patches.xen/xenoprof-generic.patch
 -RT            patches.xen/softlockup-no-idle-hz.patch
 
@@ -743,13 +762,14 @@
 
                # common code changes
 -RT            patches.xen/xen3-auto-common.diff
--RT            patches.xen/xen3-auto-arch-i386.diff
+               patches.xen/xen3-auto-arch-i386.diff
 +empty         patches.xen/xen3-auto-arch-um.diff
 -RT            patches.xen/xen3-auto-arch-x86_64.diff
 
                # newer changeset backports
 -RT            patches.xen/15130-x86_64-vsyscall-user.patch
 -RT            patches.xen/15181-dma-tracking.patch
+-RT            patches.xen/30-bit-field-booleans.patch
 -RT            patches.xen/42-freeze.patch
 -RT            patches.xen/67-edd.patch
 -RT            patches.xen/70-edid.patch




++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx

< Previous Next >