]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
more 2.6.22 patches added
authorGreg Kroah-Hartman <gregkh@suse.de>
Mon, 13 Aug 2007 23:28:29 +0000 (16:28 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 13 Aug 2007 23:28:29 +0000 (16:28 -0700)
queue-2.6.22/direct-io-fix-error-path-crashes.patch [new file with mode: 0644]
queue-2.6.22/pata_atiixp-add-sb700-pci-id.patch [new file with mode: 0644]
queue-2.6.22/powerpc-fix-size-check-for-hugetlbfs.patch [new file with mode: 0644]
queue-2.6.22/ppc-revert-add-mdio-to-bus-scan-id-list-for-platforms-with-qe-uec.patch [new file with mode: 0644]
queue-2.6.22/ppc-revert-don-t-complain-if-size-cells-0-in-prom_parse.patch [new file with mode: 0644]
queue-2.6.22/series
queue-2.6.22/stifb-detect-cards-in-double-buffer-mode-more-reliably.patch [new file with mode: 0644]

diff --git a/queue-2.6.22/direct-io-fix-error-path-crashes.patch b/queue-2.6.22/direct-io-fix-error-path-crashes.patch
new file mode 100644 (file)
index 0000000..83816c7
--- /dev/null
@@ -0,0 +1,41 @@
+From akpm@linux-foundation.org  Mon Aug 13 16:18:09 2007
+From: Badari Pulavarty <pbadari@us.ibm.com>
+Date: Fri, 10 Aug 2007 13:00:44 -0700
+Subject: direct-io: fix error-path crashes
+To: torvalds@linux-foundation.org
+Cc: gurudas.pai@oracle.com, zach.brown@oracle.com, joe.jin@oracle.com, pbadari@us.ibm.com, akpm@linux-foundation.org, stable@kernel.org
+Message-ID: <200708102000.l7AK0iSY005849@imap1.linux-foundation.org>
+
+
+From: Badari Pulavarty <pbadari@us.ibm.com>
+
+Need to initialize map_bh.b_state to zero.  Otherwise, in case of a faulty
+user-buffer its possible to go into dio_zero_block() and submit a page by
+mistake - since it checks for buffer_new().
+
+http://marc.info/?l=linux-kernel&m=118551339032528&w=2
+
+akpm: Linus had a (better) patch to just do a kzalloc() in there, but it got
+lost.  Probably this version is better for -stable anwyay.
+
+Signed-off-by: Badari Pulavarty <pbadari@us.ibm.com>
+Acked-by: Joe Jin <joe.jin@oracle.com>
+Acked-by: Zach Brown <zach.brown@oracle.com>
+Cc: gurudas pai <gurudas.pai@oracle.com>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ fs/direct-io.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/fs/direct-io.c
++++ b/fs/direct-io.c
+@@ -974,6 +974,7 @@ direct_io_worker(int rw, struct kiocb *i
+       dio->get_block = get_block;
+       dio->end_io = end_io;
+       dio->map_bh.b_private = NULL;
++      dio->map_bh.b_state = 0;
+       dio->final_block_in_bio = -1;
+       dio->next_block_for_io = -1;
diff --git a/queue-2.6.22/pata_atiixp-add-sb700-pci-id.patch b/queue-2.6.22/pata_atiixp-add-sb700-pci-id.patch
new file mode 100644 (file)
index 0000000..ad1177d
--- /dev/null
@@ -0,0 +1,32 @@
+From cebbert@redhat.com  Mon Aug 13 16:24:55 2007
+From: Jeff Garzik <jeff@garzik.org>
+Date: Mon, 13 Aug 2007 16:31:32 -0400
+Subject: pata_atiixp: add SB700 PCI ID
+To: linux-stable <stable@kernel.org>
+Cc: Jeff Garzik <jeff@garzik.org>
+Message-ID: <46C0BFA4.2020500@redhat.com>
+
+From: Jeff Garzik <jeff@garzik.org>
+
+[libata] pata_atiixp: add SB700 PCI ID
+
+From AMD.
+
+Signed-off-by: Jeff Garzik <jeff@garzik.org>
+Cc: Chuck Ebbert <cebbert@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/ata/pata_atiixp.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/ata/pata_atiixp.c
++++ b/drivers/ata/pata_atiixp.c
+@@ -285,6 +285,7 @@ static const struct pci_device_id atiixp
+       { PCI_VDEVICE(ATI, PCI_DEVICE_ID_ATI_IXP300_IDE), },
+       { PCI_VDEVICE(ATI, PCI_DEVICE_ID_ATI_IXP400_IDE), },
+       { PCI_VDEVICE(ATI, PCI_DEVICE_ID_ATI_IXP600_IDE), },
++      { PCI_VDEVICE(ATI, PCI_DEVICE_ID_ATI_IXP700_IDE), },
+       { },
+ };
diff --git a/queue-2.6.22/powerpc-fix-size-check-for-hugetlbfs.patch b/queue-2.6.22/powerpc-fix-size-check-for-hugetlbfs.patch
new file mode 100644 (file)
index 0000000..d13012c
--- /dev/null
@@ -0,0 +1,36 @@
+From benh@kernel.crashing.org  Mon Aug 13 16:17:09 2007
+From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
+Date: Wed, 08 Aug 2007 15:44:15 +1000
+Subject: powerpc: Fix size check for hugetlbfs
+To: linuxppc-dev list <linuxppc-dev@ozlabs.org>
+Cc: Paul Mackerras <paulus@samba.org>, stable@kernel.org
+Message-ID: <1186551855.938.164.camel@localhost.localdomain>
+
+From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
+
+My "slices" address space management code that was added in 2.6.22
+implementation of get_unmapped_area() doesn't properly check that the
+size is a multiple of the requested page size. This allows userland to
+create VMAs that aren't a multiple of the huge page size with hugetlbfs
+(since hugetlbfs entirely relies on get_unmapped_area() to do that
+checking) which leads to a kernel BUG() when such areas are torn down.
+
+Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
+Signed-off-by: Paul Mackerras <paulus@samba.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ arch/powerpc/mm/slice.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/arch/powerpc/mm/slice.c
++++ b/arch/powerpc/mm/slice.c
+@@ -405,6 +405,8 @@ unsigned long slice_get_unmapped_area(un
+       if (len > mm->task_size)
+               return -ENOMEM;
++      if (len & ((1ul << pshift) - 1))
++              return -EINVAL;
+       if (fixed && (addr & ((1ul << pshift) - 1)))
+               return -EINVAL;
+       if (fixed && addr > (mm->task_size - len))
diff --git a/queue-2.6.22/ppc-revert-add-mdio-to-bus-scan-id-list-for-platforms-with-qe-uec.patch b/queue-2.6.22/ppc-revert-add-mdio-to-bus-scan-id-list-for-platforms-with-qe-uec.patch
new file mode 100644 (file)
index 0000000..94a3438
--- /dev/null
@@ -0,0 +1,74 @@
+From kim.phillips@freescale.com  Mon Aug 13 16:16:26 2007
+From: Kim Phillips <kim.phillips@freescale.com>
+Date: Thu, 26 Jul 2007 17:25:12 -0500
+Subject: PPC: Revert "[POWERPC] Add 'mdio' to bus scan id list for platforms with QE UEC"
+To: stable@kernel.org
+Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>, Paul Mackerras <paulus@samba.org>, Kumar Gala <galak@kernel.crashing.org>, Rutger Nijlunsing <rutger@nospam.com>
+Message-ID: <20070726172512.eb59a21d.kim.phillips@freescale.com>
+
+From: Kim Phillips <kim.phillips@freescale.com>
+
+This reverts commit 3baee955953957be5496cd28e9c544d9db214262.
+
+this was a mistake from the start; I added mdio type to the bus
+scan list early on in my ucc_geth migrate to phylib development,
+which is just pure wrong (the ucc_geth_mii driver creates the mii
+bus and the PHY layer handles PHY enumeration without translation).
+
+this accompanies commit 77926826f301fbd8ed96d3cd9ff17a5b59560dfb:
+
+ Revert "[POWERPC] Don't complain if size-cells == 0 in prom_parse()"
+
+which was basically trying to hide a symptom of the original mistake
+this revert fixes.
+
+Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ arch/powerpc/platforms/83xx/mpc832x_mds.c |    1 -
+ arch/powerpc/platforms/83xx/mpc832x_rdb.c |    1 -
+ arch/powerpc/platforms/83xx/mpc836x_mds.c |    1 -
+ arch/powerpc/platforms/85xx/mpc85xx_mds.c |    1 -
+ 4 files changed, 4 deletions(-)
+
+--- a/arch/powerpc/platforms/83xx/mpc832x_mds.c
++++ b/arch/powerpc/platforms/83xx/mpc832x_mds.c
+@@ -111,7 +111,6 @@ static struct of_device_id mpc832x_ids[]
+       { .type = "soc", },
+       { .compatible = "soc", },
+       { .type = "qe", },
+-      { .type = "mdio", },
+       {},
+ };
+--- a/arch/powerpc/platforms/83xx/mpc832x_rdb.c
++++ b/arch/powerpc/platforms/83xx/mpc832x_rdb.c
+@@ -75,7 +75,6 @@ static struct of_device_id mpc832x_ids[]
+       { .type = "soc", },
+       { .compatible = "soc", },
+       { .type = "qe", },
+-      { .type = "mdio", },
+       {},
+ };
+--- a/arch/powerpc/platforms/83xx/mpc836x_mds.c
++++ b/arch/powerpc/platforms/83xx/mpc836x_mds.c
+@@ -118,7 +118,6 @@ static struct of_device_id mpc836x_ids[]
+       { .type = "soc", },
+       { .compatible = "soc", },
+       { .type = "qe", },
+-      { .type = "mdio", },
+       {},
+ };
+--- a/arch/powerpc/platforms/85xx/mpc85xx_mds.c
++++ b/arch/powerpc/platforms/85xx/mpc85xx_mds.c
+@@ -147,7 +147,6 @@ static struct of_device_id mpc85xx_ids[]
+       { .type = "soc", },
+       { .compatible = "soc", },
+       { .type = "qe", },
+-      { .type = "mdio", },
+       {},
+ };
diff --git a/queue-2.6.22/ppc-revert-don-t-complain-if-size-cells-0-in-prom_parse.patch b/queue-2.6.22/ppc-revert-don-t-complain-if-size-cells-0-in-prom_parse.patch
new file mode 100644 (file)
index 0000000..ae55b03
--- /dev/null
@@ -0,0 +1,47 @@
+From kim.phillips@freescale.com  Mon Aug 13 16:14:34 2007
+From: Kim Phillips <kim.phillips@freescale.com>
+Date: Thu, 26 Jul 2007 17:25:05 -0500
+Subject: PPC: Revert "[POWERPC] Don't complain if size-cells == 0 in prom_parse()"
+To: stable@kernel.org
+Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>, Paul Mackerras <paulus@samba.org>, Kumar Gala <galak@kernel.crashing.org>, Rutger Nijlunsing <rutger@nospam.com>
+Message-ID: <20070726172505.0ec38fb3.kim.phillips@freescale.com>
+
+From: Paul Mackerras <paulus@samba.org>
+
+This reverts commit fd6e9d3945ee122eb513ada8b17296d243c1ce5e.
+
+Having #size-cells == 0 in a node indicates that things under the
+node aren't directly accessible, and therefore we shouldn't try to
+translate addresses for devices under the node into CPU physical
+addresses.
+
+Some drivers, such as the nvram driver for powermacs, rely on
+of_address_to_resource failing if they are called for a node
+representing a device whose resources aren't directly accessible
+by the CPU.  These drivers were broken by commit fd6e9d39,
+resulting in the "Lombard" powerbook hanging early in the boot
+process.
+
+stable team, this patch is equivalent to commit
+
+77926826f301fbd8ed96d3cd9ff17a5b59560dfb
+
+Signed-off-by: Paul Mackerras <paulus@samba.org>
+Cc: Kim Phillips <kim.phillips@freescale.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ arch/powerpc/kernel/prom_parse.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/powerpc/kernel/prom_parse.c
++++ b/arch/powerpc/kernel/prom_parse.c
+@@ -24,7 +24,7 @@
+ /* Max address size we deal with */
+ #define OF_MAX_ADDR_CELLS     4
+ #define OF_CHECK_COUNTS(na, ns)       ((na) > 0 && (na) <= OF_MAX_ADDR_CELLS && \
+-                      (ns) >= 0)
++                      (ns) > 0)
+ static struct of_bus *of_match_bus(struct device_node *np);
+ static int __of_address_to_resource(struct device_node *dev,
index 0a0ccc7f6c361cb0ec39e45e4d5347b59a9d424c..ad51f072c250082232a54fe4a8e39ee8c9ee9445 100644 (file)
@@ -2,3 +2,9 @@ fix-oops-in-__audit_signal_info.patch
 random-fix-bound-check-ordering.patch
 softmac-fix-deadlock-of-wx_set_essid-with-assoc-work.patch
 ata_piix-update-map-10b-for-ich8m.patch
+ppc-revert-don-t-complain-if-size-cells-0-in-prom_parse.patch
+ppc-revert-add-mdio-to-bus-scan-id-list-for-platforms-with-qe-uec.patch
+powerpc-fix-size-check-for-hugetlbfs.patch
+direct-io-fix-error-path-crashes.patch
+stifb-detect-cards-in-double-buffer-mode-more-reliably.patch
+pata_atiixp-add-sb700-pci-id.patch
diff --git a/queue-2.6.22/stifb-detect-cards-in-double-buffer-mode-more-reliably.patch b/queue-2.6.22/stifb-detect-cards-in-double-buffer-mode-more-reliably.patch
new file mode 100644 (file)
index 0000000..fbdf655
--- /dev/null
@@ -0,0 +1,65 @@
+From akpm@linux-foundation.org  Mon Aug 13 16:18:33 2007
+From: Helge Deller <deller@gmx.de>
+Date: Fri, 10 Aug 2007 13:00:45 -0700
+Subject: stifb: detect cards in double buffer mode more reliably
+To: torvalds@linux-foundation.org
+Cc: kyle@mcmartin.ca, akpm@linux-foundation.org, deller@gmx.de, adaplas@gmail.com, stable@kernel.org
+Message-ID: <200708102000.l7AK0jnj005853@imap1.linux-foundation.org>
+
+
+From: Helge Deller <deller@gmx.de>
+
+Visualize-EG, Graffiti and A4450A graphics cards on PARISC can
+be configured in double-buffer and standard mode, but the stifb
+driver supports standard mode only.
+This patch detects double-buffered cards more reliable.
+
+It is a real bugfix for a very nasty problem for all parisc users which have
+wrongly configured their graphic card.  The problem: The stifb graphics driver
+will not detect that the card is wrongly configured and then nevertheless just
+enables the graphics mode, which it shouldn't.  In the end, the user will see
+no further updates / boot messages on the screen.
+
+We had documented this problem already on our FAQ
+(http://parisc-linux.org/faq/index.html#viseg "Why do I get corrupted graphics
+with my Vis-EG/Graffiti/A4450A card?") but people still run into this problem.
+ So having this fix in as early as possible can help us.
+
+Signed-off-by: Helge Deller <deller@gmx.de>
+Signed-off-by: Antonino Daplas <adaplas@gmail.com>
+Cc: Kyle McMartin <kyle@mcmartin.ca>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/video/stifb.c |   19 ++++++++++++-------
+ 1 file changed, 12 insertions(+), 7 deletions(-)
+
+--- a/drivers/video/stifb.c
++++ b/drivers/video/stifb.c
+@@ -1100,13 +1100,18 @@ stifb_init_fb(struct sti_struct *sti, in
+       /* only supported cards are allowed */
+       switch (fb->id) {
+       case CRT_ID_VISUALIZE_EG:
+-              /* look for a double buffering device like e.g. the 
+-                 "INTERNAL_EG_DX1024" in the RDI precisionbook laptop
+-                 which won't work. The same device in non-double 
+-                 buffering mode returns "INTERNAL_EG_X1024". */
+-              if (strstr(sti->outptr.dev_name, "EG_DX")) {
+-                 printk(KERN_WARNING 
+-                      "stifb: ignoring '%s'. Disable double buffering in IPL menu.\n",
++              /* Visualize cards can run either in "double buffer" or
++                "standard" mode. Depending on the mode, the card reports
++                a different device name, e.g. "INTERNAL_EG_DX1024" in double
++                buffer mode and "INTERNAL_EG_X1024" in standard mode.
++                Since this driver only supports standard mode, we check
++                if the device name contains the string "DX" and tell the
++                user how to reconfigure the card. */
++              if (strstr(sti->outptr.dev_name, "DX")) {
++                 printk(KERN_WARNING "WARNING: stifb framebuffer driver does not "
++                      "support '%s' in double-buffer mode.\n"
++                      KERN_WARNING "WARNING: Please disable the double-buffer mode "
++                      "in IPL menu (the PARISC-BIOS).\n",
+                       sti->outptr.dev_name);
+                  goto out_err0;
+               }