]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Linux 2.6.27.5 v2.6.27.5
authorGreg Kroah-Hartman <gregkh@suse.de>
Fri, 7 Nov 2008 21:51:35 +0000 (13:51 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 7 Nov 2008 21:51:35 +0000 (13:51 -0800)
60 files changed:
releases/2.6.27.5/0001-sparc64-Fix-race-in-arch-sparc64-kernel-trampoline.patch [moved from review-2.6.27/0001-sparc64-Fix-race-in-arch-sparc64-kernel-trampoline.patch with 100% similarity]
releases/2.6.27.5/0001-syncookies-fix-inclusion-of-tcp-options-in-syn-ack.patch [moved from review-2.6.27/0001-syncookies-fix-inclusion-of-tcp-options-in-syn-ack.patch with 100% similarity]
releases/2.6.27.5/0002-math-emu-Fix-signalling-of-underflow-and-inexact-wh.patch [moved from review-2.6.27/0002-math-emu-Fix-signalling-of-underflow-and-inexact-wh.patch with 100% similarity]
releases/2.6.27.5/0002-tcp-Restore-ordering-of-TCP-options-for-the-sake-of.patch [moved from review-2.6.27/0002-tcp-Restore-ordering-of-TCP-options-for-the-sake-of.patch with 100% similarity]
releases/2.6.27.5/0003-tcpv6-fix-option-space-offsets-with-md5.patch [moved from review-2.6.27/0003-tcpv6-fix-option-space-offsets-with-md5.patch with 100% similarity]
releases/2.6.27.5/0004-pkt_sched-sch_generic-Fix-oops-in-sch_teql.patch [moved from review-2.6.27/0004-pkt_sched-sch_generic-Fix-oops-in-sch_teql.patch with 100% similarity]
releases/2.6.27.5/acpi-always-report-a-sync-event-after-a-lid-state-change.patch [moved from review-2.6.27/acpi-always-report-a-sync-event-after-a-lid-state-change.patch with 100% similarity]
releases/2.6.27.5/acpi-clear-wak_sts-on-resume.patch [moved from review-2.6.27/acpi-clear-wak_sts-on-resume.patch with 100% similarity]
releases/2.6.27.5/acpi-ec-check-for-ibf-0-periodically-if-not-in-gpe-mode.patch [moved from review-2.6.27/acpi-ec-check-for-ibf-0-periodically-if-not-in-gpe-mode.patch with 100% similarity]
releases/2.6.27.5/acpi-ec-do-transaction-from-interrupt-context.patch [moved from review-2.6.27/acpi-ec-do-transaction-from-interrupt-context.patch with 100% similarity]
releases/2.6.27.5/acpi-ec-rename-some-variables.patch [moved from review-2.6.27/acpi-ec-rename-some-variables.patch with 100% similarity]
releases/2.6.27.5/acpi-ingore-the-reset_reg_sup-bit-when-using-acpi-reset-mechanism.patch [moved from review-2.6.27/acpi-ingore-the-reset_reg_sup-bit-when-using-acpi-reset-mechanism.patch with 100% similarity]
releases/2.6.27.5/agp-fix-stolen-memory-counting-on-g4x.patch [moved from review-2.6.27/agp-fix-stolen-memory-counting-on-g4x.patch with 100% similarity]
releases/2.6.27.5/alsa-hda-add-reboot-notifier.patch [moved from review-2.6.27/alsa-hda-add-reboot-notifier.patch with 100% similarity]
releases/2.6.27.5/alsa-use-correct-lock-in-snd_ctl_dev_disconnect.patch [moved from review-2.6.27/alsa-use-correct-lock-in-snd_ctl_dev_disconnect.patch with 100% similarity]
releases/2.6.27.5/atl1-fix-vlan-tag-regression.patch [moved from review-2.6.27/atl1-fix-vlan-tag-regression.patch with 100% similarity]
releases/2.6.27.5/bonding-fix-panic-when-taking-bond-interface-down-before-removing-module.patch [moved from review-2.6.27/bonding-fix-panic-when-taking-bond-interface-down-before-removing-module.patch with 100% similarity]
releases/2.6.27.5/dvb-s5h1411-bugfix-setting-serial-or-parallel-mode-could-destroy-bits.patch [moved from review-2.6.27/dvb-s5h1411-bugfix-setting-serial-or-parallel-mode-could-destroy-bits.patch with 100% similarity]
releases/2.6.27.5/dvb-s5h1411-perform-s5h1411-soft-reset-after-tuning.patch [moved from review-2.6.27/dvb-s5h1411-perform-s5h1411-soft-reset-after-tuning.patch with 100% similarity]
releases/2.6.27.5/dvb-s5h1411-power-down-s5h1411-when-not-in-use.patch [moved from review-2.6.27/dvb-s5h1411-power-down-s5h1411-when-not-in-use.patch with 100% similarity]
releases/2.6.27.5/file-caps-always-start-with-clear-bprm-caps_.patch [moved from review-2.6.27/file-caps-always-start-with-clear-bprm-caps_.patch with 100% similarity]
releases/2.6.27.5/firewire-fix-ioctl-return-code.patch [moved from review-2.6.27/firewire-fix-ioctl-return-code.patch with 100% similarity]
releases/2.6.27.5/firewire-fix-setting-tag-and-sy-in-iso-transmission.patch [moved from review-2.6.27/firewire-fix-setting-tag-and-sy-in-iso-transmission.patch with 100% similarity]
releases/2.6.27.5/firewire-fix-struct-fw_node-memory-leak.patch [moved from review-2.6.27/firewire-fix-struct-fw_node-memory-leak.patch with 100% similarity]
releases/2.6.27.5/firewire-fw-sbp2-delay-first-login-to-avoid-retries.patch [moved from review-2.6.27/firewire-fw-sbp2-delay-first-login-to-avoid-retries.patch with 100% similarity]
releases/2.6.27.5/firewire-fw-sbp2-fix-races.patch [moved from review-2.6.27/firewire-fw-sbp2-fix-races.patch with 100% similarity]
releases/2.6.27.5/firewire-survive-more-than-256-bus-resets.patch [moved from review-2.6.27/firewire-survive-more-than-256-bus-resets.patch with 100% similarity]
releases/2.6.27.5/hfsplus-check-read_mapping_page-return-value.patch [moved from review-2.6.27/hfsplus-check-read_mapping_page-return-value.patch with 100% similarity]
releases/2.6.27.5/hfsplus-fix-buffer-overflow-with-a-corrupted-image.patch [moved from review-2.6.27/hfsplus-fix-buffer-overflow-with-a-corrupted-image.patch with 100% similarity]
releases/2.6.27.5/i2c-the-i2c-mailing-list-is-moving.patch [moved from review-2.6.27/i2c-the-i2c-mailing-list-is-moving.patch with 100% similarity]
releases/2.6.27.5/input-atkbd-expand-latitude-s-force-release-quirk-to-other-dells.patch [moved from review-2.6.27/input-atkbd-expand-latitude-s-force-release-quirk-to-other-dells.patch with 100% similarity]
releases/2.6.27.5/ipmi-add-module_alias-to-load-ipmi_devintf-with-ipmi_si.patch [moved from review-2.6.27/ipmi-add-module_alias-to-load-ipmi_devintf-with-ipmi_si.patch with 100% similarity]
releases/2.6.27.5/kbuild-mkspec-fix-build-rpm.patch [moved from review-2.6.27/kbuild-mkspec-fix-build-rpm.patch with 100% similarity]
releases/2.6.27.5/libata-fix-lba48-on-pata_it821x-raid-volumes.patch [moved from review-2.6.27/libata-fix-lba48-on-pata_it821x-raid-volumes.patch with 100% similarity]
releases/2.6.27.5/libata-initialize-port_task-when-config_ata_sff.patch [moved from review-2.6.27/libata-initialize-port_task-when-config_ata_sff.patch with 100% similarity]
releases/2.6.27.5/libertas-fix-buffer-overrun.patch [moved from review-2.6.27/libertas-fix-buffer-overrun.patch with 100% similarity]
releases/2.6.27.5/mbox [moved from review-2.6.27/mbox with 100% similarity]
releases/2.6.27.5/net-fix-recursive-descent-in-__scm_destroy.patch [new file with mode: 0644]
releases/2.6.27.5/pci-fix-64-vbit-prefetchable-memory-resource-bars.patch [moved from review-2.6.27/pci-fix-64-vbit-prefetchable-memory-resource-bars.patch with 100% similarity]
releases/2.6.27.5/powerpc-don-t-use-a-16g-page-if-beyond-mem-limits.patch [moved from review-2.6.27/powerpc-don-t-use-a-16g-page-if-beyond-mem-limits.patch with 100% similarity]
releases/2.6.27.5/powerpc-fix-i2c-on-ppc-linkstation-kurobox-machines.patch [moved from review-2.6.27/powerpc-fix-i2c-on-ppc-linkstation-kurobox-machines.patch with 100% similarity]
releases/2.6.27.5/powerpc-numa-make-memory-reserve-code-more-robust.patch [moved from review-2.6.27/powerpc-numa-make-memory-reserve-code-more-robust.patch with 100% similarity]
releases/2.6.27.5/powerpc-reserve-in-bootmem-lmb-reserved-regions-that-cross-numa-nodes.patch [moved from review-2.6.27/powerpc-reserve-in-bootmem-lmb-reserved-regions-that-cross-numa-nodes.patch with 100% similarity]
releases/2.6.27.5/revert-hid-invert-hwheel-mappings-for-some-logitech-mice.patch [moved from review-2.6.27/revert-hid-invert-hwheel-mappings-for-some-logitech-mice.patch with 100% similarity]
releases/2.6.27.5/rtc-cmos-look-for-pnp-rtc-first-then-for-platform-rtc.patch [moved from review-2.6.27/rtc-cmos-look-for-pnp-rtc-first-then-for-platform-rtc.patch with 100% similarity]
releases/2.6.27.5/s390-fix-sysdev-class-file-creation.patch [moved from review-2.6.27/s390-fix-sysdev-class-file-creation.patch with 100% similarity]
releases/2.6.27.5/sata_nv-fix-generic-nf2-3-detection-regression.patch [moved from review-2.6.27/sata_nv-fix-generic-nf2-3-detection-regression.patch with 100% similarity]
releases/2.6.27.5/sata_promise-add-ata-engine-reset-to-reset-ops.patch [moved from review-2.6.27/sata_promise-add-ata-engine-reset-to-reset-ops.patch with 100% similarity]
releases/2.6.27.5/sched-disable-the-hrtick-for-now.patch [moved from review-2.6.27/sched-disable-the-hrtick-for-now.patch with 100% similarity]
releases/2.6.27.5/sched_clock-prevent-scd-clock-from-moving-backwards.patch [moved from review-2.6.27/sched_clock-prevent-scd-clock-from-moving-backwards.patch with 100% similarity]
releases/2.6.27.5/scsi-sd-fix-handling-of-no_sense-check-condition.patch [moved from review-2.6.27/scsi-sd-fix-handling-of-no_sense-check-condition.patch with 100% similarity]
releases/2.6.27.5/scx200_i2c-add-missing-class-parameter.patch [moved from review-2.6.27/scx200_i2c-add-missing-class-parameter.patch with 100% similarity]
releases/2.6.27.5/series [moved from review-2.6.27/series with 100% similarity]
releases/2.6.27.5/sysfs-fix-return-values-for-sysdev_store_-ulong-int.patch [moved from review-2.6.27/sysfs-fix-return-values-for-sysdev_store_-ulong-int.patch with 100% similarity]
releases/2.6.27.5/usb-fix-crash-when-urbs-are-unlinked-after-the-device-is-gone.patch [moved from review-2.6.27/usb-fix-crash-when-urbs-are-unlinked-after-the-device-is-gone.patch with 100% similarity]
releases/2.6.27.5/usb-storage-avoid-i-o-errors-when-issuing-scsi-ioctls-to-jmicron-usb-ata-bridge.patch [moved from review-2.6.27/usb-storage-avoid-i-o-errors-when-issuing-scsi-ioctls-to-jmicron-usb-ata-bridge.patch with 100% similarity]
releases/2.6.27.5/v4l-pvrusb2-keep-mpeg-ptss-from-drifting-away.patch [moved from review-2.6.27/v4l-pvrusb2-keep-mpeg-ptss-from-drifting-away.patch with 100% similarity]
releases/2.6.27.5/x86-avoid-dereferencing-beyond-stack-thread_size.patch [moved from review-2.6.27/x86-avoid-dereferencing-beyond-stack-thread_size.patch with 100% similarity]
releases/2.6.27.5/x86-fix-dev-mem-mmap-breakage-when-pat-is-disabled.patch [moved from review-2.6.27/x86-fix-dev-mem-mmap-breakage-when-pat-is-disabled.patch with 100% similarity]
releases/2.6.27.5/x86-register-a-platform-rtc-device-if-pnp-doesn-t-describe-it.patch [moved from review-2.6.27/x86-register-a-platform-rtc-device-if-pnp-doesn-t-describe-it.patch with 100% similarity]

similarity index 100%
rename from review-2.6.27/mbox
rename to releases/2.6.27.5/mbox
diff --git a/releases/2.6.27.5/net-fix-recursive-descent-in-__scm_destroy.patch b/releases/2.6.27.5/net-fix-recursive-descent-in-__scm_destroy.patch
new file mode 100644 (file)
index 0000000..62b84e9
--- /dev/null
@@ -0,0 +1,107 @@
+From f8d570a4745835f2238a33b537218a1bb03fc671 Mon Sep 17 00:00:00 2001
+From: David Miller <davem@davemloft.net>
+Date: Thu, 6 Nov 2008 00:37:40 -0800
+Subject: net: Fix recursive descent in __scm_destroy().
+
+From: David Miller <davem@davemloft.net>
+
+commit f8d570a4745835f2238a33b537218a1bb03fc671 and
+3b53fbf4314594fa04544b02b2fc6e607912da18 upstream (because once wasn't
+good enough...)
+
+__scm_destroy() walks the list of file descriptors in the scm_fp_list
+pointed to by the scm_cookie argument.
+
+Those, in turn, can close sockets and invoke __scm_destroy() again.
+
+There is nothing which limits how deeply this can occur.
+
+The idea for how to fix this is from Linus.  Basically, we do all of
+the fput()s at the top level by collecting all of the scm_fp_list
+objects hit by an fput().  Inside of the initial __scm_destroy() we
+keep running the list until it is empty.
+
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ include/linux/sched.h |    4 +++-
+ include/net/scm.h     |    5 +++--
+ net/core/scm.c        |   24 +++++++++++++++++++++---
+ 3 files changed, 27 insertions(+), 6 deletions(-)
+
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -1286,7 +1286,9 @@ struct task_struct {
+       atomic_t fs_excl;       /* holding fs exclusive resources */
+       struct rcu_head rcu;
+-      /*
++      struct list_head        *scm_work_list;
++
++/*
+        * cache last used pipe for splice
+        */
+       struct pipe_inode_info *splice_pipe;
+--- a/include/net/scm.h
++++ b/include/net/scm.h
+@@ -14,8 +14,9 @@
+ struct scm_fp_list
+ {
+-      int             count;
+-      struct file     *fp[SCM_MAX_FD];
++      struct list_head        list;
++      int                     count;
++      struct file             *fp[SCM_MAX_FD];
+ };
+ struct scm_cookie
+--- a/net/core/scm.c
++++ b/net/core/scm.c
+@@ -75,6 +75,7 @@ static int scm_fp_copy(struct cmsghdr *c
+               if (!fpl)
+                       return -ENOMEM;
+               *fplp = fpl;
++              INIT_LIST_HEAD(&fpl->list);
+               fpl->count = 0;
+       }
+       fpp = &fpl->fp[fpl->count];
+@@ -106,9 +107,25 @@ void __scm_destroy(struct scm_cookie *sc
+       if (fpl) {
+               scm->fp = NULL;
+-              for (i=fpl->count-1; i>=0; i--)
+-                      fput(fpl->fp[i]);
+-              kfree(fpl);
++              if (current->scm_work_list) {
++                      list_add_tail(&fpl->list, current->scm_work_list);
++              } else {
++                      LIST_HEAD(work_list);
++
++                      current->scm_work_list = &work_list;
++
++                      list_add(&fpl->list, &work_list);
++                      while (!list_empty(&work_list)) {
++                              fpl = list_first_entry(&work_list, struct scm_fp_list, list);
++
++                              list_del(&fpl->list);
++                              for (i=fpl->count-1; i>=0; i--)
++                                      fput(fpl->fp[i]);
++                              kfree(fpl);
++                      }
++
++                      current->scm_work_list = NULL;
++              }
+       }
+ }
+@@ -284,6 +301,7 @@ struct scm_fp_list *scm_fp_dup(struct sc
+       new_fpl = kmalloc(sizeof(*fpl), GFP_KERNEL);
+       if (new_fpl) {
++              INIT_LIST_HEAD(&new_fpl->list);
+               for (i=fpl->count-1; i>=0; i--)
+                       get_file(fpl->fp[i]);
+               memcpy(new_fpl, fpl, sizeof(*fpl));