r3415 - in branches/linux-kernel-2.6.12/debian: . arch/amd64 patches-debian patches-debian/series
Frederik Schüler
fschueler-guest@costa.debian.org
Thu, 30 Jun 2005 12:25:26 +0000
Author: fschueler-guest
Date: 2005-06-30 12:25:25 +0000 (Thu, 30 Jun 2005)
New Revision: 3415
Added:
branches/linux-kernel-2.6.12/debian/patches-debian/patch-2.6.12.2
Modified:
branches/linux-kernel-2.6.12/debian/arch/amd64/Makefile.inc
branches/linux-kernel-2.6.12/debian/changelog
branches/linux-kernel-2.6.12/debian/patches-debian/series/2.6.12-1
Log:
Merged 2.6.12.2.
Modified: branches/linux-kernel-2.6.12/debian/arch/amd64/Makefile.inc
===================================================================
--- branches/linux-kernel-2.6.12/debian/arch/amd64/Makefile.inc 2005-06-30 10:20:53 UTC (rev 3414)
+++ branches/linux-kernel-2.6.12/debian/arch/amd64/Makefile.inc 2005-06-30 12:25:25 UTC (rev 3415)
@@ -6,4 +6,5 @@
initrd_modules := kernel/drivers/video/vesafb.ko kernel/security/capability.ko
headers_dirs = x86_64
build_makeflags := 'V=1 CC=gcc-3.4'
+default_config := default
Modified: branches/linux-kernel-2.6.12/debian/changelog
===================================================================
--- branches/linux-kernel-2.6.12/debian/changelog 2005-06-30 10:20:53 UTC (rev 3414)
+++ branches/linux-kernel-2.6.12/debian/changelog 2005-06-30 12:25:25 UTC (rev 3415)
@@ -18,5 +18,13 @@
* Add 2.6.12.1 (Maximilian Attems)
- Clean up subthread exec (CAN-2005-1913)
- ia64 ptrace + sigrestore_context (CAN-2005-1761)
+ * Add 2.6.12.2 (Frederik Schüler)
+ - Fix two socket hashing bugs.
+ - ACPI: Make sure we call acpi_register_gsi() even for default PCI
+ interrupt assignment
+ - Add "memory" clobbers to the x86 inline asm of strncmp and friends
+ - e1000: fix spinlock bug
+ - fix remap_pte_range BUG
+ - Fix typo in drivers/pci/pci-driver.c
- -- Frederik Schüler <f.schueler@gmx.net> Wed, 18 May 2005 12:44:53 +0200
+ -- Frederik Schüler <fschueler@gmx.net> Thu, 30 Jun 2005 14:02:19 +0200
Added: branches/linux-kernel-2.6.12/debian/patches-debian/patch-2.6.12.2
===================================================================
--- branches/linux-kernel-2.6.12/debian/patches-debian/patch-2.6.12.2 2005-06-30 10:20:53 UTC (rev 3414)
+++ branches/linux-kernel-2.6.12/debian/patches-debian/patch-2.6.12.2 2005-06-30 12:25:25 UTC (rev 3415)
@@ -0,0 +1,172 @@
+diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c
+--- a/drivers/acpi/pci_irq.c
++++ b/drivers/acpi/pci_irq.c
+@@ -435,6 +435,7 @@ acpi_pci_irq_enable (
+ /* Interrupt Line values above 0xF are forbidden */
+ if (dev->irq >= 0 && (dev->irq <= 0xF)) {
+ printk(" - using IRQ %d\n", dev->irq);
++ acpi_register_gsi(dev->irq, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW);
+ return_VALUE(0);
+ }
+ else {
+diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
+--- a/drivers/net/e1000/e1000_main.c
++++ b/drivers/net/e1000/e1000_main.c
+@@ -2307,6 +2307,7 @@ e1000_xmit_frame(struct sk_buff *skb, st
+ tso = e1000_tso(adapter, skb);
+ if (tso < 0) {
+ dev_kfree_skb_any(skb);
++ spin_unlock_irqrestore(&adapter->tx_lock, flags);
+ return NETDEV_TX_OK;
+ }
+
+diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c
+--- a/drivers/pci/pci-driver.c
++++ b/drivers/pci/pci-driver.c
+@@ -396,7 +396,7 @@ int pci_register_driver(struct pci_drive
+ /* FIXME, once all of the existing PCI drivers have been fixed to set
+ * the pci shutdown function, this test can go away. */
+ if (!drv->driver.shutdown)
+- drv->driver.shutdown = pci_device_shutdown,
++ drv->driver.shutdown = pci_device_shutdown;
+ drv->driver.owner = drv->owner;
+ drv->driver.kobj.ktype = &pci_driver_kobj_type;
+ pci_init_dynids(&drv->dynids);
+diff --git a/include/asm-i386/string.h b/include/asm-i386/string.h
+--- a/include/asm-i386/string.h
++++ b/include/asm-i386/string.h
+@@ -116,7 +116,8 @@ __asm__ __volatile__(
+ "orb $1,%%al\n"
+ "3:"
+ :"=a" (__res), "=&S" (d0), "=&D" (d1)
+- :"1" (cs),"2" (ct));
++ :"1" (cs),"2" (ct)
++ :"memory");
+ return __res;
+ }
+
+@@ -138,8 +139,9 @@ __asm__ __volatile__(
+ "3:\tsbbl %%eax,%%eax\n\t"
+ "orb $1,%%al\n"
+ "4:"
+- :"=a" (__res), "=&S" (d0), "=&D" (d1), "=&c" (d2)
+- :"1" (cs),"2" (ct),"3" (count));
++ :"=a" (__res), "=&S" (d0), "=&D" (d1), "=&c" (d2)
++ :"1" (cs),"2" (ct),"3" (count)
++ :"memory");
+ return __res;
+ }
+
+@@ -158,7 +160,9 @@ __asm__ __volatile__(
+ "movl $1,%1\n"
+ "2:\tmovl %1,%0\n\t"
+ "decl %0"
+- :"=a" (__res), "=&S" (d0) : "1" (s),"0" (c));
++ :"=a" (__res), "=&S" (d0)
++ :"1" (s),"0" (c)
++ :"memory");
+ return __res;
+ }
+
+@@ -175,7 +179,9 @@ __asm__ __volatile__(
+ "leal -1(%%esi),%0\n"
+ "2:\ttestb %%al,%%al\n\t"
+ "jne 1b"
+- :"=g" (__res), "=&S" (d0), "=&a" (d1) :"0" (0),"1" (s),"2" (c));
++ :"=g" (__res), "=&S" (d0), "=&a" (d1)
++ :"0" (0),"1" (s),"2" (c)
++ :"memory");
+ return __res;
+ }
+
+@@ -189,7 +195,9 @@ __asm__ __volatile__(
+ "scasb\n\t"
+ "notl %0\n\t"
+ "decl %0"
+- :"=c" (__res), "=&D" (d0) :"1" (s),"a" (0), "0" (0xffffffffu));
++ :"=c" (__res), "=&D" (d0)
++ :"1" (s),"a" (0), "0" (0xffffffffu)
++ :"memory");
+ return __res;
+ }
+
+@@ -333,7 +341,9 @@ __asm__ __volatile__(
+ "je 1f\n\t"
+ "movl $1,%0\n"
+ "1:\tdecl %0"
+- :"=D" (__res), "=&c" (d0) : "a" (c),"0" (cs),"1" (count));
++ :"=D" (__res), "=&c" (d0)
++ :"a" (c),"0" (cs),"1" (count)
++ :"memory");
+ return __res;
+ }
+
+@@ -369,7 +379,7 @@ __asm__ __volatile__(
+ "je 2f\n\t"
+ "stosb\n"
+ "2:"
+- : "=&c" (d0), "=&D" (d1)
++ :"=&c" (d0), "=&D" (d1)
+ :"a" (c), "q" (count), "0" (count/4), "1" ((long) s)
+ :"memory");
+ return (s);
+@@ -392,7 +402,8 @@ __asm__ __volatile__(
+ "jne 1b\n"
+ "3:\tsubl %2,%0"
+ :"=a" (__res), "=&d" (d0)
+- :"c" (s),"1" (count));
++ :"c" (s),"1" (count)
++ :"memory");
+ return __res;
+ }
+ /* end of additional stuff */
+@@ -473,7 +484,8 @@ static inline void * memscan(void * addr
+ "dec %%edi\n"
+ "1:"
+ : "=D" (addr), "=c" (size)
+- : "0" (addr), "1" (size), "a" (c));
++ : "0" (addr), "1" (size), "a" (c)
++ : "memory");
+ return addr;
+ }
+
+diff --git a/mm/memory.c b/mm/memory.c
+--- a/mm/memory.c
++++ b/mm/memory.c
+@@ -1164,7 +1164,7 @@ int remap_pfn_range(struct vm_area_struc
+ {
+ pgd_t *pgd;
+ unsigned long next;
+- unsigned long end = addr + size;
++ unsigned long end = addr + PAGE_ALIGN(size);
+ struct mm_struct *mm = vma->vm_mm;
+ int err;
+
+diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c
+--- a/net/netlink/af_netlink.c
++++ b/net/netlink/af_netlink.c
+@@ -315,8 +315,8 @@ err:
+ static void netlink_remove(struct sock *sk)
+ {
+ netlink_table_grab();
+- nl_table[sk->sk_protocol].hash.entries--;
+- sk_del_node_init(sk);
++ if (sk_del_node_init(sk))
++ nl_table[sk->sk_protocol].hash.entries--;
+ if (nlk_sk(sk)->groups)
+ __sk_del_bind_node(sk);
+ netlink_table_ungrab();
+@@ -429,7 +429,12 @@ retry:
+ err = netlink_insert(sk, pid);
+ if (err == -EADDRINUSE)
+ goto retry;
+- return 0;
++
++ /* If 2 threads race to autobind, that is fine. */
++ if (err == -EBUSY)
++ err = 0;
++
++ return err;
+ }
+
+ static inline int netlink_capable(struct socket *sock, unsigned int flag)
Modified: branches/linux-kernel-2.6.12/debian/patches-debian/series/2.6.12-1
===================================================================
--- branches/linux-kernel-2.6.12/debian/patches-debian/series/2.6.12-1 2005-06-30 10:20:53 UTC (rev 3414)
+++ branches/linux-kernel-2.6.12/debian/patches-debian/series/2.6.12-1 2005-06-30 12:25:25 UTC (rev 3415)
@@ -22,3 +22,4 @@
+ ia64-generic-nosmp.patch
+ patch-2.6.12.1
+ powerpc-ppc64-biarch-override.patch
++ patch-2.6.12.2