Hello community,
here is the log from the commit of package kernel-source
checked in at Thu Aug 7 01:33:45 CEST 2008.
--------
--- kernel-source/kernel-debug.changes 2008-07-17 18:37:14.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/kernel-debug.changes 2008-08-06 15:52:08.149447000 +0200
@@ -1,0 +2,975 @@
+Wed Aug 6 12:59:59 CEST 2008 - olh@suse.de
+
+- add patches.suse/ppc-no-LDFLAGS_MODULE.patch
+ do not link external modules against arch/powerpc/lib/crtsavres.o
+
+-------------------------------------------------------------------
+Tue Aug 5 21:41:43 CEST 2008 - jeffm@suse.de
+
+- patches.fixes/reiserfs-commit-ids-unsigned-ints: reiserfs:
+ audit transaction ids to always be unsigned ints (bnc#410847).
+
+-------------------------------------------------------------------
+Tue Aug 5 21:35:11 CEST 2008 - jeffm@suse.de
+
+- README.BRANCH: Took ownership of 11.1 tree.
+
+-------------------------------------------------------------------
+Tue Aug 5 21:34:11 CEST 2008 - jeffm@suse.de
+
+- README: Changed w3d links to wiki links.
+
+-------------------------------------------------------------------
+Tue Aug 5 17:03:22 CEST 2008 - ghaskins@suse.de
+
+Fixed misnamed rt_trace to rt_timing
+- config/x86_64/rt_trace: Delete.
+- Update config files.
+- config.conf:
+
+-------------------------------------------------------------------
+Tue Aug 5 16:10:50 CEST 2008 - ghaskins@suse.de
+
+Added x86_64/rt_trace kernel flavor (based on ftrace)
+
+- Update config files.
+- config.conf:
+
+-------------------------------------------------------------------
+Tue Aug 5 15:27:26 CEST 2008 - ghaskins@suse.de
+
+Guarded by +RT
+- Fix rtmutex-tester build problem with rt_debug
+- patches.rt/rtmutex-convert-to-libpi.patch: rtmutex: convert
+ rtmutexes to fully use the PI library.
+
+
+-------------------------------------------------------------------
+Tue Aug 5 14:20:38 CEST 2008 - ghaskins@suse.de
+
+Guarded by +RT
+- Remove version.patch to stop build breakage
+
+-------------------------------------------------------------------
+Tue Aug 5 11:43:31 CEST 2008 - jjohansen@suse.de
+
+- update apparmor patches with fixes for
+ - broken getcwd (bnc#413915)
+ - ref counting bug in getcwd and d_namespace_path when used
+ on disconnected paths (bnc#414607)
+ - typeo in patches that keep selinux from compiling (bnc#414609)
+ - incorporate smack patch into base apparmor patches, so
+ that smack can be built (bnc#414610)
+
+-------------------------------------------------------------------
+Tue Aug 5 11:33:17 CEST 2008 - jslaby@suse.de
+
+- patches.fixes/ath5k-fix-memory-corruption.patch: Ath5k: fix
+ memory corruption (bnc#414635).
+- patches.fixes/ath5k-kill-tasklets-on-shutdown.patch: Ath5k:
+ kill tasklets on shutdown (bnc#414638).
+
+-------------------------------------------------------------------
+Mon Aug 4 20:56:15 CEST 2008 - gregkh@suse.de
+
+- README.BRANCH: added file.
+
+-------------------------------------------------------------------
+Mon Aug 4 13:37:56 CEST 2008 - olh@suse.de
+
+- disable CONFIG_SECURITY_ROOTPLUG because /init in initrd will
+ not run if USB is compiled in and a specific USB device is not
+ present
+
+-------------------------------------------------------------------
+Mon Aug 4 12:42:38 CEST 2008 - jslaby@suse.de
+
+- patches.fixes/tpm-write-data-types.patch: tpm: Use correct
+ data types for sizes in tpm_write() and tpm_read() (bnc#400211).
+
+-------------------------------------------------------------------
+Fri Aug 1 21:45:24 CEST 2008 - ghaskins@suse.de
+
+PI rework v0.5 and a fix from upstream for 26-rt1
+- patches.rt/26-rt1-chirag.patch: This patch should solve some
+ of the bug messages..
+- patches.rt/add-generalized-pi-interface.patch: add generalized
+ priority-inheritance interface.
+- patches.rt/tie-pi-into-task.patch: sched: add the basic PI
+ infrastructure to the task_struct.
+- patches.rt/rtmutex-initialize-waiters.patch: rtmutex: formally
+ initialize the rt_mutex_waiters.
+- patches.rt/rtmutex-add_readers.patch: RT: wrap the rt_rwlock
+ "add reader" logic.
+- patches.rt/rtmutex-use-runtime-init.patch: rtmutex: use runtime
+ init for rtmutexes.
+- patches.rt/rtmutex-convert-to-libpi.patch: rtmutex: convert
+ rtmutexes to fully use the PI library.
+- patches.rt/rtmutex-defer-pi-until-sleepy.patch: rtmutex:
+ pi-boost locks as late as possible.
+
+-------------------------------------------------------------------
+Fri Aug 1 16:16:29 CEST 2008 - schwab@suse.de
+
+- Reenable EFI_RTC.
+
+-------------------------------------------------------------------
+Fri Aug 1 14:12:30 CEST 2008 - trenn@suse.de
+
+- Update config files.
+ Unset on forgotten archs:
+ CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS
+
+-------------------------------------------------------------------
+Fri Aug 1 13:49:18 CEST 2008 - trenn@suse.de
+
+- patches.fixes/x86_hpet_amd_quirk.patch: Workaround a hpet BIOS
+ bug which is common on latest AMD driven boards (bnc#387053).
+
+-------------------------------------------------------------------
+Fri Aug 1 13:42:53 CEST 2008 - sassmann@suse.de
+
+Add boot interrupt patches from linux-2.6-tip
+- patches.arch/x86-acpi-reroute-PCI-interrupt-to-legacy-boot-interrupt.patch
+- patches.arch/x86-add-PCI-IDs-for-devices-that-need-boot-irq-quirk.patch
+- patches.arch/x86-disable-AMD-ATI-boot-interrupt-generation.patch
+- patches.arch/x86-disable-broadcomm-boot-interrupt-generation.patch
+- patches.arch/x86-disable-intel-boot-interrupt-generation.patch
+- patches.arch/x86-introduce-config-option-for-pci-reroute-quirks.patch
+- patches.arch/x86-introduce-pci-ioapicreroute-kernel-cmdline.patch
+- patches.arch/x86-introduce-pci-noioapicquirk-kernel-cmdline.patch
+- Update config files.
+ * reroute of boot interrupts is enabled for RT only!
+
+-------------------------------------------------------------------
+Thu Jul 31 19:30:14 CEST 2008 - sdietrich@suse.de
+
+Update to 2.6.26-rt1:
+- config.conf: Enable i386/x86_64 - RT / RT_debug
+- Update config files:
+ * Sync to default config.
+ * Disable (broken):
+ - Novell Netware Filesystem support (novfs) (EXPERIMENTAL) (NOVFS)
+ - ISP 1760 HCD support (USB_ISP1760_HCD)
+ - KDB
+ - QLogic InfiniPath Driver (INFINIBAND_IPATH)
+
+Remove obsolete patches:
+------------------------
+- patches.rt/arm-cmpxchg-support-armv6.patch: Delete.
+- patches.rt/arm-cmpxchg.patch: Delete.
+- patches.rt/arm-fix-atomic-cmpxchg.patch: Delete.
+- patches.rt/arm-leds-timer.patch: Delete.
+- patches.rt/arm-omap-03.patch: Delete.
+- patches.rt/arm-omap-04.patch: Delete.
+- patches.rt/disable-sched-rt-groups.patch: Delete.
+- patches.rt/drivers-edac-add-support-for-HS21XM-SMI-remediation:
+ Delete.
+- patches.rt/drivers-edac-add-support-for-HS21_LS21-SMI-remediation:
+ Delete.
+- patches.rt/drivers-edac-add-sysfs_notify-calls.patch: Delete.
+- patches.rt/drivers-edac-i5000-turn-off-unsupported-check:
+ Delete.
+- patches.rt/drivers-edac-new-amd64.patch: Delete.
+- patches.rt/drivers-edac-new-k8-rev-f.patch: Delete.
+- patches.rt/drivers-edac-prevent-potential-printk-storm: Delete.
+- patches.rt/drivers-edac-test_device.patch: Delete.
+- patches.rt/ep93xx-clockevents-fix.patch: Delete.
+- patches.rt/ep93xx-clockevents.patch: Delete.
+- patches.rt/ep93xx-timer-accuracy.patch: Delete.
+- patches.rt/fix-alternate_node_alloc.patch: Delete.
+- patches.rt/fix-irq-flags-size.patch: Delete.
+- patches.rt/foo.patch: Delete.
+- patches.rt/ftrace-add-nr_syscalls.patch: Delete.
+- patches.rt/ftrace-alloc-pages.patch: Delete.
+- patches.rt/ftrace-cpu-clock-update.patch: Delete.
+- patches.rt/ftrace-debug-use-preempt-disable-notrace.patch:
+ Delete.
+- patches.rt/ftrace-direct-calls.patch: Delete.
+- patches.rt/ftrace-disable-daemon.patch: Delete.
+- patches.rt/ftrace-dont-use-raw-irq-save.patch: Delete.
+- patches.rt/ftrace-eventtrace-fixup.patch: Delete.
+- patches.rt/ftrace-filter-functions.patch: Delete.
+- patches.rt/ftrace-fix-ip.patch: Delete.
+- patches.rt/ftrace-flip-fix.patch: Delete.
+- patches.rt/ftrace-handle-time-outside-of-lockdep.patch: Delete.
+- patches.rt/ftrace-irqsoff-smp-processor-id-fix.patch: Delete.
+- patches.rt/ftrace-lockdep-notrace-annotations.patch: Delete.
++++ 778 more lines (skipped)
++++ between kernel-source/kernel-debug.changes
++++ and /mounts/work_src_done/STABLE/kernel-source/kernel-debug.changes
kernel-default.changes: same change
kernel-dummy.changes: same change
kernel-kdump.changes: same change
kernel-pae.changes: same change
kernel-ppc64.changes: same change
kernel-ps3.changes: same change
New Changes file:
--- /dev/null 2006-09-20 18:56:23.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/kernel-rt.changes 2008-08-06 15:52:09.503087000 +0200
@@ -0,0 +1,39817 @@
+-------------------------------------------------------------------
+Wed Aug 6 12:59:59 CEST 2008 - olh@suse.de
+
+- add patches.suse/ppc-no-LDFLAGS_MODULE.patch
+ do not link external modules against arch/powerpc/lib/crtsavres.o
+
+-------------------------------------------------------------------
+Tue Aug 5 21:41:43 CEST 2008 - jeffm@suse.de
+
+- patches.fixes/reiserfs-commit-ids-unsigned-ints: reiserfs:
+ audit transaction ids to always be unsigned ints (bnc#410847).
+
+-------------------------------------------------------------------
+Tue Aug 5 21:35:11 CEST 2008 - jeffm@suse.de
+
+- README.BRANCH: Took ownership of 11.1 tree.
+
+-------------------------------------------------------------------
+Tue Aug 5 21:34:11 CEST 2008 - jeffm@suse.de
+
+- README: Changed w3d links to wiki links.
+
+-------------------------------------------------------------------
+Tue Aug 5 17:03:22 CEST 2008 - ghaskins@suse.de
+
+Fixed misnamed rt_trace to rt_timing
+- config/x86_64/rt_trace: Delete.
+- Update config files.
+- config.conf:
+
+-------------------------------------------------------------------
+Tue Aug 5 16:10:50 CEST 2008 - ghaskins@suse.de
+
+Added x86_64/rt_trace kernel flavor (based on ftrace)
+
+- Update config files.
+- config.conf:
+
+-------------------------------------------------------------------
+Tue Aug 5 15:27:26 CEST 2008 - ghaskins@suse.de
+
+Guarded by +RT
+- Fix rtmutex-tester build problem with rt_debug
+- patches.rt/rtmutex-convert-to-libpi.patch: rtmutex: convert
+ rtmutexes to fully use the PI library.
+
+
+-------------------------------------------------------------------
+Tue Aug 5 14:20:38 CEST 2008 - ghaskins@suse.de
+
+Guarded by +RT
+- Remove version.patch to stop build breakage
+
+-------------------------------------------------------------------
+Tue Aug 5 11:43:31 CEST 2008 - jjohansen@suse.de
+
+- update apparmor patches with fixes for
+ - broken getcwd (bnc#413915)
+ - ref counting bug in getcwd and d_namespace_path when used
+ on disconnected paths (bnc#414607)
+ - typeo in patches that keep selinux from compiling (bnc#414609)
+ - incorporate smack patch into base apparmor patches, so
+ that smack can be built (bnc#414610)
+
+-------------------------------------------------------------------
+Tue Aug 5 11:33:17 CEST 2008 - jslaby@suse.de
+
+- patches.fixes/ath5k-fix-memory-corruption.patch: Ath5k: fix
+ memory corruption (bnc#414635).
+- patches.fixes/ath5k-kill-tasklets-on-shutdown.patch: Ath5k:
+ kill tasklets on shutdown (bnc#414638).
+
+-------------------------------------------------------------------
+Mon Aug 4 20:56:15 CEST 2008 - gregkh@suse.de
+
+- README.BRANCH: added file.
+
+-------------------------------------------------------------------
+Mon Aug 4 13:37:56 CEST 2008 - olh@suse.de
+
+- disable CONFIG_SECURITY_ROOTPLUG because /init in initrd will
+ not run if USB is compiled in and a specific USB device is not
+ present
+
+-------------------------------------------------------------------
+Mon Aug 4 12:42:38 CEST 2008 - jslaby@suse.de
+
+- patches.fixes/tpm-write-data-types.patch: tpm: Use correct
+ data types for sizes in tpm_write() and tpm_read() (bnc#400211).
+
+-------------------------------------------------------------------
+Fri Aug 1 21:45:24 CEST 2008 - ghaskins@suse.de
+
+PI rework v0.5 and a fix from upstream for 26-rt1
+- patches.rt/26-rt1-chirag.patch: This patch should solve some
+ of the bug messages..
+- patches.rt/add-generalized-pi-interface.patch: add generalized
+ priority-inheritance interface.
+- patches.rt/tie-pi-into-task.patch: sched: add the basic PI
+ infrastructure to the task_struct.
+- patches.rt/rtmutex-initialize-waiters.patch: rtmutex: formally
+ initialize the rt_mutex_waiters.
+- patches.rt/rtmutex-add_readers.patch: RT: wrap the rt_rwlock
+ "add reader" logic.
+- patches.rt/rtmutex-use-runtime-init.patch: rtmutex: use runtime
+ init for rtmutexes.
+- patches.rt/rtmutex-convert-to-libpi.patch: rtmutex: convert
+ rtmutexes to fully use the PI library.
+- patches.rt/rtmutex-defer-pi-until-sleepy.patch: rtmutex:
+ pi-boost locks as late as possible.
+
+-------------------------------------------------------------------
+Fri Aug 1 16:16:29 CEST 2008 - schwab@suse.de
+
+- Reenable EFI_RTC.
+
+-------------------------------------------------------------------
+Fri Aug 1 14:12:30 CEST 2008 - trenn@suse.de
+
+- Update config files.
+ Unset on forgotten archs:
+ CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS
+
+-------------------------------------------------------------------
+Fri Aug 1 13:49:18 CEST 2008 - trenn@suse.de
+
+- patches.fixes/x86_hpet_amd_quirk.patch: Workaround a hpet BIOS
+ bug which is common on latest AMD driven boards (bnc#387053).
+
+-------------------------------------------------------------------
+Fri Aug 1 13:42:53 CEST 2008 - sassmann@suse.de
+
+Add boot interrupt patches from linux-2.6-tip
+- patches.arch/x86-acpi-reroute-PCI-interrupt-to-legacy-boot-interrupt.patch
+- patches.arch/x86-add-PCI-IDs-for-devices-that-need-boot-irq-quirk.patch
+- patches.arch/x86-disable-AMD-ATI-boot-interrupt-generation.patch
+- patches.arch/x86-disable-broadcomm-boot-interrupt-generation.patch
+- patches.arch/x86-disable-intel-boot-interrupt-generation.patch
+- patches.arch/x86-introduce-config-option-for-pci-reroute-quirks.patch
+- patches.arch/x86-introduce-pci-ioapicreroute-kernel-cmdline.patch
+- patches.arch/x86-introduce-pci-noioapicquirk-kernel-cmdline.patch
+- Update config files.
+ * reroute of boot interrupts is enabled for RT only!
+
+-------------------------------------------------------------------
+Thu Jul 31 19:30:14 CEST 2008 - sdietrich@suse.de
+
+Update to 2.6.26-rt1:
+- config.conf: Enable i386/x86_64 - RT / RT_debug
+- Update config files:
+ * Sync to default config.
+ * Disable (broken):
+ - Novell Netware Filesystem support (novfs) (EXPERIMENTAL) (NOVFS)
+ - ISP 1760 HCD support (USB_ISP1760_HCD)
+ - KDB
+ - QLogic InfiniPath Driver (INFINIBAND_IPATH)
+
+Remove obsolete patches:
+------------------------
+- patches.rt/arm-cmpxchg-support-armv6.patch: Delete.
+- patches.rt/arm-cmpxchg.patch: Delete.
+- patches.rt/arm-fix-atomic-cmpxchg.patch: Delete.
+- patches.rt/arm-leds-timer.patch: Delete.
+- patches.rt/arm-omap-03.patch: Delete.
+- patches.rt/arm-omap-04.patch: Delete.
+- patches.rt/disable-sched-rt-groups.patch: Delete.
+- patches.rt/drivers-edac-add-support-for-HS21XM-SMI-remediation:
+ Delete.
+- patches.rt/drivers-edac-add-support-for-HS21_LS21-SMI-remediation:
+ Delete.
+- patches.rt/drivers-edac-add-sysfs_notify-calls.patch: Delete.
+- patches.rt/drivers-edac-i5000-turn-off-unsupported-check:
+ Delete.
+- patches.rt/drivers-edac-new-amd64.patch: Delete.
+- patches.rt/drivers-edac-new-k8-rev-f.patch: Delete.
+- patches.rt/drivers-edac-prevent-potential-printk-storm: Delete.
+- patches.rt/drivers-edac-test_device.patch: Delete.
+- patches.rt/ep93xx-clockevents-fix.patch: Delete.
+- patches.rt/ep93xx-clockevents.patch: Delete.
+- patches.rt/ep93xx-timer-accuracy.patch: Delete.
+- patches.rt/fix-alternate_node_alloc.patch: Delete.
+- patches.rt/fix-irq-flags-size.patch: Delete.
+- patches.rt/foo.patch: Delete.
+- patches.rt/ftrace-add-nr_syscalls.patch: Delete.
+- patches.rt/ftrace-alloc-pages.patch: Delete.
+- patches.rt/ftrace-cpu-clock-update.patch: Delete.
+- patches.rt/ftrace-debug-use-preempt-disable-notrace.patch:
+ Delete.
+- patches.rt/ftrace-direct-calls.patch: Delete.
+- patches.rt/ftrace-disable-daemon.patch: Delete.
+- patches.rt/ftrace-dont-use-raw-irq-save.patch: Delete.
+- patches.rt/ftrace-eventtrace-fixup.patch: Delete.
+- patches.rt/ftrace-filter-functions.patch: Delete.
+- patches.rt/ftrace-fix-ip.patch: Delete.
+- patches.rt/ftrace-flip-fix.patch: Delete.
+- patches.rt/ftrace-handle-time-outside-of-lockdep.patch: Delete.
+- patches.rt/ftrace-irqsoff-smp-processor-id-fix.patch: Delete.
++++ 39620 more lines (skipped)
++++ between /dev/null
++++ and /mounts/work_src_done/STABLE/kernel-source/kernel-rt.changes
New Changes file:
kernel-rt_debug.changes: same change
New Changes file:
kernel-rt_timing.changes: same change
--- kernel-source/kernel-s390.changes 2008-07-17 18:37:14.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/kernel-s390.changes 2008-08-06 15:52:09.903687000 +0200
@@ -1,0 +2,975 @@
+Wed Aug 6 12:59:59 CEST 2008 - olh@suse.de
+
+- add patches.suse/ppc-no-LDFLAGS_MODULE.patch
+ do not link external modules against arch/powerpc/lib/crtsavres.o
+
+-------------------------------------------------------------------
+Tue Aug 5 21:41:43 CEST 2008 - jeffm@suse.de
+
+- patches.fixes/reiserfs-commit-ids-unsigned-ints: reiserfs:
+ audit transaction ids to always be unsigned ints (bnc#410847).
+
+-------------------------------------------------------------------
+Tue Aug 5 21:35:11 CEST 2008 - jeffm@suse.de
+
+- README.BRANCH: Took ownership of 11.1 tree.
+
+-------------------------------------------------------------------
+Tue Aug 5 21:34:11 CEST 2008 - jeffm@suse.de
+
+- README: Changed w3d links to wiki links.
+
+-------------------------------------------------------------------
+Tue Aug 5 17:03:22 CEST 2008 - ghaskins@suse.de
+
+Fixed misnamed rt_trace to rt_timing
+- config/x86_64/rt_trace: Delete.
+- Update config files.
+- config.conf:
+
+-------------------------------------------------------------------
+Tue Aug 5 16:10:50 CEST 2008 - ghaskins@suse.de
+
+Added x86_64/rt_trace kernel flavor (based on ftrace)
+
+- Update config files.
+- config.conf:
+
+-------------------------------------------------------------------
+Tue Aug 5 15:27:26 CEST 2008 - ghaskins@suse.de
+
+Guarded by +RT
+- Fix rtmutex-tester build problem with rt_debug
+- patches.rt/rtmutex-convert-to-libpi.patch: rtmutex: convert
+ rtmutexes to fully use the PI library.
+
+
+-------------------------------------------------------------------
+Tue Aug 5 14:20:38 CEST 2008 - ghaskins@suse.de
+
+Guarded by +RT
+- Remove version.patch to stop build breakage
+
+-------------------------------------------------------------------
+Tue Aug 5 11:43:31 CEST 2008 - jjohansen@suse.de
+
+- update apparmor patches with fixes for
+ - broken getcwd (bnc#413915)
+ - ref counting bug in getcwd and d_namespace_path when used
+ on disconnected paths (bnc#414607)
+ - typeo in patches that keep selinux from compiling (bnc#414609)
+ - incorporate smack patch into base apparmor patches, so
+ that smack can be built (bnc#414610)
+
+-------------------------------------------------------------------
+Tue Aug 5 11:33:17 CEST 2008 - jslaby@suse.de
+
+- patches.fixes/ath5k-fix-memory-corruption.patch: Ath5k: fix
+ memory corruption (bnc#414635).
+- patches.fixes/ath5k-kill-tasklets-on-shutdown.patch: Ath5k:
+ kill tasklets on shutdown (bnc#414638).
+
+-------------------------------------------------------------------
+Mon Aug 4 20:56:15 CEST 2008 - gregkh@suse.de
+
+- README.BRANCH: added file.
+
+-------------------------------------------------------------------
+Mon Aug 4 13:37:56 CEST 2008 - olh@suse.de
+
+- disable CONFIG_SECURITY_ROOTPLUG because /init in initrd will
+ not run if USB is compiled in and a specific USB device is not
+ present
+
+-------------------------------------------------------------------
+Mon Aug 4 12:42:38 CEST 2008 - jslaby@suse.de
+
+- patches.fixes/tpm-write-data-types.patch: tpm: Use correct
+ data types for sizes in tpm_write() and tpm_read() (bnc#400211).
+
+-------------------------------------------------------------------
+Fri Aug 1 21:45:24 CEST 2008 - ghaskins@suse.de
+
+PI rework v0.5 and a fix from upstream for 26-rt1
+- patches.rt/26-rt1-chirag.patch: This patch should solve some
+ of the bug messages..
+- patches.rt/add-generalized-pi-interface.patch: add generalized
+ priority-inheritance interface.
+- patches.rt/tie-pi-into-task.patch: sched: add the basic PI
+ infrastructure to the task_struct.
+- patches.rt/rtmutex-initialize-waiters.patch: rtmutex: formally
+ initialize the rt_mutex_waiters.
+- patches.rt/rtmutex-add_readers.patch: RT: wrap the rt_rwlock
+ "add reader" logic.
+- patches.rt/rtmutex-use-runtime-init.patch: rtmutex: use runtime
+ init for rtmutexes.
+- patches.rt/rtmutex-convert-to-libpi.patch: rtmutex: convert
+ rtmutexes to fully use the PI library.
+- patches.rt/rtmutex-defer-pi-until-sleepy.patch: rtmutex:
+ pi-boost locks as late as possible.
+
+-------------------------------------------------------------------
+Fri Aug 1 16:16:29 CEST 2008 - schwab@suse.de
+
+- Reenable EFI_RTC.
+
+-------------------------------------------------------------------
+Fri Aug 1 14:12:30 CEST 2008 - trenn@suse.de
+
+- Update config files.
+ Unset on forgotten archs:
+ CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS
+
+-------------------------------------------------------------------
+Fri Aug 1 13:49:18 CEST 2008 - trenn@suse.de
+
+- patches.fixes/x86_hpet_amd_quirk.patch: Workaround a hpet BIOS
+ bug which is common on latest AMD driven boards (bnc#387053).
+
+-------------------------------------------------------------------
+Fri Aug 1 13:42:53 CEST 2008 - sassmann@suse.de
+
+Add boot interrupt patches from linux-2.6-tip
+- patches.arch/x86-acpi-reroute-PCI-interrupt-to-legacy-boot-interrupt.patch
+- patches.arch/x86-add-PCI-IDs-for-devices-that-need-boot-irq-quirk.patch
+- patches.arch/x86-disable-AMD-ATI-boot-interrupt-generation.patch
+- patches.arch/x86-disable-broadcomm-boot-interrupt-generation.patch
+- patches.arch/x86-disable-intel-boot-interrupt-generation.patch
+- patches.arch/x86-introduce-config-option-for-pci-reroute-quirks.patch
+- patches.arch/x86-introduce-pci-ioapicreroute-kernel-cmdline.patch
+- patches.arch/x86-introduce-pci-noioapicquirk-kernel-cmdline.patch
+- Update config files.
+ * reroute of boot interrupts is enabled for RT only!
+
+-------------------------------------------------------------------
+Thu Jul 31 19:30:14 CEST 2008 - sdietrich@suse.de
+
+Update to 2.6.26-rt1:
+- config.conf: Enable i386/x86_64 - RT / RT_debug
+- Update config files:
+ * Sync to default config.
+ * Disable (broken):
+ - Novell Netware Filesystem support (novfs) (EXPERIMENTAL) (NOVFS)
+ - ISP 1760 HCD support (USB_ISP1760_HCD)
+ - KDB
+ - QLogic InfiniPath Driver (INFINIBAND_IPATH)
+
+Remove obsolete patches:
+------------------------
+- patches.rt/arm-cmpxchg-support-armv6.patch: Delete.
+- patches.rt/arm-cmpxchg.patch: Delete.
+- patches.rt/arm-fix-atomic-cmpxchg.patch: Delete.
+- patches.rt/arm-leds-timer.patch: Delete.
+- patches.rt/arm-omap-03.patch: Delete.
+- patches.rt/arm-omap-04.patch: Delete.
+- patches.rt/disable-sched-rt-groups.patch: Delete.
+- patches.rt/drivers-edac-add-support-for-HS21XM-SMI-remediation:
+ Delete.
+- patches.rt/drivers-edac-add-support-for-HS21_LS21-SMI-remediation:
+ Delete.
+- patches.rt/drivers-edac-add-sysfs_notify-calls.patch: Delete.
+- patches.rt/drivers-edac-i5000-turn-off-unsupported-check:
+ Delete.
+- patches.rt/drivers-edac-new-amd64.patch: Delete.
+- patches.rt/drivers-edac-new-k8-rev-f.patch: Delete.
+- patches.rt/drivers-edac-prevent-potential-printk-storm: Delete.
+- patches.rt/drivers-edac-test_device.patch: Delete.
+- patches.rt/ep93xx-clockevents-fix.patch: Delete.
+- patches.rt/ep93xx-clockevents.patch: Delete.
+- patches.rt/ep93xx-timer-accuracy.patch: Delete.
+- patches.rt/fix-alternate_node_alloc.patch: Delete.
+- patches.rt/fix-irq-flags-size.patch: Delete.
+- patches.rt/foo.patch: Delete.
+- patches.rt/ftrace-add-nr_syscalls.patch: Delete.
+- patches.rt/ftrace-alloc-pages.patch: Delete.
+- patches.rt/ftrace-cpu-clock-update.patch: Delete.
+- patches.rt/ftrace-debug-use-preempt-disable-notrace.patch:
+ Delete.
+- patches.rt/ftrace-direct-calls.patch: Delete.
+- patches.rt/ftrace-disable-daemon.patch: Delete.
+- patches.rt/ftrace-dont-use-raw-irq-save.patch: Delete.
+- patches.rt/ftrace-eventtrace-fixup.patch: Delete.
+- patches.rt/ftrace-filter-functions.patch: Delete.
+- patches.rt/ftrace-fix-ip.patch: Delete.
+- patches.rt/ftrace-flip-fix.patch: Delete.
+- patches.rt/ftrace-handle-time-outside-of-lockdep.patch: Delete.
+- patches.rt/ftrace-irqsoff-smp-processor-id-fix.patch: Delete.
+- patches.rt/ftrace-lockdep-notrace-annotations.patch: Delete.
++++ 778 more lines (skipped)
++++ between kernel-source/kernel-s390.changes
++++ and /mounts/work_src_done/STABLE/kernel-source/kernel-s390.changes
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-vanilla.changes: same change
kernel-xen.changes: same change
New:
----
kernel-rt.changes
kernel-rt_debug.changes
kernel-rt_debug.spec
kernel-rt.spec
kernel-rt_timing.changes
kernel-rt_timing.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kernel-debug.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:14.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:14.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-debug (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-debug
Summary: A Debug Version of the Kernel
Version: 2.6.26
-Release: 1
+Release: 8
License: GPL v2 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -174,6 +181,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-debug debug $(case debug in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -191,7 +199,7 @@
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -559,4 +567,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ kernel-default.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:14.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:14.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-default (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-default
Summary: The Standard Kernel for both Uniprocessor and Multiprocessor Systems
Version: 2.6.26
-Release: 1
+Release: 9
License: GPL v2 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -193,6 +200,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-default default $(case default in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -209,7 +217,7 @@
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -577,4 +585,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ kernel-dummy.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:14.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:14.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-dummy (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -16,7 +23,7 @@
Name: kernel-dummy
Summary: Internal dummy package for synchronizing release numbers
Version: 2.6.26
-Release: 1
+Release: 9
License: GPL v2 or later
Group: System/Kernel
AutoReqProv: off
@@ -29,7 +36,7 @@
--------
Andreas Gruenbacher
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%install
rm -rf %buildroot
@@ -39,4 +46,3 @@
%files
%defattr(-, root, root)
/etc/dummy
-
++++++ kernel-kdump.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:15.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:15.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-kdump (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-kdump
Summary: kernel for kdump
Version: 2.6.26
-Release: 1
+Release: 9
License: GPL v2 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -171,6 +178,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-kdump kdump $(case kdump in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -190,7 +198,7 @@
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -558,4 +566,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ kernel-pae.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:15.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:15.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-pae (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-pae
Summary: Kernel with PAE Support
Version: 2.6.26
-Release: 1
+Release: 7
License: GPL v2 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -168,6 +175,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-pae pae $(case pae in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -191,7 +199,7 @@
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -559,4 +567,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ kernel-ppc64.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:15.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:15.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-ppc64 (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-ppc64
Summary: Kernel for ppc64 Systems
Version: 2.6.26
-Release: 1
+Release: 9
License: GPL v2 or later; LGPL v2.1 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -173,6 +180,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-ppc64 ppc64 $(case ppc64 in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -203,7 +211,7 @@
Tom Gall
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -571,4 +579,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ kernel-ps3.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:16.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:16.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-ps3 (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-ps3
Summary: kernel for ps3 bootloader
Version: 2.6.26
-Release: 1
+Release: 9
License: GPL v2 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -171,6 +178,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-ps3 ps3 $(case ps3 in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -189,7 +197,7 @@
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -557,4 +565,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ kernel-rt_debug.spec ++++++
++++ 22728 lines (skipped)
kernel-rt.spec: same change
kernel-rt_timing.spec: same change
++++++ kernel-s390.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:16.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:16.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-s390 (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-s390
Summary: The Standard Kernel
Version: 2.6.26
-Release: 1
+Release: 2
License: GPL v2 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -168,6 +175,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-s390 s390 $(case s390 in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -184,7 +192,7 @@
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -552,4 +560,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:17.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-source (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -23,7 +30,7 @@
Name: kernel-source
Summary: The Linux Kernel Sources
Version: 2.6.26
-Release: 1
+Release: 9
License: GPL v2 only
Group: Development/Sources
AutoReqProv: off
@@ -71,9 +78,12 @@
Source54: kernel-pae.spec
Source55: kernel-ppc64.spec
Source56: kernel-ps3.spec
-Source57: kernel-s390.spec
-Source58: kernel-vanilla.spec
-Source59: kernel-xen.spec
+Source57: kernel-rt.spec
+Source58: kernel-rt_debug.spec
+Source59: kernel-rt_timing.spec
+Source60: kernel-s390.spec
+Source61: kernel-vanilla.spec
+Source62: kernel-xen.spec
Source100: config.tar.bz2
Source101: patches.arch.tar.bz2
Source102: patches.drivers.tar.bz2
@@ -105,7 +115,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -201,12 +211,8 @@
../../../lib/modules/$krel/source
make clean $MAKE_ARGS
rm -f $o/.config.old
- # Replace absolute with relative paths.
- src="../../../linux-$KERNELRELEASE"
- out="../linux-$KERNELRELEASE-obj/$arch/$flavor"
- sed -e "s,$RPM_BUILD_ROOT,," \
- -e "s,\(^KERNELSRC[ \t]*:=[ \t]*\).*,\1$src," \
- -e "s,\(^KERNELOUTPUT[ \t]*:=[ \t]*\).*,\1$out," \
+ # Replace the absolute with a relative path
+ sed -e "s,/usr/src/linux-$KERNELRELEASE,../../../linux-$KERNELRELEASE,g" \
-i $o/Makefile
done
cd $RPM_BUILD_ROOT/usr/src/linux-$KERNELRELEASE-obj
@@ -285,4 +291,3 @@
%post -f source-post.sh
%files -f kernel-source.files
-
++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:17.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-syms (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -22,7 +29,7 @@
Name: kernel-syms
Summary: Kernel Symbol Versions (modversions)
Version: 2.6.26
-Release: 1
+Release: 9
License: GPL v2 or later
Group: Development/Sources
AutoReqProv: off
@@ -92,7 +99,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
echo "Architecture symbol(s):" %symbols
@@ -143,4 +150,3 @@
/usr/src/linux-*-obj
/boot/symsets-*-*.tar.gz
/lib/modules/*/build
-
++++++ kernel-vanilla.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:17.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:17.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-vanilla (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-vanilla
Summary: The Standard Kernel - without any SUSE patches
Version: 2.6.26
-Release: 1
+Release: 9
License: GPL v2 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -185,6 +192,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-vanilla vanilla $(case vanilla in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -201,7 +209,7 @@
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -569,4 +577,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ kernel-xen.spec ++++++
--- /var/tmp/diff_new_pack.Y30938/_old 2008-08-07 01:26:18.000000000 +0200
+++ /var/tmp/diff_new_pack.Y30938/_new 2008-08-07 01:26:18.000000000 +0200
@@ -2,9 +2,16 @@
# spec file for package kernel-xen (Version 2.6.26)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -43,7 +50,7 @@
Name: kernel-xen
Summary: The Xen Kernel
Version: 2.6.26
-Release: 1
+Release: 7
License: GPL v2 or later
Group: System/Kernel
Url: http://www.kernel.org/
@@ -171,6 +178,7 @@
Obsoletes: adm8211-kmp
Obsoletes: rt2x00-kmp
Obsoletes: rfswitch-kmp
+Obsoletes: uvcvideo-kmp
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,modversions,kabi-checks,install-configs})
%define symbols %(set -- kernel-xen xen $(case xen in (rt|rt_*) echo RT ;; esac) $(%_sourcedir/arch-symbols %_target_cpu) $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
# Provide the exported symbols as "ksym(symbol) = hash"
@@ -190,7 +198,7 @@
-Source Timestamp: 2008-07-17 18:46:12 +0200
+Source Timestamp: 2008-08-06 13:14:35 +0200
%prep
if ! [ -e %_sourcedir/linux-2.6.26.tar.bz2 ]; then
@@ -558,4 +566,3 @@
%postun -f postun.sh
%files -f kernel.files
-
++++++ build-source-timestamp ++++++
--- kernel-source/build-source-timestamp 2008-07-17 18:37:10.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/build-source-timestamp 2008-08-06 15:52:01.863746000 +0200
@@ -1 +1 @@
-2008-07-17 18:46:12 +0200
+2008-08-06 13:14:35 +0200
++++++ config.conf ++++++
--- kernel-source/config.conf 2008-07-17 18:37:17.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/config.conf 2008-08-06 15:52:12.216370000 +0200
@@ -7,8 +7,8 @@
#+IA32 i386/um
+IA32 i386/xen
+IA32 i386/vanilla
-#+IA32 i386/rt
-#+IA32 i386/rt_debug
++IA32 i386/rt
++IA32 i386/rt_debug
+ia64 ia64/default
+ia64 ia64/debug
@@ -19,8 +19,9 @@
+x86_64 x86_64/xen
+x86_64 x86_64/debug
+x86_64 x86_64/vanilla
-#+x86_64 x86_64/rt
-#+x86_64 x86_64/rt_debug
++x86_64 x86_64/rt
++x86_64 x86_64/rt_debug
++x86_64 x86_64/rt_timing
#+alpha alpha/default
++++++ config.tar.bz2 ++++++
++++ 21439 lines of diff (skipped)
++++++ kabi.tar.bz2 ++++++
++++++ modversions ++++++
--- kernel-source/modversions 2008-07-17 18:37:17.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/modversions 2008-08-06 15:52:12.679906000 +0200
@@ -1,5 +1,7 @@
#! /usr/bin/perl -w
+use File::Basename;
+use File::Path;
use File::Find;
use Getopt::Long;
use strict;
@@ -8,9 +10,40 @@
n => 'normal', t => 'typedef', e => 'enum', s => 'struct', u => 'union'
);
+my %definitions;
+my %override;
+my %override_locally;
+my %locally_unknown;
+my %locally_defined;
+
+sub expand_types($);
+sub expand_types($) {
+ my ($definition) = @_;
+ local ($_, $1, $2);
+
+ my @defn = split ' ', $definition;
+ for (@defn[1..$#defn]) {
+ if (/^(.)#(.*)/) {
+ #print "<<$defn[0] : $_>>\n";
+ next if exists $locally_defined{$_};
+ $locally_defined{$_} = 1;
+
+ if ($locally_unknown{$_}) {
+ print "$_ $symbol_type_name{$1} $2 { UNKNOWN } \n";
+ } else {
+ if (!exists $definitions{$_}) {
+ die "Missing definition of $symbol_type_name{$1} $2\n";
+ }
+ expand_types("$_ $definitions{$_}");
+ }
+ }
+ }
+ print "override " if $override_locally{$defn[0]};
+ print "$definition\n";
+}
+
sub pack_dump($$) {
my ($dir, $ext) = @_;
- my %definitions;
my @files;
$ext = ".symtypes" unless defined $ext;
@@ -27,19 +60,30 @@
while (<FD>) {
chomp;
+ my $override = "";
if (s/^override //) {
- print "override ";
+ $override = $&;
}
+
if (/^(\S)#(\S+)\s*(.*)/) {
my $sym = "$1#$2";
+ my $definition = $3;
if (/^$sym\s+$symbol_type_name{$1}\s+$2\s+{\s+UNKNOWN\s+}\s*$/) {
- $_ = substr($sym, 0, 1) . "##" . substr($sym, 2);
+ $_ = $override . substr($sym, 0, 1) . "##" . substr($sym, 2);
} else {
- if (exists $definitions{$sym} && $definitions{$sym} eq $3) {
- $_ = $sym;
+ if (exists $definitions{$sym} && $definitions{$sym} eq $definition) {
+ if (($override ne "") == (exists $override{$sym})) {
+ next;
+ }
+ $_ = "$override$sym";
} else {
- $definitions{$sym} = $3;
+ $definitions{$sym} = $definition;
+ if ($override eq "") {
+ delete $override{$sym};
+ } else {
+ $override{$sym} = 1;
+ }
}
}
}
@@ -52,7 +96,6 @@
sub unpack_dump($$) {
my ($dir, $ext) = @_;
- my %definitions;
$ext = ".symref" unless defined $ext;
@@ -62,32 +105,42 @@
if (/^\/\* (.*)\.o \*\//) {
close STDOUT;
+ mkpath(dirname("$dir/$1$ext"));
open STDOUT, "> $dir/$1$ext"
or die "$dir/$1$ext: $!\n";
+ %locally_defined = ();
+ %locally_unknown = ();
+ %override_locally = %override;
next;
}
- if (s/^override //) {
- print "override ";
- }
+
+ my $override = /^override\s/;
+
if (/^([^ ])#(#?)([^ ]+) *(.*)$/) {
my $sym = "$1#$3";
if ($4 ne "") {
- unless (/\s+{\s+UNKNOWN\s+}\s*$/) {
+ if (/\s+{\s+UNKNOWN\s+}\s*$/) {
+ $locally_unknown{$sym} = 1;
+ $override_locally{$sym} = $override;
+ } else {
$definitions{$sym} = $4;
+ $locally_unknown{$sym} = 0;
+ $override{$sym} = $override;
+ $override_locally{$sym} = $override;
}
- } elsif ($2 ne "") {
- $_ = "$sym $symbol_type_name{$1} $3 { UNKNOWN } ";
} else {
- $_ = "$sym $definitions{$sym}";
+ $locally_unknown{$sym} = ($2 ne "");
+ $override_locally{$sym} = $override;
}
+ next;
}
- print "$_\n";
+ expand_types($_);
}
}
my ($pack, $unpack, $ext);
-GetOptions("pack" => \$pack, "unpack" => \$unpack, "ext" => \$ext)
+GetOptions("pack" => \$pack, "unpack" => \$unpack, "ext:s" => \$ext)
&& ($pack || $unpack) && @ARGV == 1
or die "USAGE:\t$0 [--ext extension] --pack {dir} > file\n" .
"\t$0 [--ext extension] --unpack {dir} < file\n";
++++++ needed_space_in_mb ++++++
--- kernel-source/needed_space_in_mb 2008-07-19 01:01:27.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/needed_space_in_mb 2008-08-06 15:52:26.968611000 +0200
@@ -1 +1 @@
-6000
+6144
++++++ patches.addon.tar.bz2 ++++++
++++++ patches.apparmor.tar.bz2 ++++++
++++ 4388 lines of diff (skipped)
++++++ patches.arch.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/acpi_thermal_passive_blacklist.patch new/patches.arch/acpi_thermal_passive_blacklist.patch
--- old/patches.arch/acpi_thermal_passive_blacklist.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/acpi_thermal_passive_blacklist.patch 2008-07-29 17:39:12.000000000 +0200
@@ -0,0 +1,107 @@
+From: Thomas Renninger
+Subject: Avoid critical temp shutdowns on specific ThinkPad T4x(p) and R40
+References: https://bugzilla.novell.com/show_bug.cgi?id=333043
+Patch-Mainline: not yet
+
+---
+ drivers/acpi/thermal.c | 73 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 73 insertions(+)
+
+Index: linux-2.6.25-SL110_BRANCH/drivers/acpi/thermal.c
+===================================================================
+--- linux-2.6.25-SL110_BRANCH.orig/drivers/acpi/thermal.c
++++ linux-2.6.25-SL110_BRANCH/drivers/acpi/thermal.c
+@@ -42,6 +42,7 @@
+ #include
+ #include
+ #include
++#include
+ #include
+ #include
+ #include
+@@ -1576,6 +1577,66 @@ static int acpi_thermal_get_info(struct
+ return 0;
+ }
+
++static struct dmi_system_id thermal_psv_dmi_table[] = {
++ {
++ .ident = "IBM ThinkPad T41",
++ .matches = {
++ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
++ DMI_MATCH(DMI_PRODUCT_VERSION,"ThinkPad T41"),
++ },
++ },
++ {
++ .ident = "IBM ThinkPad T42",
++ .matches = {
++ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
++ DMI_MATCH(DMI_PRODUCT_VERSION,"ThinkPad T42"),
++ },
++ },
++ {
++ .ident = "IBM ThinkPad T43",
++ .matches = {
++ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
++ DMI_MATCH(DMI_PRODUCT_VERSION,"ThinkPad T43"),
++ },
++ },
++ {
++ .ident = "IBM ThinkPad T41p",
++ .matches = {
++ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
++ DMI_MATCH(DMI_PRODUCT_VERSION,"ThinkPad T41p"),
++ },
++ },
++ {
++ .ident = "IBM ThinkPad T42p",
++ .matches = {
++ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
++ DMI_MATCH(DMI_PRODUCT_VERSION,"ThinkPad T42p"),
++ },
++ },
++ {
++ .ident = "IBM ThinkPad T43p",
++ .matches = {
++ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
++ DMI_MATCH(DMI_PRODUCT_VERSION,"ThinkPad T43p"),
++ },
++ },
++ {
++ .ident = "IBM ThinkPad R40",
++ .matches = {
++ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
++ DMI_MATCH(DMI_PRODUCT_VERSION,"ThinkPad R40"),
++ },
++ },
++ {
++ .ident = "IBM ThinkPad R50p",
++ .matches = {
++ DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
++ DMI_MATCH(DMI_PRODUCT_VERSION,"ThinkPad R50p"),
++ },
++ },
++ {},
++};
++
+ static int acpi_thermal_add(struct acpi_device *device)
+ {
+ int result = 0;
+@@ -1606,6 +1667,18 @@ static int acpi_thermal_add(struct acpi_
+ if (result)
+ goto free_memory;
+
++ if (dmi_check_system(thermal_psv_dmi_table)) {
++ if (tz->trips.passive.flags.valid &&
++ tz->trips.passive.temperature > CELSIUS_TO_KELVIN(85)) {
++ printk (KERN_INFO "Adjust passive trip point from %lu"
++ " to %lu\n",
++ KELVIN_TO_CELSIUS(tz->trips.passive.temperature),
++ KELVIN_TO_CELSIUS(tz->trips.passive.temperature - 150));
++ tz->trips.passive.temperature -= 150;
++ acpi_thermal_set_polling(tz, 5);
++ }
++ }
++
+ result = acpi_thermal_add_fs(device);
+ if (result)
+ goto unregister_thermal_zone;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86-acpi-reroute-PCI-interrupt-to-legacy-boot-interrupt.patch new/patches.arch/x86-acpi-reroute-PCI-interrupt-to-legacy-boot-interrupt.patch
--- old/patches.arch/x86-acpi-reroute-PCI-interrupt-to-legacy-boot-interrupt.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86-acpi-reroute-PCI-interrupt-to-legacy-boot-interrupt.patch 2008-08-01 14:01:16.000000000 +0200
@@ -0,0 +1,153 @@
+From: Stefan Assmann
+Subject: pci, acpi: reroute PCI interrupt to legacy boot interrupt equivalent
+
+Some chipsets (e.g. intel 6700PXH) generate a legacy INTx when the
+IRQ entry in the chipset's IO-APIC is masked (as, e.g. the RT kernel
+does during interrupt handling). On chipsets where this INTx generation
+cannot be disabled, we reroute the valid interrupts to their legacy
+equivalent to get rid of spurious interrupts that might otherwise bring
+down (vital) interrupt lines through spurious interrupt detection in
+note_interrupt().
+
+This patch benefited from discussions with Alexander Graf, Torsten Duwe,
+Ihno Krumreich, Daniel Gollub, Hannes Reinecke. The conclusions we drew
+and the patch itself are the authors' responsibility alone.
+
+Signed-off-by: Stefan Assmann
+Signed-off-by: Olaf Dabrunz
+Signed-off-by: Ingo Molnar
+---
+ drivers/acpi/pci_irq.c | 56 +++++++++++++++++++++++++++++++++++++++++++++++++
+ drivers/pci/quirks.c | 26 ++++++++++++++++++++++
+ include/linux/pci.h | 6 +++++
+ 3 files changed, 88 insertions(+)
+
+--- a/drivers/acpi/pci_irq.c
++++ b/drivers/acpi/pci_irq.c
+@@ -384,6 +384,27 @@ acpi_pci_free_irq(struct acpi_prt_entry
+ return irq;
+ }
+
++#ifdef CONFIG_X86_IO_APIC
++extern int noioapicquirk;
++
++static int bridge_has_boot_interrupt_variant(struct pci_bus *bus)
++{
++ struct pci_bus *bus_it;
++
++ for (bus_it = bus ; bus_it ; bus_it = bus_it->parent) {
++ if (!bus_it->self)
++ return 0;
++
++ printk(KERN_INFO "vendor=%04x device=%04x\n", bus_it->self->vendor,
++ bus_it->self->device);
++
++ if (bus_it->self->irq_reroute_variant)
++ return bus_it->self->irq_reroute_variant;
++ }
++ return 0;
++}
++#endif /* CONFIG_X86_IO_APIC */
++
+ /*
+ * acpi_pci_irq_lookup
+ * success: return IRQ >= 0
+@@ -413,6 +434,41 @@ acpi_pci_irq_lookup(struct pci_bus *bus,
+ }
+
+ ret = func(entry, triggering, polarity, link);
++
++#ifdef CONFIG_X86_IO_APIC
++ /*
++ * Some chipsets (e.g. intel 6700PXH) generate a legacy INTx when the
++ * IRQ entry in the chipset's IO-APIC is masked (as, e.g. the RT kernel
++ * does during interrupt handling). When this INTx generation cannot be
++ * disabled, we reroute these interrupts to their legacy equivalent to
++ * get rid of spurious interrupts.
++ */
++ if (!noioapicquirk) {
++ switch (bridge_has_boot_interrupt_variant(bus)) {
++ case 0:
++ /* no rerouting necessary */
++ break;
++
++ case INTEL_IRQ_REROUTE_VARIANT:
++ /*
++ * Remap according to INTx routing table in 6700PXH
++ * specs, intel order number 302628-002, section
++ * 2.15.2. Other chipsets (80332, ...) have the same
++ * mapping and are handled here as well.
++ */
++ printk(KERN_INFO "pci irq %d -> rerouted to legacy "
++ "irq %d\n", ret, (ret % 4) + 16);
++ ret = (ret % 4) + 16;
++ break;
++
++ default:
++ printk(KERN_INFO "not rerouting irq %d to legacy irq: "
++ "unknown mapping\n", ret);
++ break;
++ }
++ }
++#endif /* CONFIG_X86_IO_APIC */
++
+ return ret;
+ }
+
+--- a/drivers/pci/quirks.c
++++ b/drivers/pci/quirks.c
+@@ -1365,6 +1365,32 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
+
+ #ifdef CONFIG_X86_IO_APIC
+ /*
++ * Boot interrupts on some chipsets cannot be turned off. For these chipsets,
++ * remap the original interrupt in the linux kernel to the boot interrupt, so
++ * that a PCI device's interrupt handler is installed on the boot interrupt
++ * line instead.
++ */
++static void quirk_reroute_to_boot_interrupts_intel(struct pci_dev *dev)
++{
++ if (noioapicquirk)
++ return;
++
++ dev->irq_reroute_variant = INTEL_IRQ_REROUTE_VARIANT;
++
++ printk(KERN_INFO "PCI quirk: reroute interrupts for 0x%04x:0x%04x\n",
++ dev->vendor, dev->device);
++ return;
++}
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_80333_0, quirk_reroute_to_boot_interrupts_intel);
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_80333_1, quirk_reroute_to_boot_interrupts_intel);
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ESB2_0, quirk_reroute_to_boot_interrupts_intel);
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PXH_0, quirk_reroute_to_boot_interrupts_intel);
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PXH_1, quirk_reroute_to_boot_interrupts_intel);
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_PXHV, quirk_reroute_to_boot_interrupts_intel);
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_80332_0, quirk_reroute_to_boot_interrupts_intel);
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_80332_1, quirk_reroute_to_boot_interrupts_intel);
++
++/*
+ * On some chipsets we can disable the generation of legacy INTx boot
+ * interrupts.
+ */
+--- a/include/linux/pci.h
++++ b/include/linux/pci.h
+@@ -117,6 +117,11 @@ enum pci_dev_flags {
+ PCI_DEV_FLAGS_MSI_INTX_DISABLE_BUG = (__force pci_dev_flags_t) 1,
+ };
+
++enum pci_irq_reroute_variant {
++ INTEL_IRQ_REROUTE_VARIANT = 1,
++ MAX_IRQ_REROUTE_VARIANTS = 3
++};
++
+ typedef unsigned short __bitwise pci_bus_flags_t;
+ enum pci_bus_flags {
+ PCI_BUS_FLAGS_NO_MSI = (__force pci_bus_flags_t) 1,
+@@ -194,6 +199,7 @@ struct pci_dev {
+ unsigned int no_d1d2:1; /* only allow d0 or d3 */
+ unsigned int block_ucfg_access:1; /* userspace config space access is blocked */
+ unsigned int broken_parity_status:1; /* Device generates false positive parity */
++ unsigned int irq_reroute_variant:2; /* device needs IRQ rerouting variant */
+ unsigned int msi_enabled:1;
+ unsigned int msix_enabled:1;
+ unsigned int is_managed:1;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86-add-PCI-IDs-for-devices-that-need-boot-irq-quirk.patch new/patches.arch/x86-add-PCI-IDs-for-devices-that-need-boot-irq-quirk.patch
--- old/patches.arch/x86-add-PCI-IDs-for-devices-that-need-boot-irq-quirk.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86-add-PCI-IDs-for-devices-that-need-boot-irq-quirk.patch 2008-08-01 14:01:16.000000000 +0200
@@ -0,0 +1,31 @@
+From: Olaf Dabrunz
+Subject: pci: add PCI IDs for devices that need boot irq quirks
+
+Signed-off-by: Stefan Assmann
+Signed-off-by: Olaf Dabrunz
+Signed-off-by: Ingo Molnar
+---
+ include/linux/pci_ids.h | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+--- a/include/linux/pci_ids.h
++++ b/include/linux/pci_ids.h
+@@ -2235,6 +2235,10 @@
+ #define PCI_DEVICE_ID_INTEL_PXH_0 0x0329
+ #define PCI_DEVICE_ID_INTEL_PXH_1 0x032A
+ #define PCI_DEVICE_ID_INTEL_PXHV 0x032C
++#define PCI_DEVICE_ID_INTEL_80332_0 0x0330
++#define PCI_DEVICE_ID_INTEL_80332_1 0x0332
++#define PCI_DEVICE_ID_INTEL_80333_0 0x0370
++#define PCI_DEVICE_ID_INTEL_80333_1 0x0372
+ #define PCI_DEVICE_ID_INTEL_82375 0x0482
+ #define PCI_DEVICE_ID_INTEL_82424 0x0483
+ #define PCI_DEVICE_ID_INTEL_82378 0x0484
+@@ -2307,6 +2311,7 @@
+ #define PCI_DEVICE_ID_INTEL_ESB_4 0x25a4
+ #define PCI_DEVICE_ID_INTEL_ESB_5 0x25a6
+ #define PCI_DEVICE_ID_INTEL_ESB_9 0x25ab
++#define PCI_DEVICE_ID_INTEL_ESB_10 0x25ac
+ #define PCI_DEVICE_ID_INTEL_82820_HB 0x2500
+ #define PCI_DEVICE_ID_INTEL_82820_UP_HB 0x2501
+ #define PCI_DEVICE_ID_INTEL_82850_HB 0x2530
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86-disable-AMD-ATI-boot-interrupt-generation.patch new/patches.arch/x86-disable-AMD-ATI-boot-interrupt-generation.patch
--- old/patches.arch/x86-disable-AMD-ATI-boot-interrupt-generation.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86-disable-AMD-ATI-boot-interrupt-generation.patch 2008-08-01 14:01:16.000000000 +0200
@@ -0,0 +1,99 @@
+From: Olaf Dabrunz
+
+Subject: Disable AMD/ATI legacy boot interrupt generation
+
+Add quirks for several AMD/ATI chipsets to prevent generation of legacy boot
+interrupts.
+
+Signed-off-by: Olaf Dabrunz
+Signed-off-by: Stefan Assmann
+---
+ drivers/pci/quirks.c | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 77 insertions(+)
+
+--- a/drivers/pci/quirks.c
++++ b/drivers/pci/quirks.c
+@@ -1449,6 +1449,83 @@ static void quirk_disable_broadcom_boot_
+ "0x%04x:0x%04x\n", dev->vendor, dev->device);
+ }
+ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_HT1000SB, quirk_disable_broadcom_boot_interrupt);
++
++/*
++ * disable boot interrupts on AMD and ATI chipsets
++ */
++#define AMD_813X_MISC 0x40
++#define AMD_813X_NOIOAMODE 1
++
++static void quirk_disable_amd_813x_boot_interrupt(struct pci_dev *dev)
++{
++ u32 pci_config_dword;
++
++ if (noioapicquirk)
++ return;
++
++ pci_read_config_dword(dev, AMD_813X_MISC, &pci_config_dword);
++ pci_config_dword |= AMD_813X_NOIOAMODE;
++ pci_write_config_dword(dev, AMD_813X_MISC, pci_config_dword);
++
++ printk(KERN_INFO "disabled boot interrupts on PCI device "
++ "0x%04x:0x%04x\n", dev->vendor, dev->device);
++}
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_8131_BRIDGE, quirk_disable_amd_813x_boot_interrupt);
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_8132_BRIDGE, quirk_disable_amd_813x_boot_interrupt);
++
++#define AMD_8111_PCI_IRQ_ROUTING 0x56
++
++static void quirk_disable_amd_8111_boot_interrupt(struct pci_dev *dev)
++{
++ u16 pci_config_word;
++
++ if (noioapicquirk)
++ return;
++
++ pci_read_config_word(dev, AMD_8111_PCI_IRQ_ROUTING, &pci_config_word);
++ if (!pci_config_word) {
++ printk(KERN_INFO "boot interrupts on PCI device 0x%04x:0x%04x "
++ "already disabled\n",
++ dev->vendor, dev->device);
++ return;
++ }
++ pci_write_config_word(dev, AMD_8111_PCI_IRQ_ROUTING, 0);
++ printk(KERN_INFO "disabled boot interrupts on PCI device "
++ "0x%04x:0x%04x\n", dev->vendor, dev->device);
++}
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_8111_SMBUS, quirk_disable_amd_8111_boot_interrupt);
++
++/*
++ * disable PCI boot interrupt mapping to PIC / first IO-APIC on SB700S
++ */
++#define AMD_SB700S_MAP_REG 0x64
++#define AMD_SB700S_MAP_ENABLE (1<<0)
++#define AMD_SB700S_IRQ_IDX 0xC00
++#define AMD_SB700S_IRQ_DATA 0xC01
++
++static void quirk_disable_amd_sb700s_boot_interrupt(struct pci_dev *dev)
++{
++ u32 pci_config_dword;
++ int i, irqs[] = {0x0, 0x1, 0x2, 0x3, 0x4, 0x9, 0xa, 0xb, 0xc};
++
++ if (noioapicquirk)
++ return;
++
++ pci_read_config_dword(dev, AMD_SB700S_MAP_REG, &pci_config_dword);
++ pci_write_config_dword(dev, AMD_SB700S_MAP_REG, pci_config_dword |
++ AMD_SB700S_MAP_ENABLE);
++
++ for (i = 0; i < ARRAY_SIZE(irqs); i++) {
++ outb(irqs[i], AMD_SB700S_IRQ_IDX);
++ outb(0x00, AMD_SB700S_IRQ_DATA);
++ }
++
++ pci_write_config_dword(dev, AMD_SB700S_MAP_REG, pci_config_dword);
++
++ printk(KERN_INFO "disabled boot interrupts on PCI device "
++ "0x%04x:0x%04x\n", dev->vendor, dev->device);
++}
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SBX00_SMBUS, quirk_disable_amd_sb700s_boot_interrupt);
+ #endif /* CONFIG_X86_IO_APIC */
+
+ /*
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86-disable-broadcomm-boot-interrupt-generation.patch new/patches.arch/x86-disable-broadcomm-boot-interrupt-generation.patch
--- old/patches.arch/x86-disable-broadcomm-boot-interrupt-generation.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86-disable-broadcomm-boot-interrupt-generation.patch 2008-08-01 14:01:16.000000000 +0200
@@ -0,0 +1,51 @@
+From: Olaf Dabrunz
+
+Subject: Add quirk to disable boot interrupt generation on broadcom HT1000
+
+Signed-off-by: Olaf Dabrunz
+Signed-off-by: Stefan Assmann
+---
+ drivers/pci/quirks.c | 32 ++++++++++++++++++++++++++++++++
+ 1 file changed, 32 insertions(+)
+
+--- a/drivers/pci/quirks.c
++++ b/drivers/pci/quirks.c
+@@ -1417,6 +1417,38 @@ static void quirk_disable_intel_boot_int
+ dev->vendor, dev->device);
+ }
+ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ESB_10, quirk_disable_intel_boot_interrupt);
++
++/*
++ * disable boot interrupts on HT-1000
++ */
++#define BC_HT1000_FEATURE_REG 0x64
++#define BC_HT1000_PIC_REGS_ENABLE (1<<0)
++#define BC_HT1000_MAP_IDX 0xC00
++#define BC_HT1000_MAP_DATA 0xC01
++
++static void quirk_disable_broadcom_boot_interrupt(struct pci_dev *dev)
++{
++ u32 pci_config_dword;
++ u8 irq;
++
++ if (noioapicquirk)
++ return;
++
++ pci_read_config_dword(dev, BC_HT1000_FEATURE_REG, &pci_config_dword);
++ pci_write_config_dword(dev, BC_HT1000_FEATURE_REG, pci_config_dword |
++ BC_HT1000_PIC_REGS_ENABLE);
++
++ for (irq = 0x10; irq < 0x10 + 32; irq++) {
++ outb(irq, BC_HT1000_MAP_IDX);
++ outb(0x00, BC_HT1000_MAP_DATA);
++ }
++
++ pci_write_config_dword(dev, BC_HT1000_FEATURE_REG, pci_config_dword);
++
++ printk(KERN_INFO "disabled boot interrupts on PCI device"
++ "0x%04x:0x%04x\n", dev->vendor, dev->device);
++}
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SERVERWORKS, PCI_DEVICE_ID_SERVERWORKS_HT1000SB, quirk_disable_broadcom_boot_interrupt);
+ #endif /* CONFIG_X86_IO_APIC */
+
+ /*
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86-disable-intel-boot-interrupt-generation.patch new/patches.arch/x86-disable-intel-boot-interrupt-generation.patch
--- old/patches.arch/x86-disable-intel-boot-interrupt-generation.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86-disable-intel-boot-interrupt-generation.patch 2008-08-01 14:01:16.000000000 +0200
@@ -0,0 +1,56 @@
+From: Stefan Assmann
+Subject: pci: add quirk to disable boot interrupt generation on intel 6300ESB
+
+Add a quirk to disable legacy boot interrupt generation on intel devices
+that support disabling it.
+
+This patch benefited from discussions with Alexander Graf, Torsten Duwe,
+Ihno Krumreich, Daniel Gollub, Hannes Reinecke. The conclusions we drew
+and the patch itself are the authors' responsibility alone.
+
+Signed-off-by: Stefan Assmann
+Signed-off-by: Olaf Dabrunz
+Signed-off-by: Ingo Molnar
+---
+ drivers/pci/quirks.c | 30 ++++++++++++++++++++++++++++++
+ 1 file changed, 30 insertions(+)
+
+--- a/drivers/pci/quirks.c
++++ b/drivers/pci/quirks.c
+@@ -1363,6 +1363,36 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
+ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x260a, quirk_intel_pcie_pm);
+ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x260b, quirk_intel_pcie_pm);
+
++#ifdef CONFIG_X86_IO_APIC
++/*
++ * On some chipsets we can disable the generation of legacy INTx boot
++ * interrupts.
++ */
++
++/*
++ * IO-APIC1 on 6300ESB generates boot interrupts, see intel order no
++ * 300641-004US, section 5.7.3.
++ */
++#define INTEL_6300_IOAPIC_ABAR 0x40
++#define INTEL_6300_DISABLE_BOOT_IRQ (1<<14)
++
++static void quirk_disable_intel_boot_interrupt(struct pci_dev *dev)
++{
++ u16 pci_config_word;
++
++ if (noioapicquirk)
++ return;
++
++ pci_read_config_word(dev, INTEL_6300_IOAPIC_ABAR, &pci_config_word);
++ pci_config_word |= INTEL_6300_DISABLE_BOOT_IRQ;
++ pci_write_config_word(dev, INTEL_6300_IOAPIC_ABAR, pci_config_word);
++
++ printk(KERN_INFO "disabled boot interrupt on device 0x%04x:0x%04x\n",
++ dev->vendor, dev->device);
++}
++DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ESB_10, quirk_disable_intel_boot_interrupt);
++#endif /* CONFIG_X86_IO_APIC */
++
+ /*
+ * Toshiba TC86C001 IDE controller reports the standard 8-byte BAR0 size
+ * but the PIO transfers won't work if BAR0 falls at the odd 8 bytes.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86-introduce-config-option-for-pci-reroute-quirks.patch new/patches.arch/x86-introduce-config-option-for-pci-reroute-quirks.patch
--- old/patches.arch/x86-introduce-config-option-for-pci-reroute-quirks.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86-introduce-config-option-for-pci-reroute-quirks.patch 2008-08-01 14:01:16.000000000 +0200
@@ -0,0 +1,123 @@
+From: Stefan Assmann
+Subject: Introduce config option for pci reroute quirks
+
+The config option X86_REROUTE_FOR_BROKEN_BOOT_IRQS is introduced to
+enable (or disable) the redirection of the interrupt handler to the boot
+interrupt line by default. Depending on the existence of interrupt
+masking / threaded interrupt handling in the kernel (vanilla, rt, ...)
+and the maturity of the rerouting patch, users can enable or disable the
+redirection by default.
+
+This means that the reroute quirk can be applied to any kernel without
+changing it.
+
+Interrupt sharing could be increased if this option is enabled. However this
+option is vital for threaded interrupt handling, as done by the RT kernel.
+It should simplify the consolidation with the RT kernel.
+
+The option can be overridden by either pci=ioapicreroute or
+pci=noioapicreroute.
+
+Signed-off-by: Stefan Assmann
+Signed-off-by: Olaf Dabrunz
+---
+ Documentation/kernel-parameters.txt | 4 ++++
+ arch/x86/Kconfig | 24 ++++++++++++++++++++++++
+ arch/x86/pci/common.c | 8 ++++++++
+ drivers/pci/quirks.c | 2 +-
+ include/asm-x86/pci.h | 2 +-
+ 5 files changed, 38 insertions(+), 2 deletions(-)
+
+--- a/arch/x86/pci/common.c
++++ b/arch/x86/pci/common.c
+@@ -23,7 +23,11 @@ unsigned int pci_probe = PCI_PROBE_BIOS
+ static int pci_bf_sort;
+ int pci_routeirq;
+ int noioapicquirk;
++#ifdef CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS
++int noioapicreroute = 0;
++#else
+ int noioapicreroute = 1;
++#endif
+ int pcibios_last_bus = -1;
+ unsigned long pirq_table_addr;
+ struct pci_bus *pci_root_bus;
+@@ -504,6 +508,10 @@ char * __devinit pcibios_setup(char *st
+ if (noioapicreroute != -1)
+ noioapicreroute = 0;
+ return NULL;
++ } else if (!strcmp(str, "noioapicreroute")) {
++ if (noioapicreroute != -1)
++ noioapicreroute = 1;
++ return NULL;
+ }
+ return str;
+ }
+--- a/include/asm-x86/pci.h
++++ b/include/asm-x86/pci.h
+@@ -19,7 +19,7 @@ struct pci_sysdata {
+ };
+
+ extern int noioapicquirk;
+-extern int ioapicreroute;
++extern int noioapicreroute;
+
+ /* scan a bus after allocating a pci_sysdata for it */
+ extern struct pci_bus *pci_scan_bus_on_node(int busno, struct pci_ops *ops,
+--- a/drivers/pci/quirks.c
++++ b/drivers/pci/quirks.c
+@@ -1372,7 +1372,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
+ */
+ static void quirk_reroute_to_boot_interrupts_intel(struct pci_dev *dev)
+ {
+- if (noioapicquirk)
++ if (noioapicquirk || noioapicreroute)
+ return;
+
+ dev->irq_reroute_variant = INTEL_IRQ_REROUTE_VARIANT;
+--- a/Documentation/kernel-parameters.txt
++++ b/Documentation/kernel-parameters.txt
+@@ -1491,6 +1491,10 @@ and is between 256 and 4096 characters.
+ primary IO-APIC for bridges that cannot disable
+ boot IRQs. This fixes a source of spurious IRQs
+ when the system masks IRQs.
++ noioapicreroute [APIC] Disable workaround that uses the
++ boot IRQ equivalent of an IRQ that connects to
++ a chipset where boot IRQs cannot be disabled.
++ The opposite of ioapicreroute.
+ biosirq [X86-32] Use PCI BIOS calls to get the interrupt
+ routing table. These calls are known to be buggy
+ on several machines and they hang the machine
+--- a/arch/x86/Kconfig
++++ b/arch/x86/Kconfig
+@@ -596,6 +596,30 @@ config SCHED_MC
+
+ source "kernel/Kconfig.preempt"
+
++config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
++ bool "Reroute for broken boot IRQs"
++ default n
++ depends on X86_IO_APIC
++ help
++ This option enables a workaround that fixes a source of
++ spurious interrupts. This is recommended when threaded
++ interrupt handling is used on systems where the generation of
++ superfluous "boot interrupts" cannot be disabled.
++
++ Some chipsets generate a legacy INTx "boot IRQ" when the IRQ
++ entry in the chipset's IO-APIC is masked (as, e.g. the RT
++ kernel does during interrupt handling). On chipsets where this
++ boot IRQ generation cannot be disabled, this workaround keeps
++ the original IRQ line masked so that only the equivalent "boot
++ IRQ" is delivered to the CPUs. The workaround also tells the
++ kernel to set up the IRQ handler on the boot IRQ line. In this
++ way only one interrupt is delivered to the kernel. Otherwise
++ the spurious second interrupt may cause the kernel to bring
++ down (vital) interrupt lines.
++
++ Only affects "broken" chipsets. Interrupt sharing may be
++ increased on these systems.
++
+ config X86_UP_APIC
+ bool "Local APIC support on uniprocessors"
+ depends on X86_32 && !SMP && !(X86_VISWS || X86_VOYAGER || X86_GENERICARCH)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86-introduce-pci-ioapicreroute-kernel-cmdline.patch new/patches.arch/x86-introduce-pci-ioapicreroute-kernel-cmdline.patch
--- old/patches.arch/x86-introduce-pci-ioapicreroute-kernel-cmdline.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86-introduce-pci-ioapicreroute-kernel-cmdline.patch 2008-08-01 14:01:16.000000000 +0200
@@ -0,0 +1,77 @@
+From: Stefan Assmann
+Subject: x86, pci: introduce pci=ioapicreroute kernel cmdline option
+
+Introduce pci=ioapicreroute kernel cmdline option to enable rerouting of boot
+interrupts to the primary io-apic.
+
+Signed-off-by: Stefan Assmann
+Signed-off-by: Olaf Dabrunz
+Signed-off-by: Ingo Molnar
+---
+ Documentation/kernel-parameters.txt | 4 ++++
+ arch/x86/pci/common.c | 5 +++++
+ include/asm-x86/io_apic.h | 4 ++++
+ include/asm-x86/pci.h | 1 +
+ 4 files changed, 14 insertions(+)
+
+--- a/Documentation/kernel-parameters.txt
++++ b/Documentation/kernel-parameters.txt
+@@ -1487,6 +1487,10 @@ and is between 256 and 4096 characters.
+ noioapicquirk [APIC] Disable all boot interrupt quirks.
+ Safety option to keep boot IRQs enabled. This
+ should never be necessary.
++ ioapicreroute [APIC] Enable rerouting of boot IRQs to the
++ primary IO-APIC for bridges that cannot disable
++ boot IRQs. This fixes a source of spurious IRQs
++ when the system masks IRQs.
+ biosirq [X86-32] Use PCI BIOS calls to get the interrupt
+ routing table. These calls are known to be buggy
+ on several machines and they hang the machine
+--- a/arch/x86/pci/common.c
++++ b/arch/x86/pci/common.c
+@@ -23,6 +23,7 @@ unsigned int pci_probe = PCI_PROBE_BIOS
+ static int pci_bf_sort;
+ int pci_routeirq;
+ int noioapicquirk;
++int noioapicreroute = 1;
+ int pcibios_last_bus = -1;
+ unsigned long pirq_table_addr;
+ struct pci_bus *pci_root_bus;
+@@ -499,6 +500,10 @@ char * __devinit pcibios_setup(char *st
+ } else if (!strcmp(str, "noioapicquirk")) {
+ noioapicquirk = 1;
+ return NULL;
++ } else if (!strcmp(str, "ioapicreroute")) {
++ if (noioapicreroute != -1)
++ noioapicreroute = 0;
++ return NULL;
+ }
+ return str;
+ }
+--- a/include/asm-x86/pci.h
++++ b/include/asm-x86/pci.h
+@@ -19,6 +19,7 @@ struct pci_sysdata {
+ };
+
+ extern int noioapicquirk;
++extern int ioapicreroute;
+
+ /* scan a bus after allocating a pci_sysdata for it */
+ extern struct pci_bus *pci_scan_bus_on_node(int busno, struct pci_ops *ops,
+--- a/include/asm-x86/io_apic.h
++++ b/include/asm-x86/io_apic.h
+@@ -140,10 +140,14 @@ extern int skip_ioapic_setup;
+ /* 1 if "noapic" boot option passed */
+ extern int noioapicquirk;
+
++/* -1 if "noapic" boot option passed */
++extern int noioapicreroute;
++
+ static inline void disable_ioapic_setup(void)
+ {
+ #ifdef CONFIG_PCI
+ noioapicquirk = 1;
++ noioapicreroute = -1;
+ #endif
+ skip_ioapic_setup = 1;
+ }
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86-introduce-pci-noioapicquirk-kernel-cmdline.patch new/patches.arch/x86-introduce-pci-noioapicquirk-kernel-cmdline.patch
--- old/patches.arch/x86-introduce-pci-noioapicquirk-kernel-cmdline.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86-introduce-pci-noioapicquirk-kernel-cmdline.patch 2008-08-01 14:01:16.000000000 +0200
@@ -0,0 +1,76 @@
+From: Stefan Assmann
+Subject: x86, pci: introduce pci=noioapicquirk kernel cmdline option
+
+Introduce pci=noioapicquirk kernel cmdline option to disable all boot
+interrupt quirks
+
+Signed-off-by: Stefan Assmann
+Signed-off-by: Olaf Dabrunz
+Signed-off-by: Ingo Molnar
+---
+ Documentation/kernel-parameters.txt | 3 +++
+ arch/x86/pci/common.c | 4 ++++
+ include/asm-x86/io_apic.h | 6 ++++++
+ include/asm-x86/pci.h | 2 ++
+ 4 files changed, 15 insertions(+)
+
+--- a/Documentation/kernel-parameters.txt
++++ b/Documentation/kernel-parameters.txt
+@@ -1484,6 +1484,9 @@ and is between 256 and 4096 characters.
+ nomsi [MSI] If the PCI_MSI kernel config parameter is
+ enabled, this kernel boot option can be used to
+ disable the use of MSI interrupts system-wide.
++ noioapicquirk [APIC] Disable all boot interrupt quirks.
++ Safety option to keep boot IRQs enabled. This
++ should never be necessary.
+ biosirq [X86-32] Use PCI BIOS calls to get the interrupt
+ routing table. These calls are known to be buggy
+ on several machines and they hang the machine
+--- a/arch/x86/pci/common.c
++++ b/arch/x86/pci/common.c
+@@ -22,6 +22,7 @@ unsigned int pci_probe = PCI_PROBE_BIOS
+
+ static int pci_bf_sort;
+ int pci_routeirq;
++int noioapicquirk;
+ int pcibios_last_bus = -1;
+ unsigned long pirq_table_addr;
+ struct pci_bus *pci_root_bus;
+@@ -495,6 +496,9 @@ char * __devinit pcibios_setup(char *st
+ } else if (!strcmp(str, "skip_isa_align")) {
+ pci_probe |= PCI_CAN_SKIP_ISA_ALIGN;
+ return NULL;
++ } else if (!strcmp(str, "noioapicquirk")) {
++ noioapicquirk = 1;
++ return NULL;
+ }
+ return str;
+ }
+--- a/include/asm-x86/io_apic.h
++++ b/include/asm-x86/io_apic.h
+@@ -137,8 +137,14 @@ extern int sis_apic_bug;
+ /* 1 if "noapic" boot option passed */
+ extern int skip_ioapic_setup;
+
++/* 1 if "noapic" boot option passed */
++extern int noioapicquirk;
++
+ static inline void disable_ioapic_setup(void)
+ {
++#ifdef CONFIG_PCI
++ noioapicquirk = 1;
++#endif
+ skip_ioapic_setup = 1;
+ }
+
+--- a/include/asm-x86/pci.h
++++ b/include/asm-x86/pci.h
+@@ -18,6 +18,8 @@ struct pci_sysdata {
+ #endif
+ };
+
++extern int noioapicquirk;
++
+ /* scan a bus after allocating a pci_sysdata for it */
+ extern struct pci_bus *pci_scan_bus_on_node(int busno, struct pci_ops *ops,
+ int node);
++++++ patches.fixes.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/acpi_use_acpi_exception.patch new/patches.fixes/acpi_use_acpi_exception.patch
--- old/patches.fixes/acpi_use_acpi_exception.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/acpi_use_acpi_exception.patch 2008-07-29 17:39:12.000000000 +0200
@@ -0,0 +1,72 @@
+From: Thomas Renninger
+Subject: ACPI dock/bay: Use ACPI_EXCEPTION instead of printk(KERN_ERR
+Patch-Mainline: not yet
+
+Getting this error:
+ACPI: \_SB_.PCI0.IDE1.PRI_.MAST: found ejectable bay
+ACPI: \_SB_.PCI0.IDE1.PRI_.MAST: Adding notify handler
+ACPI: Error installing bay notify handler
+
+there could be various reasons why installing the notify handler failed.
+It is expected that the dock driver already has installed the notify
+handler for this device, but this is not clear.
+printk suppresses this information.
+The return value of the previous called and failed acpica function
+holds this information and should be printed using ACPI_EXCEPTION which
+is designed for printing error messages on failed acpica calls.
+
+IMO this should get documented in Documentation/acpi/..., but I
+was unsure whether it's worth to start a acpi_programming_rules.txt
+(couldn't think of much more ading there for now) or
+whether it's worth to add print_acpica_errors_in_kernel_drivers.txt
+(or similar).
+
+diff --git a/drivers/acpi/bay.c b/drivers/acpi/bay.c
+index 61b6c5b..c8cc7dc 100644
+--- a/drivers/acpi/bay.c
++++ b/drivers/acpi/bay.c
+@@ -305,7 +305,8 @@ static int bay_add(acpi_handle handle, int id)
+ status = acpi_install_notify_handler(handle, ACPI_SYSTEM_NOTIFY,
+ bay_notify, new_bay);
+ if (ACPI_FAILURE(status)) {
+- printk(KERN_INFO PREFIX "Error installing bay notify handler\n");
++ ACPI_EXCEPTION((AE_INFO, status,
++ "Error installing bay notify handler\n"));
+ platform_device_unregister(new_bay->pdev);
+ goto bay_add_err;
+ }
+diff --git a/drivers/acpi/dock.c b/drivers/acpi/dock.c
+index bb7c51f..875a1a1 100644
+--- a/drivers/acpi/dock.c
++++ b/drivers/acpi/dock.c
+@@ -415,8 +415,8 @@ static void handle_dock(struct dock_station *ds, int dock)
+ arg.integer.value = dock;
+ status = acpi_evaluate_object(ds->handle, "_DCK", &arg_list, &buffer);
+ if (ACPI_FAILURE(status))
+- printk(KERN_ERR PREFIX "%s - failed to execute _DCK\n",
+- (char *)name_buffer.pointer);
++ ACPI_EXCEPTION((AE_INFO, status, "%s - failed to execute"
++ " _DCK\n", (char *)name_buffer.pointer));
+ kfree(buffer.pointer);
+ kfree(name_buffer.pointer);
+ }
+@@ -829,7 +829,8 @@ static int dock_add(acpi_handle handle)
+ dock_notify, dock_station);
+
+ if (ACPI_FAILURE(status)) {
+- printk(KERN_ERR PREFIX "Error installing notify handler\n");
++ ACPI_EXCEPTION((AE_INFO, status, "Error installing notify"
++ " handler\n"));
+ ret = -ENODEV;
+ goto dock_add_err;
+ }
+@@ -872,7 +873,8 @@ static int dock_remove(void)
+ ACPI_SYSTEM_NOTIFY,
+ dock_notify);
+ if (ACPI_FAILURE(status))
+- printk(KERN_ERR "Error removing notify handler\n");
++ ACPI_EXCEPTION((AE_INFO, status,
++ "Error removing notify handler\n"));
+
+ /* cleanup sysfs */
+ device_remove_file(&dock_device->dev, &dev_attr_docked);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/ath5k-fix-memory-corruption.patch new/patches.fixes/ath5k-fix-memory-corruption.patch
--- old/patches.fixes/ath5k-fix-memory-corruption.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/ath5k-fix-memory-corruption.patch 2008-08-05 11:48:03.000000000 +0200
@@ -0,0 +1,152 @@
+From 3a0f2c871849f23c1070965bf94dec3f9c0b479d Mon Sep 17 00:00:00 2001
+From: Jiri Slaby
+Date: Tue, 15 Jul 2008 17:44:18 +0200
+Subject: [PATCH] Ath5k: fix memory corruption
+Patch-mainline: 2.6.27
+References: bnc#414635
+
+When signal is noisy, hardware can use all RX buffers and since the last
+entry in the list is self-linked, it overwrites the entry until we link
+new buffers.
+
+Ensure that we don't free this last one until we are 100% sure that it
+is not used by the hardware anymore to not cause memory curruption as
+can be seen below.
+
+This is done by checking next buffer in the list. Even after that we
+know that the hardware refetched the new link and proceeded further
+(the next buffer is ready) we can finally free the overwritten buffer.
+
+We discard it since the status in its descriptor is overwritten (OR-ed
+by new status) too.
+
+=============================================================================
+BUG kmalloc-4096: Poison overwritten
+-----------------------------------------------------------------------------
+
+INFO: 0xffff810067419060-0xffff810067419667. First byte 0x8 instead of 0x6b
+INFO: Allocated in dev_alloc_skb+0x18/0x30 age=1118 cpu=1 pid=0
+INFO: Freed in skb_release_data+0x85/0xd0 age=1105 cpu=1 pid=3718
+INFO: Slab 0xffffe200019d0600 objects=7 used=0 fp=0xffff810067419048 flags=0x40000000000020c3
+INFO: Object 0xffff810067419048 @offset=4168 fp=0xffff81006741c120
+
+Bytes b4 0xffff810067419038: 4f 0b 02 00 01 00 00 00 5a 5a 5a 5a 5a 5a 5a 5a O.......ZZZZZZZZ
+ Object 0xffff810067419048: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk
+ Object 0xffff810067419058: 6b 6b 6b 6b 6b 6b 6b 6b 08 42 30 00 00 0b 6b 80 kkkkkkkk.B0...k.
+ Object 0xffff810067419068: f0 5d 00 4f 62 08 a3 64 00 0c 42 16 52 e4 f0 5a 360].Ob.243d..B.R344360Z
+ Object 0xffff810067419078: 68 81 00 00 7b a5 b4 be 7d 3b 8f 53 cd d5 de 12 h...{245264276};.S315325336.
+ Object 0xffff810067419088: 96 10 0b 89 48 54 23 41 0f 4e 2d b9 37 c3 cb 29 ....HT#A.N-2717303313)
+ Object 0xffff810067419098: d1 e0 de 14 8a 57 2a cc 3b 44 0d 78 7a 19 12 15 321340336..W*314;D.xz...
+ Object 0xffff8100674190a8: a9 ec d4 35 a8 10 ec 8c 40 a7 06 0a 51 a7 48 bb 2513543245250.354.@247..Q247H273
+ Object 0xffff8100674190b8: 3e cf a1 c7 38 60 63 3f 51 15 c7 20 eb ba 65 30 >ϡ3078`c?Q.307.353272e0
+ Redzone 0xffff81006741a048: bb bb bb bb bb bb bb bb 273273273273273273273273
+ Padding 0xffff81006741a088: 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZ
+Pid: 3297, comm: ath5k_pci Not tainted 2.6.26-rc8-mm1_64 #427
+
+Call Trace:
+ [<ffffffff802a7306>] print_trailer+0xf6/0x150
+ [<ffffffff802a7485>] check_bytes_and_report+0x125/0x180
+ [<ffffffff802a75dc>] check_object+0xac/0x260
+ [<ffffffff802a9308>] __slab_alloc+0x368/0x6d0
+ [<ffffffff80544f82>] ? wireless_send_event+0x142/0x310
+ [<ffffffff804b1bd4>] ? __alloc_skb+0x44/0x150
+ [<ffffffff80544f82>] ? wireless_send_event+0x142/0x310
+ [<ffffffff802aa853>] __kmalloc_track_caller+0xc3/0xf0
+ [<ffffffff804b1bfe>] __alloc_skb+0x6e/0x150
+[... stack snipped]
+
+FIX kmalloc-4096: Restoring 0xffff810067419060-0xffff810067419667=0x6b
+
+FIX kmalloc-4096: Marking all objects used
+
+Signed-off-by: Jiri Slaby
+Acked-by: Nick Kossifidis
+Cc: Luis R. Rodriguez
+Signed-off-by: John W. Linville
+---
+ drivers/net/wireless/ath5k/base.c | 32 +++++++++++++++++++++++++-------
+ drivers/net/wireless/ath5k/base.h | 2 +-
+ 2 files changed, 26 insertions(+), 8 deletions(-)
+
+diff --git a/drivers/net/wireless/ath5k/base.c b/drivers/net/wireless/ath5k/base.c
+index d9769c5..ed51c4a 100644
+--- a/drivers/net/wireless/ath5k/base.c
++++ b/drivers/net/wireless/ath5k/base.c
+@@ -1682,20 +1682,21 @@ ath5k_tasklet_rx(unsigned long data)
+ struct ath5k_rx_status rs = {};
+ struct sk_buff *skb;
+ struct ath5k_softc *sc = (void *)data;
+- struct ath5k_buf *bf;
++ struct ath5k_buf *bf, *bf_last;
+ struct ath5k_desc *ds;
+ int ret;
+ int hdrlen;
+ int pad;
+
+ spin_lock(&sc->rxbuflock);
++ if (list_empty(&sc->rxbuf)) {
++ ATH5K_WARN(sc, "empty rx buf pool\n");
++ goto unlock;
++ }
++ bf_last = list_entry(sc->rxbuf.prev, struct ath5k_buf, list);
+ do {
+ rxs.flag = 0;
+
+- if (unlikely(list_empty(&sc->rxbuf))) {
+- ATH5K_WARN(sc, "empty rx buf pool\n");
+- break;
+- }
+ bf = list_first_entry(&sc->rxbuf, struct ath5k_buf, list);
+ BUG_ON(bf->skb == NULL);
+ skb = bf->skb;
+@@ -1705,8 +1706,24 @@ ath5k_tasklet_rx(unsigned long data)
+ pci_dma_sync_single_for_cpu(sc->pdev, sc->desc_daddr,
+ sc->desc_len, PCI_DMA_FROMDEVICE);
+
+- if (unlikely(ds->ds_link == bf->daddr)) /* this is the end */
+- break;
++ /*
++ * last buffer must not be freed to ensure proper hardware
++ * function. When the hardware finishes also a packet next to
++ * it, we are sure, it doesn't use it anymore and we can go on.
++ */
++ if (bf_last == bf)
++ bf->flags |= 1;
++ if (bf->flags) {
++ struct ath5k_buf *bf_next = list_entry(bf->list.next,
++ struct ath5k_buf, list);
++ ret = sc->ah->ah_proc_rx_desc(sc->ah, bf_next->desc,
++ &rs);
++ if (ret)
++ break;
++ bf->flags &= ~1;
++ /* skip the overwritten one (even status is martian) */
++ goto next;
++ }
+
+ ret = sc->ah->ah_proc_rx_desc(sc->ah, ds, &rs);
+ if (unlikely(ret == -EINPROGRESS))
+@@ -1816,6 +1833,7 @@ accept:
+ next:
+ list_move_tail(&bf->list, &sc->rxbuf);
+ } while (ath5k_rxbuf_setup(sc, bf) == 0);
++unlock:
+ spin_unlock(&sc->rxbuflock);
+ }
+
+diff --git a/drivers/net/wireless/ath5k/base.h b/drivers/net/wireless/ath5k/base.h
+index 47f414b..d7e03e6 100644
+--- a/drivers/net/wireless/ath5k/base.h
++++ b/drivers/net/wireless/ath5k/base.h
+@@ -56,7 +56,7 @@
+
+ struct ath5k_buf {
+ struct list_head list;
+- unsigned int flags; /* tx descriptor flags */
++ unsigned int flags; /* rx descriptor flags */
+ struct ath5k_desc *desc; /* virtual addr of desc */
+ dma_addr_t daddr; /* physical addr of desc */
+ struct sk_buff *skb; /* skbuff for buf */
+--
+1.5.6.2
+
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/ath5k-kill-tasklets-on-shutdown.patch new/patches.fixes/ath5k-kill-tasklets-on-shutdown.patch
--- old/patches.fixes/ath5k-kill-tasklets-on-shutdown.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/ath5k-kill-tasklets-on-shutdown.patch 2008-08-05 11:48:03.000000000 +0200
@@ -0,0 +1,35 @@
+From 10488f8ad62be3b860bad74e60b4fe6ab87aece3 Mon Sep 17 00:00:00 2001
+From: Jiri Slaby
+Date: Tue, 15 Jul 2008 17:44:19 +0200
+Subject: [PATCH] Ath5k: kill tasklets on shutdown
+Patch-mainline: 2.6.27
+References: bnc#414638
+
+Don't forget to kill tasklets on stop to not panic if they
+fire after freeing some structures.
+
+Signed-off-by: Jiri Slaby
+Acked-by: Nick Kossifidis
+Cc: Luis R. Rodriguez
+Signed-off-by: John W. Linville
+---
+ drivers/net/wireless/ath5k/base.c | 3 +++
+ 1 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/drivers/net/wireless/ath5k/base.c b/drivers/net/wireless/ath5k/base.c
+index ed51c4a..c5bf8a2 100644
+--- a/drivers/net/wireless/ath5k/base.c
++++ b/drivers/net/wireless/ath5k/base.c
+@@ -2342,6 +2342,9 @@ ath5k_stop_hw(struct ath5k_softc *sc)
+ mutex_unlock(&sc->lock);
+
+ del_timer_sync(&sc->calib_tim);
++ tasklet_kill(&sc->rxtq);
++ tasklet_kill(&sc->txtq);
++ tasklet_kill(&sc->restq);
+
+ return ret;
+ }
+--
+1.5.6.2
+
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/reiserfs-commit-ids-unsigned-ints new/patches.fixes/reiserfs-commit-ids-unsigned-ints
--- old/patches.fixes/reiserfs-commit-ids-unsigned-ints 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/reiserfs-commit-ids-unsigned-ints 2008-08-05 21:55:56.000000000 +0200
@@ -0,0 +1,274 @@
+From: Jeff Mahoney
+Subject: [PATCH] reiserfs: audit transaction ids to always be unsigned ints
+References: bnc#410847
+
+ This patch fixes up the reiserfs code such that transaction ids are
+ always unsigned ints. In places they can currently be signed ints or
+ unsigned longs.
+
+ The former just causes an annoying clm-2200 warning and may join a
+ transaction when it should wait.
+
+ The latter is just for correctness since the disk format uses a 32-bit
+ transaction id. There aren't any runtime problems that result from it
+ not wrapping at the correct location since the value is truncated
+ correctly even on big endian systems. The 0 value might make it to disk,
+ but the mount-time checks will bump it to 10 itself.
+
+Signed-off-by: Jeff Mahoney
+
+---
+ fs/reiserfs/journal.c | 44 ++++++++++++++++++++---------------------
+ fs/reiserfs/procfs.c | 4 +--
+ include/linux/reiserfs_fs.h | 2 -
+ include/linux/reiserfs_fs_i.h | 2 -
+ include/linux/reiserfs_fs_sb.h | 8 +++----
+ 5 files changed, 30 insertions(+), 30 deletions(-)
+
+--- a/fs/reiserfs/journal.c
++++ b/fs/reiserfs/journal.c
+@@ -576,7 +576,7 @@ static inline void put_journal_list(stru
+ struct reiserfs_journal_list *jl)
+ {
+ if (jl->j_refcount < 1) {
+- reiserfs_panic(s, "trans id %lu, refcount at %d",
++ reiserfs_panic(s, "trans id %u, refcount at %d",
+ jl->j_trans_id, jl->j_refcount);
+ }
+ if (--jl->j_refcount == 0)
+@@ -601,7 +601,7 @@ static void cleanup_freed_for_journal_li
+ }
+
+ static int journal_list_still_alive(struct super_block *s,
+- unsigned long trans_id)
++ unsigned int trans_id)
+ {
+ struct reiserfs_journal *journal = SB_JOURNAL(s);
+ struct list_head *entry = &journal->j_journal_list;
+@@ -935,9 +935,9 @@ static int flush_older_commits(struct su
+ struct reiserfs_journal_list *other_jl;
+ struct reiserfs_journal_list *first_jl;
+ struct list_head *entry;
+- unsigned long trans_id = jl->j_trans_id;
+- unsigned long other_trans_id;
+- unsigned long first_trans_id;
++ unsigned int trans_id = jl->j_trans_id;
++ unsigned int other_trans_id;
++ unsigned int first_trans_id;
+
+ find_first:
+ /*
+@@ -1016,7 +1016,7 @@ static int flush_commit_list(struct supe
+ int i;
+ b_blocknr_t bn;
+ struct buffer_head *tbh = NULL;
+- unsigned long trans_id = jl->j_trans_id;
++ unsigned int trans_id = jl->j_trans_id;
+ struct reiserfs_journal *journal = SB_JOURNAL(s);
+ int barrier = 0;
+ int retval = 0;
+@@ -1277,7 +1277,7 @@ static void remove_all_from_journal_list
+ */
+ static int _update_journal_header_block(struct super_block *p_s_sb,
+ unsigned long offset,
+- unsigned long trans_id)
++ unsigned int trans_id)
+ {
+ struct reiserfs_journal_header *jh;
+ struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+@@ -1331,7 +1331,7 @@ static int _update_journal_header_block(
+
+ static int update_journal_header_block(struct super_block *p_s_sb,
+ unsigned long offset,
+- unsigned long trans_id)
++ unsigned int trans_id)
+ {
+ return _update_journal_header_block(p_s_sb, offset, trans_id);
+ }
+@@ -1346,7 +1346,7 @@ static int flush_older_journal_lists(str
+ struct list_head *entry;
+ struct reiserfs_journal_list *other_jl;
+ struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+- unsigned long trans_id = jl->j_trans_id;
++ unsigned int trans_id = jl->j_trans_id;
+
+ /* we know we are the only ones flushing things, no extra race
+ * protection is required.
+@@ -1760,13 +1760,13 @@ static int dirty_one_transaction(struct
+ static int kupdate_transactions(struct super_block *s,
+ struct reiserfs_journal_list *jl,
+ struct reiserfs_journal_list **next_jl,
+- unsigned long *next_trans_id,
++ unsigned int *next_trans_id,
+ int num_blocks, int num_trans)
+ {
+ int ret = 0;
+ int written = 0;
+ int transactions_flushed = 0;
+- unsigned long orig_trans_id = jl->j_trans_id;
++ unsigned int orig_trans_id = jl->j_trans_id;
+ struct buffer_chunk chunk;
+ struct list_head *entry;
+ struct reiserfs_journal *journal = SB_JOURNAL(s);
+@@ -1835,7 +1835,7 @@ static int flush_used_journal_lists(stru
+ int limit = 256;
+ struct reiserfs_journal_list *tjl;
+ struct reiserfs_journal_list *flush_jl;
+- unsigned long trans_id;
++ unsigned int trans_id;
+ struct reiserfs_journal *journal = SB_JOURNAL(s);
+
+ flush_jl = tjl = jl;
+@@ -2025,7 +2025,7 @@ static int journal_compare_desc_commit(s
+ */
+ static int journal_transaction_is_valid(struct super_block *p_s_sb,
+ struct buffer_head *d_bh,
+- unsigned long *oldest_invalid_trans_id,
++ unsigned int *oldest_invalid_trans_id,
+ unsigned long *newest_mount_id)
+ {
+ struct reiserfs_journal_desc *desc;
+@@ -2126,18 +2126,18 @@ static void brelse_array(struct buffer_h
+ static int journal_read_transaction(struct super_block *p_s_sb,
+ unsigned long cur_dblock,
+ unsigned long oldest_start,
+- unsigned long oldest_trans_id,
++ unsigned int oldest_trans_id,
+ unsigned long newest_mount_id)
+ {
+ struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+ struct reiserfs_journal_desc *desc;
+ struct reiserfs_journal_commit *commit;
+- unsigned long trans_id = 0;
++ unsigned int trans_id = 0;
+ struct buffer_head *c_bh;
+ struct buffer_head *d_bh;
+ struct buffer_head **log_blocks = NULL;
+ struct buffer_head **real_blocks = NULL;
+- unsigned long trans_offset;
++ unsigned int trans_offset;
+ int i;
+ int trans_half;
+
+@@ -2358,8 +2358,8 @@ static int journal_read(struct super_blo
+ {
+ struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+ struct reiserfs_journal_desc *desc;
+- unsigned long oldest_trans_id = 0;
+- unsigned long oldest_invalid_trans_id = 0;
++ unsigned int oldest_trans_id = 0;
++ unsigned int oldest_invalid_trans_id = 0;
+ time_t start;
+ unsigned long oldest_start = 0;
+ unsigned long cur_dblock = 0;
+@@ -2969,7 +2969,7 @@ static void wake_queued_writers(struct s
+ wake_up(&journal->j_join_wait);
+ }
+
+-static void let_transaction_grow(struct super_block *sb, unsigned long trans_id)
++static void let_transaction_grow(struct super_block *sb, unsigned int trans_id)
+ {
+ struct reiserfs_journal *journal = SB_JOURNAL(sb);
+ unsigned long bcount = journal->j_bcount;
+@@ -3000,7 +3000,7 @@ static int do_journal_begin_r(struct rei
+ int join)
+ {
+ time_t now = get_seconds();
+- int old_trans_id;
++ unsigned int old_trans_id;
+ struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+ struct reiserfs_transaction_handle myth;
+ int sched_count = 0;
+@@ -3823,7 +3823,7 @@ static int __commit_trans_jl(struct inod
+
+ int reiserfs_commit_for_inode(struct inode *inode)
+ {
+- unsigned long id = REISERFS_I(inode)->i_trans_id;
++ unsigned int id = REISERFS_I(inode)->i_trans_id;
+ struct reiserfs_journal_list *jl = REISERFS_I(inode)->i_jl;
+
+ /* for the whole inode, assume unset id means it was
+@@ -3937,7 +3937,7 @@ static int do_journal_end(struct reiserf
+ struct reiserfs_journal_list *jl, *temp_jl;
+ struct list_head *entry, *safe;
+ unsigned long jindex;
+- unsigned long commit_trans_id;
++ unsigned int commit_trans_id;
+ int trans_half;
+
+ BUG_ON(th->t_refcount > 1);
+--- a/fs/reiserfs/procfs.c
++++ b/fs/reiserfs/procfs.c
+@@ -323,7 +323,7 @@ static int show_journal(struct seq_file
+ /* incore fields */
+ "j_1st_reserved_block: \t%i\n"
+ "j_state: \t%li\n"
+- "j_trans_id: \t%lu\n"
++ "j_trans_id: \t%u\n"
+ "j_mount_id: \t%lu\n"
+ "j_start: \t%lu\n"
+ "j_len: \t%lu\n"
+@@ -331,7 +331,7 @@ static int show_journal(struct seq_file
+ "j_wcount: \t%i\n"
+ "j_bcount: \t%lu\n"
+ "j_first_unflushed_offset: \t%lu\n"
+- "j_last_flush_trans_id: \t%lu\n"
++ "j_last_flush_trans_id: \t%u\n"
+ "j_trans_start_time: \t%li\n"
+ "j_list_bitmap_index: \t%i\n"
+ "j_must_wait: \t%i\n"
+--- a/include/linux/reiserfs_fs.h
++++ b/include/linux/reiserfs_fs.h
+@@ -1676,7 +1676,7 @@ struct reiserfs_transaction_handle {
+ int t_refcount;
+ int t_blocks_logged; /* number of blocks this writer has logged */
+ int t_blocks_allocated; /* number of blocks this writer allocated */
+- unsigned long t_trans_id; /* sanity check, equals the current trans id */
++ unsigned int t_trans_id; /* sanity check, equals the current trans id */
+ void *t_handle_save; /* save existing current->journal_info */
+ unsigned displace_new_blocks:1; /* if new block allocation occurres, that block
+ should be displaced from others */
+--- a/include/linux/reiserfs_fs_i.h
++++ b/include/linux/reiserfs_fs_i.h
+@@ -51,7 +51,7 @@ struct reiserfs_inode_info {
+ /* we use these for fsync or O_SYNC to decide which transaction
+ ** needs to be committed in order for this inode to be properly
+ ** flushed */
+- unsigned long i_trans_id;
++ unsigned int i_trans_id;
+ struct reiserfs_journal_list *i_jl;
+ struct mutex i_mmap;
+ #ifdef CONFIG_REISERFS_FS_POSIX_ACL
+--- a/include/linux/reiserfs_fs_sb.h
++++ b/include/linux/reiserfs_fs_sb.h
+@@ -156,7 +156,7 @@ struct reiserfs_journal_list {
+ atomic_t j_commit_left;
+ atomic_t j_older_commits_done; /* all commits older than this on disk */
+ struct semaphore j_commit_lock;
+- unsigned long j_trans_id;
++ unsigned int j_trans_id;
+ time_t j_timestamp;
+ struct reiserfs_list_bitmap *j_list_bitmap;
+ struct buffer_head *j_commit_bh; /* commit buffer head */
+@@ -184,7 +184,7 @@ struct reiserfs_journal {
+ int j_1st_reserved_block; /* first block on s_dev of reserved area journal */
+
+ unsigned long j_state;
+- unsigned long j_trans_id;
++ unsigned int j_trans_id;
+ unsigned long j_mount_id;
+ unsigned long j_start; /* start of current waiting commit (index into j_ap_blocks) */
+ unsigned long j_len; /* length of current waiting commit */
+@@ -225,10 +225,10 @@ struct reiserfs_journal {
+ int j_num_work_lists; /* number that need attention from kreiserfsd */
+
+ /* debugging to make sure things are flushed in order */
+- int j_last_flush_id;
++ unsigned int j_last_flush_id;
+
+ /* debugging to make sure things are committed in order */
+- int j_last_commit_id;
++ unsigned int j_last_commit_id;
+
+ struct list_head j_bitmap_nodes;
+ struct list_head j_dirty_buffers;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/show-OSRELEASE-in-VMCOREINFO.diff new/patches.fixes/show-OSRELEASE-in-VMCOREINFO.diff
--- old/patches.fixes/show-OSRELEASE-in-VMCOREINFO.diff 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/show-OSRELEASE-in-VMCOREINFO.diff 2008-07-18 00:21:04.000000000 +0200
@@ -0,0 +1,34 @@
+From 420b501551a043b28d9856020b33e05a97c56f9d Mon Sep 17 00:00:00 2001
+From: Bernhard Walle
+Date: Thu, 17 Jul 2008 22:49:59 +0200
+Subject: [PATCH] kdump: Report actual value of VMCOREINFO_OSRELEASE in VMCOREINFO
+
+The current implementation reports the structure name as
+VMCOREINFO_OSRELEASE in VMCOREINFO, e.g.
+
+ VMCOREINFO_OSRELEASE=init_uts_ns.name.release
+
+That doesn't make sense because it's always the same. Instead, use the
+value, e.g.
+
+ VMCOREINFO_OSRELEASE=2.6.26-rc3
+
+Signed-off-by: Bernhard Walle
+
+---
+ include/linux/kexec.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/include/linux/kexec.h
++++ b/include/linux/kexec.h
+@@ -140,8 +140,8 @@ void vmcoreinfo_append_str(const char *f
+ __attribute__ ((format (printf, 1, 2)));
+ unsigned long paddr_vmcoreinfo_note(void);
+
+-#define VMCOREINFO_OSRELEASE(name) \
+- vmcoreinfo_append_str("OSRELEASE=%s\n", #name)
++#define VMCOREINFO_OSRELEASE(value) \
++ vmcoreinfo_append_str("OSRELEASE=%s\n", value)
+ #define VMCOREINFO_PAGESIZE(value) \
+ vmcoreinfo_append_str("PAGESIZE=%ld\n", value)
+ #define VMCOREINFO_SYMBOL(name) \
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/tpm-write-data-types.patch new/patches.fixes/tpm-write-data-types.patch
--- old/patches.fixes/tpm-write-data-types.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/tpm-write-data-types.patch 2008-08-04 12:56:34.000000000 +0200
@@ -0,0 +1,45 @@
+From 0147600172b4a5d261165d1aa5ef818d84da1557 Mon Sep 17 00:00:00 2001
+From: Michael Halcrow
+Date: Fri, 25 Jul 2008 19:45:00 -0700
+Subject: [PATCH] tpm: Use correct data types for sizes in tpm_write() and tpm_read()
+Patch-mainline: 2.6.27
+References: bnc#400211
+
+Use the correct data types for the size parameters in tpm_write() and
+tpm_read(). Note that rw_verify_area() makes sure that this bug cannot
+be exploited to produce a buffer overrun.
+
+Signed-off-by: Michael Halcrow
+Cc: Marcel Selhorst
+Signed-off-by: Andrew Morton
+Signed-off-by: Linus Torvalds
+Signed-off-by: Jiri Slaby
+---
+ drivers/char/tpm/tpm.c | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/char/tpm/tpm.c b/drivers/char/tpm/tpm.c
+index f354d72..ae766d8 100644
+--- a/drivers/char/tpm/tpm.c
++++ b/drivers/char/tpm/tpm.c
+@@ -1028,7 +1028,7 @@ ssize_t tpm_write(struct file *file, const char __user *buf,
+ size_t size, loff_t *off)
+ {
+ struct tpm_chip *chip = file->private_data;
+- int in_size = size, out_size;
++ size_t in_size = size, out_size;
+
+ /* cannot perform a write until the read has cleared
+ either via tpm_read or a user_read_timer timeout */
+@@ -1063,7 +1063,7 @@ ssize_t tpm_read(struct file *file, char __user *buf,
+ size_t size, loff_t *off)
+ {
+ struct tpm_chip *chip = file->private_data;
+- int ret_size;
++ ssize_t ret_size;
+
+ del_singleshot_timer_sync(&chip->user_read_timer);
+ flush_scheduled_work();
+--
+1.5.6.2
+
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/x86_hpet_amd_quirk.patch new/patches.fixes/x86_hpet_amd_quirk.patch
--- old/patches.fixes/x86_hpet_amd_quirk.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/x86_hpet_amd_quirk.patch 2008-08-01 14:03:13.000000000 +0200
@@ -0,0 +1,69 @@
+From: Joachim Deguara
+Subject: Workaround a hpet BIOS bug which is common on latest AMD driven boards
+Patch-Mainline: not yet
+References: bnc#387053
+
+Signed-off-by: Thomas Renninger
+
+--- x/arch/x86/kernel/early-quirks.c.bak 2008-07-11 14:48:51.000000000 +0800
++++ y/arch/x86/kernel/early-quirks.c 2008-07-11 14:37:41.000000000 +0800
+@@ -21,6 +21,8 @@
+ #include
+ #endif
+
++extern int hpet_rework;
++
+ static void __init fix_hypertransport_config(int num, int slot, int func)
+ {
+ u32 htcfg;
+@@ -109,6 +111,16 @@
+ #endif
+ }
+
++static void __init amd_sb700_hpet(int num, int slot, int func)
++{
++ int rev;
++ rev = read_pci_config_byte(num, slot, func, 0x08);
++ if (rev <= 0x3a && rev >=0x30) {
++ hpet_rework = 1;
++ printk(KERN_INFO "SB700 rev 0x3a under detected!\n");
++ }
++}
++
+ #define QFLAG_APPLY_ONCE 0x1
+ #define QFLAG_APPLIED 0x2
+ #define QFLAG_DONE (QFLAG_APPLY_ONCE|QFLAG_APPLIED)
+@@ -130,6 +142,8 @@
+ PCI_CLASS_BRIDGE_PCI, PCI_ANY_ID, QFLAG_APPLY_ONCE, ati_bugs },
+ { PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_K8_NB,
+ PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, fix_hypertransport_config },
++ { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SBX00_SMBUS,
++ PCI_CLASS_SERIAL_SMBUS, PCI_ANY_ID, 0, amd_sb700_hpet },
+ {}
+ };
+
+
+--- x/arch/x86/kernel/hpet.c.bak 2008-06-19 10:42:23.000000000 +0800
++++ y/arch/x86/kernel/hpet.c 2008-07-11 14:09:01.000000000 +0800
+@@ -23,6 +23,9 @@
+ * HPET address is set in acpi/boot.c, when an ACPI entry exists
+ */
+ unsigned long hpet_address;
++
++int hpet_rework __initdata = 0;
++
+ static void __iomem *hpet_virt_address;
+
+ unsigned long hpet_readl(unsigned long a)
+@@ -387,6 +390,11 @@
+ * Read the period and check for a sane value:
+ */
+ hpet_period = hpet_readl(HPET_PERIOD);
++
++ if (hpet_rework) {
++ int timeout = 1000;
++ while (0xffffffff == hpet_readl(HPET_CFG) && timeout-- != 0);
++ }
+ if (hpet_period < HPET_MIN_PERIOD || hpet_period > HPET_MAX_PERIOD)
+ goto out_nohpet;
+
++++++ patches.rt.tar.bz2 ++++++
++++ 65632 lines of diff (skipped)
++++++ patches.suse.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/acpi_provide_non_windows_osi_boot_param.patch new/patches.suse/acpi_provide_non_windows_osi_boot_param.patch
--- old/patches.suse/acpi_provide_non_windows_osi_boot_param.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.suse/acpi_provide_non_windows_osi_boot_param.patch 2008-07-29 17:39:12.000000000 +0200
@@ -0,0 +1,63 @@
+From: Thomas Renninger
+Subject: ACPI: Provide a spec conform OSI interface to the BIOS
+Patch-Mainline: no -> Len does not like it
+
+Introduce acpi_osi=windows_false boot parameter
+
+This will return false to _OSI("Windows XY") calls.
+This is necessary to debug ACPI problems introduced by Windows
+specific bug workarounds
+
+Signed-off-by: Thomas Renninger
+diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
+index 0fea7c2..c1e397e 100644
+--- a/Documentation/kernel-parameters.txt
++++ b/Documentation/kernel-parameters.txt
+@@ -182,6 +182,7 @@ and is between 256 and 4096 characters. It is defined in the file
+ acpi_osi= [HW,ACPI] Modify list of supported OS interface strings
+ acpi_osi="string1" # add string1 -- only one string
+ acpi_osi="!string2" # remove built-in string2
++ acpi_osi="windows_false"# remove all Windows strings
+ acpi_osi= # disable all strings
+
+ acpi_serialize [HW,ACPI] force serialization of AML methods
+diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
+index 235a138..bf42ef1 100644
+--- a/drivers/acpi/osl.c
++++ b/drivers/acpi/osl.c
+@@ -943,7 +943,7 @@ static void __init set_osi_linux(unsigned int enable)
+ if (osi_linux.enable != enable) {
+ osi_linux.enable = enable;
+ printk(KERN_NOTICE PREFIX "%sed _OSI(Linux)\n",
+- enable ? "Add": "Delet");
++ enable ? "Add": "Delete");
+ }
+ return;
+ }
+@@ -972,6 +972,17 @@ void __init acpi_dmi_osi_linux(int enable, const struct dmi_system_id *d)
+ return;
+ }
+
++static void __init acpi_osi_windows_false(void) {
++
++ acpi_osi_invalidate("Windows 2000");
++ acpi_osi_invalidate("Windows 2001");
++ acpi_osi_invalidate("Windows 2001 SP1");
++ acpi_osi_invalidate("Windows 2001 SP2");
++ acpi_osi_invalidate("Windows 2001.1");
++ acpi_osi_invalidate("Windows 2001.1 SP1");
++ acpi_osi_invalidate("Windows 2006");
++}
++
+ /*
+ * Modify the list of "OS Interfaces" reported to BIOS via _OSI
+ *
+@@ -984,6 +995,8 @@ int __init acpi_osi_setup(char *str)
+ if (str == NULL || *str == '\0') {
+ printk(KERN_INFO PREFIX "_OSI method disabled\n");
+ acpi_gbl_create_osi_method = FALSE;
++ } else if (strcmp("windows_false", str)) {
++ acpi_osi_windows_false();
+ } else if (!strcmp("!Linux", str)) {
+ acpi_cmdline_osi_linux(0); /* !enable */
+ } else if (*str == '!') {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/genksyms-dump.diff new/patches.suse/genksyms-dump.diff
--- old/patches.suse/genksyms-dump.diff 2008-06-23 17:02:54.000000000 +0200
+++ new/patches.suse/genksyms-dump.diff 2008-08-05 21:33:31.000000000 +0200
@@ -1,7 +1,8 @@
From: Andreas Gruenbacher
-Subject: genksyms: include extern information in type dumps
+Subject: genksyms: include extern information in dumps
-The extern keyword is missing from type dump files (genksyms --dump-types).
+The extern flag currently is not included in type dump files
+(genksyms --dump-types). Include that flag there for completeness.
Signed-off-by: Andreas Gruenbacher
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/genksyms-override.diff new/patches.suse/genksyms-override.diff
--- old/patches.suse/genksyms-override.diff 2008-06-23 17:02:54.000000000 +0200
+++ new/patches.suse/genksyms-override.diff 2008-08-05 21:33:31.000000000 +0200
@@ -1,17 +1,18 @@
From: Andreas Gruenbacher
-Subject: genksyms: allow to ignore modversion changes
+Subject: genksyms: allow to ignore symbol checksum changes
-Add an "override" keyword for use in *.symvers / *.symref files: when a
-symbol is overridden, the symbol's old definition will be used in place
-of any new definition in order to preserve the reference modversions
-(see genksyms --reference and genksyms --dump-types). Genksyms will
-still warn about the change.
-
-This is meant to keep the kernel clean from "#ifdef __GENKSYMS__" hacks,
-and to work around modversion changes which are purely due to additional
-"#include" statements. Additional include statements may make more type
-information available to genksyms, which will cause it to compute other
-checksums even though the ABI has not changed.
+This adds an "override" keyword for use in *.symvers / *.symref files. When a
+symbol is overridden, the symbol's old definition will be used for computing
+checksums instead of the new one, preserving the previous checksum. (Genksyms
+will still warn about the change.)
+
+This is meant to allow distributions to hide minor actual as well as fake ABI
+changes. (For example, when extra type information becomes available because
+additional headers are included, this may change checksums even though none of
+the types used have actully changed.)
+
+This approach also allows to get rid of "#ifdef __GENKSYMS__" hacks in the code,
+which are currently used in some vendor kernels to work around checksum changes.
Signed-off-by: Andreas Gruenbacher
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/genksyms-reference.diff new/patches.suse/genksyms-reference.diff
--- old/patches.suse/genksyms-reference.diff 2008-06-23 17:02:54.000000000 +0200
+++ new/patches.suse/genksyms-reference.diff 2008-08-05 21:33:31.000000000 +0200
@@ -1,18 +1,22 @@
From: Andreas Gruenbacher
-Subject: genksyms: check for modversion changes
+Subject: genksyms: track symbol checksum changes
-This adds the genksyms --reference option for comparing with a previous
-genksyms run. Genksyms will report when exported symbols have changed
-relative to this reference (and why).
+Sometimes it is preferable to avoid changes of exported symbol checksums (to
+avoid breaking externally provided modules). When a checksum change occurs, it
+can be hard to figure out what caused this change: underlying types may have
+changed, or additional type information may simply have become available at the
+point where a symbol is exported.
-The reference definitions are taken from the dump files produced by
-genksyms --dump-types.
+Add a new --reference option to genksyms which allows it to report why
+checksums change, based on the type information dumps it creates with
+the --dump-types flag. Genksyms will read in such a dump from a previous run,
+and report which symbols have changed (and why).
-The genksyms behavior can be controlled for an entire build as follows:
-If KBUILD_SYMTYPES is set, genksyms uses --dump-types to produce
-*.symtypes dump files. If any *.symref files exist, those will be used
-as the reference to check against. If KBUILD_PRESERVE is set, modversion
-changes will fail the build.
+The behavior can be controlled for an entire build as follows: If
+KBUILD_SYMTYPES is set, genksyms uses --dump-types to produce *.symtypes dump
+files. If any *.symref files exist, those will be used as the reference to
+check against. If KBUILD_PRESERVE is set, checksum changes will fail the
+build.
Signed-off-by: Andreas Gruenbacher
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/genksyms-syntax.diff new/patches.suse/genksyms-syntax.diff
--- old/patches.suse/genksyms-syntax.diff 2008-06-23 17:02:54.000000000 +0200
+++ new/patches.suse/genksyms-syntax.diff 2008-08-05 21:33:31.000000000 +0200
@@ -1,12 +1,13 @@
From: Andreas Gruenbacher
-Subject: genksyms: fix the __attribute__ rule
+Subject: genksyms parser: fix the __attribute__ rule
Gcc __attribute__ definitions may occur repeatedly, e.g.,
static int foo __attribute__((__used__))
__attribute__((aligned (16)));
-Fix the genksyms parser to understand this.
+The genksyms parser does not understand this, and generates a syntax error.
+Fix this case.
Signed-off-by: Andreas Gruenbacher
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/ppc-no-LDFLAGS_MODULE.patch new/patches.suse/ppc-no-LDFLAGS_MODULE.patch
--- old/patches.suse/ppc-no-LDFLAGS_MODULE.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.suse/ppc-no-LDFLAGS_MODULE.patch 2008-08-06 13:14:35.000000000 +0200
@@ -0,0 +1,34 @@
+Subject: arch/powerpc/lib/crtsavres.o is not available when linking external modules
+From: olh@suse.de
+Patch-mainline: never
+
+Maybe it helps.
+
+---
+ arch/powerpc/Makefile | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+Index: linux-2.6.26/arch/powerpc/Makefile
+===================================================================
+--- linux-2.6.26.orig/arch/powerpc/Makefile
++++ linux-2.6.26/arch/powerpc/Makefile
+@@ -89,15 +89,17 @@ ifeq ($(GCC_BROKEN_VEC),y)
+ KBUILD_CFLAGS += $(call cc-option,-mcpu=970)
+ else
+ KBUILD_CFLAGS += $(call cc-option,-mcpu=power4)
++# GCC_BROKEN_VEC
+ endif
+ else
+ KBUILD_CFLAGS += $(call cc-option,-mcpu=power4)
++# CONFIG_ALTIVEC
+ endif
+ else
+ KBUILD_CFLAGS += $(call cc-option,-mtune=power4)
++# CONFIG_POWER4_ONLY
+ endif
+-else
+-LDFLAGS_MODULE += arch/powerpc/lib/crtsavres.o
++# CONFIG_PPC64
+ endif
+
+ ifeq ($(CONFIG_TUNE_CELL),y)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/reiserfs-reiserfs_panic.diff new/patches.suse/reiserfs-reiserfs_panic.diff
--- old/patches.suse/reiserfs-reiserfs_panic.diff 2008-06-12 18:55:35.000000000 +0200
+++ new/patches.suse/reiserfs-reiserfs_panic.diff 2008-08-06 15:50:59.000000000 +0200
@@ -450,8 +450,8 @@
struct reiserfs_journal_list *jl)
{
if (jl->j_refcount < 1) {
-- reiserfs_panic(s, "trans id %lu, refcount at %d",
-+ reiserfs_panic(s, "journal-2", "trans id %lu, refcount at %d",
+- reiserfs_panic(s, "trans id %u, refcount at %d",
++ reiserfs_panic(s, "journal-2", "trans id %u, refcount at %d",
jl->j_trans_id, jl->j_refcount);
}
if (--jl->j_refcount == 0)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/reiserfs-rename-p_s_sb.diff new/patches.suse/reiserfs-rename-p_s_sb.diff
--- old/patches.suse/reiserfs-rename-p_s_sb.diff 2008-06-12 18:55:35.000000000 +0200
+++ new/patches.suse/reiserfs-rename-p_s_sb.diff 2008-08-06 15:50:59.000000000 +0200
@@ -571,7 +571,7 @@
-static int _update_journal_header_block(struct super_block *p_s_sb,
+static int _update_journal_header_block(struct super_block *sb,
unsigned long offset,
- unsigned long trans_id)
+ unsigned int trans_id)
{
struct reiserfs_journal_header *jh;
- struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
@@ -624,7 +624,7 @@
-static int update_journal_header_block(struct super_block *p_s_sb,
+static int update_journal_header_block(struct super_block *sb,
unsigned long offset,
- unsigned long trans_id)
+ unsigned int trans_id)
{
- return _update_journal_header_block(p_s_sb, offset, trans_id);
+ return _update_journal_header_block(sb, offset, trans_id);
@@ -642,7 +642,7 @@
struct reiserfs_journal_list *other_jl;
- struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+ struct reiserfs_journal *journal = SB_JOURNAL(sb);
- unsigned long trans_id = jl->j_trans_id;
+ unsigned int trans_id = jl->j_trans_id;
/* we know we are the only ones flushing things, no extra race
@@ -1361,7 +1361,7 @@ static int flush_older_journal_lists(str
@@ -797,7 +797,7 @@
-static int journal_transaction_is_valid(struct super_block *p_s_sb,
+static int journal_transaction_is_valid(struct super_block *sb,
struct buffer_head *d_bh,
- unsigned long *oldest_invalid_trans_id,
+ unsigned int *oldest_invalid_trans_id,
unsigned long *newest_mount_id)
@@ -2040,7 +2040,7 @@ static int journal_transaction_is_valid(
&& !memcmp(get_journal_desc_magic(d_bh), JOURNAL_DESC_MAGIC, 8)) {
@@ -887,14 +887,14 @@
+static int journal_read_transaction(struct super_block *sb,
unsigned long cur_dblock,
unsigned long oldest_start,
- unsigned long oldest_trans_id,
+ unsigned int oldest_trans_id,
unsigned long newest_mount_id)
{
- struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+ struct reiserfs_journal *journal = SB_JOURNAL(sb);
struct reiserfs_journal_desc *desc;
struct reiserfs_journal_commit *commit;
- unsigned long trans_id = 0;
+ unsigned int trans_id = 0;
@@ -2141,45 +2141,45 @@ static int journal_read_transaction(stru
int i;
int trans_half;
@@ -1053,8 +1053,8 @@
- struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+ struct reiserfs_journal *journal = SB_JOURNAL(sb);
struct reiserfs_journal_desc *desc;
- unsigned long oldest_trans_id = 0;
- unsigned long oldest_invalid_trans_id = 0;
+ unsigned int oldest_trans_id = 0;
+ unsigned int oldest_invalid_trans_id = 0;
@@ -2377,8 +2377,8 @@ static int journal_read(struct super_blo
int ret;
char b[BDEVNAME_SIZE];
@@ -1488,7 +1488,7 @@
int join)
{
time_t now = get_seconds();
- int old_trans_id;
+ unsigned int old_trans_id;
- struct reiserfs_journal *journal = SB_JOURNAL(p_s_sb);
+ struct reiserfs_journal *journal = SB_JOURNAL(sb);
struct reiserfs_transaction_handle myth;
++++++ series.conf ++++++
++++ 789 lines (skipped)
++++ between series.conf
++++ and /mounts/work_src_done/STABLE/kernel-source/series.conf
++++++ supported.conf ++++++
--- kernel-source/supported.conf 2008-07-17 18:37:17.000000000 +0200
+++ /mounts/work_src_done/STABLE/kernel-source/supported.conf 2008-08-06 15:52:12.229365000 +0200
@@ -1344,7 +1344,7 @@
kernel/fs/ext3/ext3 # Second Extended Filesystem with journaling extensions
kernel/fs/fat/fat
- kernel/fs/freevxfs/freevxfs # Veritas Filesystem (VxFS) driver
-- kernel/fs/fuse/fuse # FUSE: Filesystem in Userspace
+ kernel/fs/fuse/fuse # FUSE: Filesystem in Userspace
kernel/fs/hfs/hfs
kernel/fs/hfsplus/hfsplus # Extended Macintosh Filesystem
- kernel/fs/hpfs/hpfs
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org