summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2007-08-30SCTP: Fix to encode PROTOCOL VIOLATION error cause correctlyWei Yongjun2-1/+2
PROTOCOL VIOLATION error cause in ABORT is bad encode when make abort chunk. When SCTP encode ABORT chunk with PROTOCOL VIOLATION error cause, it just add the error messages to PROTOCOL VIOLATION error cause, the rest four bytes(struct sctp_paramhdr) is just add to the chunk, not change the length of error cause. This cause the ABORT chunk to be a bad format. The chunk is like this: ABORT chunk Chunk type: ABORT (6) Chunk flags: 0x00 Chunk length: 72 (*1) Protocol violation cause Cause code: Protocol violation (0x000d) Cause length: 62 (*2) Cause information: 5468652063756D756C61746976652074736E2061636B2062... Cause padding: 0000 [Needless] 00030010 Chunk Length(*1) = 72 but Cause length(*2) only 62, not include the extend 4 bytes. ((72 - sizeof(chunk_hdr)) = 68) != (62 +3) / 4 * 4 Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com> Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
2007-08-29SCTP: properly clean up fragment and ordering queues during FWD-TSN.Vlad Yasevich1-0/+1
When we recieve a FWD-TSN (meaning the peer has abandoned the data), we need to clean up any partially received messages that may be hanging out on the re-assembly or re-ordering queues. This is a MUST requirement that was not properly done before. Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com.>
2007-08-28Merge branch 'master' of ↵Linus Torvalds1-1/+5
master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC32]: Make flush_tlb_kernel_range() an inline function. [SERIAL]: Fix 32-bit warnings in sunzilog.c and sunsu.c [SPARC32]: Kill unused vars and macros from prom/console.c [SPARC32]: Add __cmpdi2() libcall implementation ala. MIPS. [VIDEO]: Do not prom_halt() in cg3 and bw2 device probe. [SUNVDC]: Use slice 0xff on VD_DISK_TYPE_DISK.
2007-08-28Merge branch 'master' of ↵Linus Torvalds2-2/+3
master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [NET]: Mark Paul Moore as maintainer of labelled networking. [VLAN/BRIDGE]: Fix "skb_pull_rcsum - Fatal exception in interrupt" [ISDN]: Get rid of some pointless allocation casts in common and bsd comp. [NET]: Avoid pointless allocation casts in BSD compression module [IRDA]: Do not do pointless kmalloc return value cast in KingSun driver [NET]: Fix crash in dev_mc_sync()/dev_mc_unsync() [PPPOL2TP]: Fix endianness annotations. [IOAT]: ioatdma needs to to play nice in a multi-dma-client world [SLIP]: trivial sparse warning fix [EQL]: sparse warning fix [NET]: is_power_of_2 in net/core/neighbour.c [TCP]: Describe tcp_init_cwnd() thoroughly in a comment. [NET]: Fix IP_ADD/DROP_MEMBERSHIP to handle only connectionless [KBUILD]: Sanitize tc_ematch headers. [IPSEC] AH4: Update IPv4 options handling to conform to RFC 4302.
2007-08-27Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linusLinus Torvalds17-1538/+103
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (60 commits) [MIPS] Fulong doesn't need ISA DMA. [MIPS] IP27: intr_sconnect_level: don't disable interrupts. [MIPS] IP27: startup_bridge_irq: connect interrupt. [MIPS] IP27: shutdown_bridge_irq: don't free irq. [MIPS] Sort out handling of ISA-less PCI systems. [MIPS] Add __cmpdi2 [MIPS] HOTPLUG: Make register_pci_controller __devinit. [MIPS] PCI: Remove __devinit attribute from pcibios_fixup_bus. [MIPS] PCI: Remove __devinit attribute from pcibios_fixup_bus. [MIPS] Delete duplicate inclusion of <linux/delay.h>. [MIPS] Polish <asm/edac.h>. [MIPS] IP22: Export sgi_gfxaddr for use by the Newport console driver. [MIPS] Maintain si_code field properly for FP exceptions [MIPS] SMTC: Fix duplicate status dumps on NMI [MIPS] Unconditionally writeback and invalidate caches on kexec. [PATCH] rtc: Make rtc-rs5c348 driver hotplug-aware [MIPS] Fix gcc 3.3 warning. [MIPS] Fix invalid semicolon after if statement [MIPS] Update Cobalt defconfig [MIPS] Update workpad_defconfig ...
2007-08-27Merge branch 'merge' of ↵Linus Torvalds1-1/+1
git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] Fix SLB initialization at boot time [POWERPC] Fix undefined reference to device_power_up/resume [POWERPC] cell: Update cell_defconfig for 2.6.23 [POWERPC] axonram: Do not delete gendisks queue in error path [POWERPC] axonram: Module modification for latest firmware API changes [POWERPC] cell: Support pinhole-reset on IBM cell blades [POWERPC] spu_manage: Use newer physical-id attribute [POWERPC] pasemi: Another IOMMU bugfix for 64K PAGE_SIZE
2007-08-27Merge branch 'master' of ↵Linus Torvalds2-0/+16
git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6 * 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6: [PARISC] Add NOTES section [PARISC] Use compat_sys_getdents [PARISC] Do not allow STI_CONSOLE to be modular [PARISC] Clean up sti_flush [PARISC] Add dummy isa_(bus|virt)_to_(virt|bus) inlines [PARISC] Add empty <asm-parisc/vga.h>
2007-08-27[PARISC] Add dummy isa_(bus|virt)_to_(virt|bus) inlinesKyle McMartin1-0/+10
Less painful than fixing up the Kconfig for a pile of drivers to only build on X86 && ARM && MIPS... Just make them BUG(), as defining them to be 1:1 with physical memory will likely HPMC the box anyways. Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2007-08-27[PARISC] Add empty <asm-parisc/vga.h>Kyle McMartin1-0/+6
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2007-08-27[SPARC32]: Make flush_tlb_kernel_range() an inline function.David S. Miller1-1/+5
This avoids unused variable warnings in places like mm/vmalloc.c: mm/vmalloc.c: In function ‘unmap_kernel_range’: mm/vmalloc.c:75: warning: unused variable ‘start’ caused by it previously being a macro. Signed-off-by: David S. Miller <davem@davemloft.net>
2007-08-27[PPPOL2TP]: Fix endianness annotations.Al Viro1-2/+2
{s,d}_{session,tunnel} in pppol2tp_addr are actually host-endian everywhere. We might switch them to net-endian, of course, but that structure is exposed to userland via getname... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
2007-08-27[KBUILD]: Sanitize tc_ematch headers.Stephen Hemminger1-0/+1
The headers in tc_ematch are used by iproute2, so these headers should be processed. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2007-08-27[MIPS] Polish <asm/edac.h>.Ralf Baechle1-9/+8
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] Gcc 3.3 build fixes.Ralf Baechle1-1/+5
Work around gcc 3.3's unability to evaluate that certain expressions indeed are constant. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] unwind_stack should return a value ...Ralf Baechle1-0/+1
And gcc 3.4 doesn't even warn out this, grrr. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] SMTC: Fix crash on bootup with idebus= command line argument.Ralf Baechle1-51/+25
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] Fix build error if CONFIG_KALLSYMS is undefined.Ralf Baechle1-1/+4
CC arch/mips/kernel/traps.o arch/mips/kernel/traps.c: In function 'show_backtrace': arch/mips/kernel/traps.c:110: warning: unused variable 'ra' Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] SMTC: Move MIPS_CPU_IPI_IRQ definition into header.Ralf Baechle1-0/+10
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] remove unused marvell.hYoichi Yuasa1-59/+0
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] remove unused gt64240.hYoichi Yuasa1-1235/+0
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] SNI: remove unused pcimt_scache.cYoichi Yuasa1-1/+0
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] Cleanup TX39/TX49 irq codeAtsushi Nemoto7-165/+14
Cleanup jmr3927, tx4927 and tx4938 irq codes, using common IRQ_CPU, I8259 and IRQ_TXX9 irq routines. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] The irq_chip for TX39/TX49 SoCsAtsushi Nemoto1-0/+30
Add generic irq_chip for TX39/TX49 SoCs. This can be replace jmr3927_irq_irc, tx4927_irq_pic_type and tx4938_irq_pic_type. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] Compute PGD_ORDER from the select page size.Ralf Baechle1-8/+2
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] Fix computation of {PGD,PMD,PTE}_T_LOG2.Ralf Baechle1-3/+3
For the generation of asm-offset.h to work these need to be evaulatable by gcc as a constant expression. This issue did exist for a while but didn't bite because they're only in asm-offset.h for debugging purposes. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-27[MIPS] Fix computation of PGDIR_SHIFT for 16K pagesize on 32-bit kernels.Ralf Baechle1-5/+1
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2007-08-25Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-schedLinus Torvalds1-1/+2
* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched: sched: cleanup, sched_granularity -> sched_min_granularity sched: adaptive scheduler granularity sched: fix CONFIG_SCHED_DEBUG dependency of lockdep sysctls
2007-08-25sched: cleanup, sched_granularity -> sched_min_granularityIngo Molnar1-1/+1
due to adaptive granularity scheduling the role of sched_granularity has changed to "minimum granularity", so rename the variable (and the tunable) accordingly. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
2007-08-25sched: adaptive scheduler granularityPeter Zijlstra1-0/+1
Instead of specifying the preemption granularity, specify the wanted latency. By fixing the granlarity to a constany the wakeup latency it a function of the number of running tasks on the rq. Invert this relation. sysctl_sched_granularity becomes a minimum for the dynamic granularity computed from the new sysctl_sched_latency. Then use this latency to do more intelligent granularity decisions: if there are fewer tasks running then we can schedule coarser. This helps performance while still always keeping the latency target. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2007-08-25Merge branch 'agp-patches' of ↵Linus Torvalds1-0/+1
git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6 * 'agp-patches' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6: agp: balance ioremap checks agp: Add device id for P4M900 to via-agp module efficeon-agp leaks 'struct agp_bridge_data' in error paths of agp_efficeon_probe()
2007-08-25agp: Add device id for P4M900 to via-agp moduleXavier Bachelot1-0/+1
Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-08-25[POWERPC] Fix undefined reference to device_power_up/resumeOlaf Hering1-1/+1
Current Linus tree fails to link on pmac32: drivers/built-in.o: In function `pmac_wakeup_devices': via-pmu.c:(.text+0x5bab4): undefined reference to `device_power_up' via-pmu.c:(.text+0x5bb08): undefined reference to `device_resume' drivers/built-in.o: In function `pmac_suspend_devices': via-pmu.c:(.text+0x5c260): undefined reference to `device_power_down' via-pmu.c:(.text+0x5c27c): undefined reference to `device_resume' make[1]: *** [.tmp_vmlinux1] Error 1 changing CONFIG_PM > CONFIG_PM_SLEEP leads to: drivers/built-in.o: In function `pmu_led_set': via-pmu-led.c:(.text+0x5cdca): undefined reference to `pmu_sys_suspended' via-pmu-led.c:(.text+0x5cdce): undefined reference to `pmu_sys_suspended' drivers/built-in.o: In function `pmu_req_done': via-pmu-led.c:(.text+0x5ce3e): undefined reference to `pmu_sys_suspended' via-pmu-led.c:(.text+0x5ce42): undefined reference to `pmu_sys_suspended' drivers/built-in.o: In function `adb_init': (.init.text+0x4c5c): undefined reference to `pmu_register_sleep_notifier' make[1]: *** [.tmp_vmlinux1] Error 1 So change even more places from PM to PM_SLEEP to allow linking. Signed-off-by: Olaf Hering <olaf@aepfle.de> Signed-off-by: Paul Mackerras <paulus@samba.org>
2007-08-25Pull events into release branchLen Brown1-3/+7
Conflicts: drivers/acpi/video.c Signed-off-by: Len Brown <len.brown@intel.com>
2007-08-25Pull misc into release branchLen Brown2-2/+2
2007-08-25ACPI: Fix a warning of discarding qualifiers from pointer target typeAl Viro2-2/+2
drivers/acpi/ec.c: In function `acpi_ec_ecdt_probe': drivers/acpi/ec.c:873: warning: passing arg 1 of `acpi_get_devices' discards qualifiers from pointer target type Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Len Brown <len.brown@intel.com>
2007-08-25Pull video into release branchLen Brown1-0/+6
2007-08-25Pull bugzilla-1641 into release branchLen Brown2-1/+6
2007-08-24Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-schedLinus Torvalds1-2/+3
* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched: sched: tweak the sched_runtime_limit tunable sched: skip updating rq's next_balance under null SD sched: fix broken SMT/MC optimizations sched: accounting regression since rc1 sched: fix sysctl directory permissions sched: sched_clock_idle_[sleep|wakeup]_event()
2007-08-24Renumber AUDIT_TTY_[GS]ETMiloslav Trmac1-2/+2
Renumber AUDIT_TTY_[GS]ET to avoid a conflict with netlink message types already used in the wild. Signed-off-by: Miloslav Trmac <mitr@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-08-24Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6Linus Torvalds3-0/+10
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: PCI: Run k8t_sound_hostbridge quirk only when needed PCI: disable MSI on RX790 PCI: disable MSI on RD580 PCI: disable MSI on RS690 PCI: make pcie_get_readrq visible in pci.h PCI: lets kill the 'PCI hidden behind bridge' message pci/hotplug/cpqphp_ctrl.c: remove stale BKL use PCI: Document pci_iomap() PCI: quirk_e100_interrupt() called too early PCI: Move prototypes for pci_bus_find_capability to include/linux/pci.h
2007-08-24m68knommu: include asm-generic/pgtable.hGreg Ungerer1-0/+2
Include asm-generic/pgtable.h to pick up the lazy_mmu_mode and lazy_cpu_mode macros. Won't build without them. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-08-24ACPI: video: Add keycode for ACPI video driver hotkey events.Yu Luming1-0/+6
Signed-off-by: Luming Yu <luming.yu@intel.com> Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
2007-08-23ACPI: Schedule /proc/acpi/event for removalLen Brown1-1/+6
Schedule /proc/acpi/event for removal in 6 months. Re-name acpi_bus_generate_event() to acpi_bus_generate_proc_event() to make sure there is no confusion that it is for /proc/acpi/event only. Add CONFIG_ACPI_PROC_EVENT to allow removal of /proc/acpi/event. There is no functional change if CONFIG_ACPI_PROC_EVENT=y Signed-off-by: Len Brown <len.brown@intel.com>
2007-08-23ACPI: don't duplicate input events on netlinkZhang Rui1-2/+1
The previous events patch added a netlink event for every user of the legacy /proc/acpi/event interface. However, some users of /proc/acpi/event are really input events, and they already report their events via the input layer. Introduce a new interface, acpi_bus_generate_netlink_event(), which is explicitly called by devices that want to repoprt events via netlink. This allows the input-like events to opt-out of generating netlink events. In summary: events that are sent via netlink: ac/battery/sbs thermal processor thinkpad_acpi dock/bay events that are sent via input layer: button video hotkey thinkpad_acpi hotkey asus_acpi/asus-laptop hotkey sonypi/sonylaptop Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
2007-08-23sched: fix broken SMT/MC optimizationsSuresh Siddha1-1/+1
On a four package system with HT - HT load balancing optimizations were broken. For example, if two tasks end up running on two logical threads of one of the packages, scheduler is not able to pull one of the tasks to a completely idle package. In this scenario, for nice-0 tasks, imbalance calculated by scheduler will be 512 and find_busiest_queue() will return 0 (as each cpu's load is 1024 > imbalance and has only one task running). Similarly MC scheduler optimizations also get fixed with this patch. [ mingo@elte.hu: restored fair balancing by increasing the fuzz and adding it back to the power decision, without the /2 factor. ] Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2007-08-23sched: sched_clock_idle_[sleep|wakeup]_event()Ingo Molnar1-1/+2
construct a more or less wall-clock time out of sched_clock(), by using ACPI-idle's existing knowledge about how much time we spent idling. This allows the rq clock to work around TSC-stops-in-C2, TSC-gets-corrupted-in-C3 type of problems. ( Besides the scheduler's statistics this also benefits blktrace and printk-timestamps as well. ) Furthermore, the precise before-C2/C3-sleep and after-C2/C3-wakeup callbacks allow the scheduler to get out the most of the period where the CPU has a reliable TSC. This results in slightly more precise task statistics. the ACPI bits were acked by Len. Signed-off-by: Ingo Molnar <mingo@elte.hu> Acked-by: Len Brown <len.brown@intel.com>
2007-08-23Apply memory policies to top two highest zones when highest zone is ZONE_MOVABLEMel Gorman2-1/+19
The NUMA layer only supports NUMA policies for the highest zone. When ZONE_MOVABLE is configured with kernelcore=, the the highest zone becomes ZONE_MOVABLE. The result is that policies are only applied to allocations like anonymous pages and page cache allocated from ZONE_MOVABLE when the zone is used. This patch applies policies to the two highest zones when the highest zone is ZONE_MOVABLE. As ZONE_MOVABLE consists of pages from the highest "real" zone, it's always functionally equivalent. The patch has been tested on a variety of machines both NUMA and non-NUMA covering x86, x86_64 and ppc64. No abnormal results were seen in kernbench, tbench, dbench or hackbench. It passes regression tests from the numactl package with and without kernelcore= once numactl tests are patched to wait for vmstat counters to update. akpm: this is the nasty hack to fix NUMA mempolicies in the presence of ZONE_MOVABLE and kernelcore= in 2.6.23. Christoph says "For .24 either merge the mobility or get the other solution that Mel is working on. That solution would only use a single zonelist per node and filter on the fly. That may help performance and also help to make memory policies work better." Signed-off-by: Mel Gorman <mel@csn.ul.ie> Acked-by: Lee Schermerhorn <lee.schermerhorn@hp.com> Tested-by: Lee Schermerhorn <lee.schermerhorn@hp.com> Acked-by: Christoph Lameter <clameter@sgi.com> Cc: Andi Kleen <ak@suse.de> Cc: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-08-23selection.h: add tty_struct forward declarationAndrew Morton1-0/+2
In file included from drivers/video/console/newport_con.c:16: include/linux/selection.h:16: warning: "struct tty_struct" declared inside parameter list include/linux/selection.h:16: warning: its scope is only this definition or declaration, which is probably not what you want Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-08-23m68k/mac: Make mac_hid_mouse_emulate_buttons() declaration visibleGeert Uytterhoeven1-0/+3
m68k/mac: Make mac_hid_mouse_emulate_buttons() declaration visible drivers/char/keyboard.c: In function 'kbd_keycode': drivers/char/keyboard.c:1142: error: implicit declaration of function 'mac_hid_mouse_emulate_buttons' The forward declaration of mac_hid_mouse_emulate_buttons() is not visible on m68k because it's hidden in the middle of a big #ifdef block. Move it to <linux/kbd_kern.h>, correct the type of the second parameter, and include <linux/kbd_kern.h> where needed. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-08-23m68k: Enable arbitary speed tty supportAlan Cox3-3/+12
Add the needed constants and defines to activate the existing code. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>