summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [SPARC64]: In sunsab driver, make sure to set the uart timeout.David S. Miller2005-04-211-5/+11
| | | | | | | This breaks serial consoles badly. Thanks to Eric Brower for tracking down the problem. Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC64]: In sunsu driver, make sure to fully init chip for kbd/msDavid S. Miller2005-04-211-2/+9
| | | | | | | | | We were forgetting to call sunsu_change_speed(). The reason that replugging in the mouse cable "fixes things" is that causes a BREAK interrupt which in turn caused a call to sunsu_change_speed() which would get the chip setup properly. Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC]: Provide generic ioctls in Sparc RTC driver.David S. Miller2005-04-213-23/+123
| | | | | | | | | | | | | | | | | | | | Provide support for drivers/char/rtc.c ioctls in the Mostek rtc driver as well as the Sparc specific RTCGET and RTCSET. This allows userspace to be much less messy. Currently util-linux and other spots jump through hoops trying various ioctl variants until it hits the right one whatever driver actually being used supports. Eventually all of this should move over to the genrtc.c driver, but not today... While we are here, fix up the register types for sparse. Thanks to Frans Pop for helping point out this issue. Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC64]: Provide a pgprot_noncached() implementation.David S. Miller2005-04-211-0/+5
| | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* [PATCH] fix subarch breakage in amd dual core updatesJames Bottomley2005-04-211-2/+2
| | | | | | | | | | The patch to arch/i386/kernel/cpu/amd.c relies on the variable cpu_core_id which is defined in i386/kernel/smpboot.c. This means it is only present if CONFIG_X86_SMP is defined, not CONFIG_SMP (alternative SMP harnesses won't have it, which is why it breaks voyager). Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Fix tgafb.c compile failureAdrian Bunk2005-04-211-3/+1
| | | | | | | The untested patch below should fix this compile error. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Fix non-legacy ISO receive regressionJody McIntyre2005-04-211-20/+43
| | | | | | | | | | | Fix non-legacy multichannel ISO receive, broken by Parag Wardukar's allocation fix. Multichannel ISO receive still sucks; it should be possible to use both legacy and non-legacy modes at the same time, but with this patch, things are no worse than they were in 2.6.11 and allocation is still done at the correct time. Signed-off-by: Jody McIntyre <scjody@steamballoon.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] ohci1394: tlabels misprinted in DBGMSGJody McIntyre2005-04-211-3/+3
| | | | | | | | | | - Print the correct value in the DBGMSG in dma_rcv_tasklet(). See OHCI 1.1 section 8.7, page 103 ff. - Print tlabels as %d everywhere. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> Signed-off-by: Jody McIntyre <scjody@steamballoon.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6.gitLinus Torvalds2005-04-212-7/+24
|\
| * [IA64] fix fls()David Mosberger-Tang2005-04-212-7/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ia64-version of fls() never worked as intended (the bitnumbering was off by 1 and fls(0) was undefined). This patch fixes the problem by using a popcnt-based fls(), which on McKinley-derived cores is slightly faster than both ia64_fls() and generic_fls(). The resulting code, however, is bigger (7-8 bundles instead of about 3 bundles). Also switch ia64_popcnt() to __builtin_popcountl() for GCC v3.4 or newer since the compiler can predicate that and schedule it better. Thanks to Simon Derr and Matt Mackall for tracking down this bug. Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
* | [PATCH] alpha: key management syscallsRichard Henderson2005-04-212-1/+7
|/ | | | | Allocate syscall numbers for add_key, request_key, keyctl.
* [PATCH] fix for ISDN ippp filteringKarsten Keil2005-04-211-5/+5
| | | | | | | | | We do not longer use DLT_LINUX_SLL for activ/pass filters but DLT_PPP_WITHDIRECTION witch need 1 as outbound flag. Signed-off-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] x86_64: Bug in new out of line put_user()Alexander Nyberg2005-04-212-11/+20
| | | | | | | | | | | | | | The new out of line put_user() assembly on x86_64 changes %rcx without telling GCC about it causing things like: http://bugme.osdl.org/show_bug.cgi?id=4515 See to it that %rcx is not changed (made it consistent with get_user()). Signed-off-by: Alexander Nyberg <alexn@telia.com> Signed-off-by: ak@suse.de Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge rsync://rsync.kernel.org/pub/linux/kernel/people/davem/sparc-2.6.gitLinus Torvalds2005-04-211-17/+31
|\
| * [SPARC64]: sparc64 preempt + smpAl Viro2005-04-201-17/+31
| | | | | | | | | | | | | | PREEMPT+SMP support - see if it looks sane... Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [PATCH] Fix aic7xxx_osm.c compile with older gcc'sJames Bottomley2005-04-211-3/+2
| | | | | | | | | | | | | | | | | | My version of gcc doesn't warn about this error (declaration in the middle of a set of statements). The fix is simple (this also corrects return code; for init functions it should be zero or error).
* | Linux v2.6.12-rc3v2.6.12-rc3Linus Torvalds2005-04-201-1/+1
|/ | | | | Releasing this will also make "git" the official source control thing. Here's to hoping for the best.
* [IPSEC]: COW skb header in UDP decapHerbert Xu2005-04-191-0/+2
| | | | | | | | The following patch just makes the header part of the skb writeable. This is needed since we modify the IP headers just a few lines below. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* [ATALK]: Add missing dev_hold() to atrtr_create().Herbert Xu2005-04-191-0/+1
| | | | | Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* [SOCK]: on failure free the sock from the right placeArnaldo Carvalho de Melo2005-04-191-1/+4
| | | | | Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* [NET]: skbuff: remove old NET_CALLER macroStephen Hemminger2005-04-193-16/+5
| | | | | | | | Here is a revised alternative that uses BUG_ON/WARN_ON (as suggested by Herbert Xu) to eliminate NET_CALLER. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* [RTNETLINK]: Add comma to final entry in link_rtnetlink_tableDavid S. Miller2005-04-191-1/+1
| | | | | | Noticed by Herbert Xu. Signed-off-by: David S. Miller <davem@davemloft.net>
* [RTNETLINK]: Protocol family wildcard dumping for routing rulesThomas Graf2005-04-191-1/+2
| | | | | | | | | Be kind to userspace and don't force them to hardcode protocol families just to have it changed again once we support routing rules for more than one protocol family. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
* [IPV6]: Replace bogus instances of inet->recverrHerbert Xu2005-04-192-5/+3
| | | | | | | | | | While looking at this problem I noticed that IPv6 was sometimes looking at inet->recverr which is bogus. Here is a patch to correct that and use np->recverr. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Acked-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* [IPV6]: IPV6_CHECKSUM socket option can corrupt kernel memoryHerbert Xu2005-04-193-13/+130
| | | | | | | | So here is a patch that introduces skb_store_bits -- the opposite of skb_copy_bits, and uses them to read/write the csum field in rawv6. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* [IPV6]: Fix a branch predictionYOSHIFUJI Hideaki2005-04-191-1/+1
| | | | | | | From: Tushar Gohad <tgohad@mvista.com> Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* [NET]: Shave sizeof(ptr) bytes off dst_entryHerbert Xu2005-04-191-3/+2
| | | | | Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* [PATCH] freepgt: remove FIRST_USER_ADDRESS hackHugh Dickins2005-04-191-5/+0
| | | | | | | | | Once all the MMU architectures define FIRST_USER_ADDRESS, remove hack from mmap.c which derived it from FIRST_USER_PGD_NR. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: arch FIRST_USER_ADDRESS 0Hugh Dickins2005-04-1920-21/+21
| | | | | | | | | Replace misleading definition of FIRST_USER_PGD_NR 0 by definition of FIRST_USER_ADDRESS 0 in all the MMU architectures beyond arm and arm26. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: arm26 FIRST_USER_ADDRESS PAGE_SIZEHugh Dickins2005-04-192-5/+11
| | | | | | | | | | | | | ARM26 define FIRST_USER_ADDRESS as PAGE_SIZE (beyond the machine vectors when they are mapped low), and use that definition in place of locally defined MIN_MAP_ADDR. Previously, ARM26 permitted user mappings at 0 if the machine vectors were mapped high; but that's inconsistent with ARM, and FIRST_USER_ADDRESS would then have to be determined at runtime. Let's fix it at PAGE_SIZE throughout the architecture. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: arm FIRST_USER_ADDRESS PAGE_SIZEHugh Dickins2005-04-192-9/+9
| | | | | | | | | | ARM define FIRST_USER_ADDRESS as PAGE_SIZE (beyond the machine vectors when they are mapped low), and use that definition in place of locally defined MIN_MAP_ADDR. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: sys_mincore ignore FIRST_USER_PGD_NRHugh Dickins2005-04-191-3/+0
| | | | | | | | | | Remove use of FIRST_USER_PGD_NR from sys_mincore: it's inconsistent (no other syscall refers to it), unnecessary (sys_mincore loops over vmas further down) and incorrect (misses user addresses in ARM's first pgd). Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: free_pgtables from FIRST_USER_ADDRESSHugh Dickins2005-04-191-3/+8
| | | | | | | | | | | | | | | | | | | The patches to free_pgtables by vma left problems on any architectures which leave some user address page table entries unencapsulated by vma. Andi has fixed the 32-bit vDSO on x86_64 to use a vma. Now fix arm (and arm26), whose first PAGE_SIZE is reserved (perhaps) for machine vectors. Our calls to free_pgtables must not touch that area, and exit_mmap's BUG_ON(nr_ptes) must allow that arm's get_pgd_slow may (or may not) have allocated an extra page table, which its free_pgd_slow would free later. FIRST_USER_PGD_NR has misled me and others: until all the arches define FIRST_USER_ADDRESS instead, a hack in mmap.c to derive one from t'other. This patch fixes the bugs, the remaining patches just clean it up. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: hugetlb area is cleanHugh Dickins2005-04-192-46/+2
| | | | | | | | | | Once we're strict about clearing away page tables, hugetlb_prefault can assume there are no page tables left within its range. Since the other arches continue if !pte_none here, let i386 do the same. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: mpnt to vma cleanupHugh Dickins2005-04-191-18/+17
| | | | | | | | While dabbling here in mmap.c, clean up mysterious "mpnt"s to "vma"s. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: remove arch pgd_addr_endHugh Dickins2005-04-193-46/+3
| | | | | | | | | | | | ia64 and sparc64 hurriedly had to introduce their own variants of pgd_addr_end, to leapfrog over the holes in their virtual address spaces which the final clear_page_range suddenly presented when converted from pgd_index to pgd_addr_end. But now that free_pgtables respects the vma list, those holes are never presented, and the arch variants can go. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: hugetlb_free_pgd_rangeHugh Dickins2005-04-198-38/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ia64 and ppc64 had hugetlb_free_pgtables functions which were no longer being called, and it wasn't obvious what to do about them. The ppc64 case turns out to be easy: the associated tables are noted elsewhere and freed later, safe to either skip its hugetlb areas or go through the motions of freeing nothing. Since ia64 does need a special case, restore to ppc64 the special case of skipping them. The ia64 hugetlb case has been broken since pgd_addr_end went in, though it probably appeared to work okay if you just had one such area; in fact it's been broken much longer if you consider a long munmap spanning from another region into the hugetlb region. In the ia64 hugetlb region, more virtual address bits are available than in the other regions, yet the page tables are structured the same way: the page at the bottom is larger. Here we need to scale down each addr before passing it to the standard free_pgd_range. Was about to write a hugely_scaled_down macro, but found htlbpage_to_page already exists for just this purpose. Fixed off-by-one in ia64 is_hugepage_only_range. Uninline free_pgd_range to make it available to ia64. Make sure the vma-gathering loop in free_pgtables cannot join a hugepage_only_range to any other (safe to join huges? probably but don't bother). Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: remove MM_VM_SIZE(mm)Hugh Dickins2005-04-196-39/+18
| | | | | | | | | | | | | | | | | | | | There's only one usage of MM_VM_SIZE(mm) left, and it's a troublesome macro because mm doesn't contain the (32-bit emulation?) info needed. But it too is only needed because we ignore the end from the vma list. We could make flush_pgtables return that end, or unmap_vmas. Choose the latter, since it's a natural fit with unmap_mapping_range_vma needing to know its restart addr. This does make more than minimal change, but if unmap_vmas had returned the end before, this is how we'd have done it, rather than storing the break_addr in zap_details. unmap_vmas used to return count of vmas scanned, but that's just debug which hasn't been useful in a while; and if we want the map_count 0 on exit check back, it can easily come from the final remove_vm_struct loop. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] freepgt: free_pgtables use vma listHugh Dickins2005-04-195-155/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recent woes with some arches needing their own pgd_addr_end macro; and 4-level clear_page_range regression since 2.6.10's clear_page_tables; and its long-standing well-known inefficiency in searching throughout the higher-level page tables for those few entries to clear and free: all can be blamed on ignoring the list of vmas when we free page tables. Replace exit_mmap's clear_page_range of the total user address space by free_pgtables operating on the mm's vma list; unmap_region use it in the same way, giving floor and ceiling beyond which it may not free tables. This brings lmbench fork/exec/sh numbers back to 2.6.10 (unless preempt is enabled, in which case latency fixes spoil unmap_vmas throughput). Beware: the do_mmap_pgoff driver failure case must now use unmap_region instead of zap_page_range, since a page table might have been allocated, and can only be freed while it is touched by some vma. Move free_pgtables from mmap.c to memory.c, where its lower levels are adapted from the clear_page_range levels. (Most of free_pgtables' old code was actually for a non-existent case, prev not properly set up, dating from before hch gave us split_vma.) Pass mmu_gather** in the public interfaces, since we might want to add latency lockdrops later; but no attempt to do so yet, going by vma should itself reduce latency. But what if is_hugepage_only_range? Those ia64 and ppc64 cases need careful examination: put that off until a later patch of the series. What of x86_64's 32bit vdso page __map_syscall32 maps outside any vma? And the range to sparc64's flush_tlb_pgtables? It's less clear to me now that we need to do more than is done here - every PMD_SIZE ever occupied will be flushed, do we really have to flush every PGDIR_SIZE ever partially occupied? A shame to complicate it unnecessarily. Special thanks to David Miller for time spent repairing my ceilings. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge with kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6.git/Linus Torvalds2005-04-1913-8/+286
|\ | | | | | | for 13 driver core, sysfs, and debugfs fixes.
| * [PATCH] kobject/hotplug split - net bridgekay.sievers@vrfy.org2005-04-181-0/+2
| | | | | | | | | | | | | | | | | | | | kobject_add() and kobject_del() don't emit hotplug events anymore. We need to do it ourselves now. Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] kobject/hotplug split - usb criskay.sievers@vrfy.org2005-04-181-0/+1
| | | | | | | | | | | | | | | | | | | | kobject_add() and kobject_del() don't emit hotplug events anymore. We need to do it ourselves now. Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] kobject/hotplug split - devices corekay.sievers@vrfy.org2005-04-181-0/+3
| | | | | | | | | | | | | | | | | | | | kobject_add() and kobject_del() don't emit hotplug events anymore. Do it ourselves if we are finished populating the device directory. Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] kobject/hotplug split - block corekay.sievers@vrfy.org2005-04-181-0/+2
| | | | | | | | | | | | | | | | | | | | kobject_add() and kobject_del() don't emit hotplug events anymore. Do it ourselves if we are finished populating the device directory. Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] kobject/hotplug split - class corekay.sievers@vrfy.org2005-04-181-0/+2
| | | | | | | | | | | | | | | | | | | | kobject_add() and kobject_del() don't emit hotplug events anymore. Do it ourselves if we are finished populating the device directory. Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] kobject/hotplug split - kobject add/removekay.sievers@vrfy.org2005-04-181-4/+3
| | | | | | | | | | | | | | | | | | | | | | kobject_add() and kobject_del() don't emit hotplug events anymore. The user should do it itself if it has finished populating the device directory. Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] debugfs: fix !debugfs prototypesMichal Ostrowski2005-04-181-3/+3
| | | | | | | | | | | | | | | | | | | | - Fix prototypes for debugfs functions (in configurations where debugfs is disabled). Signed-off-by: Michal Ostrowski <mostrows@speakeasy.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] debugfs: Reduce <linux/debugfs.h> dependenciesRoland Dreier2005-04-181-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current <linux/debugfs.h> include file is a little fragile in that it is not self-contained and hence may cause compile warnings or errors depending on the files included before it, the kernel config and the architecture. This patch makes things a little more robust by: - including <linux/types.h> to get definitions of u32, mode_t, and so on. - forward declaring struct file_operations. - including <linux/err.h> when CONFIG_DEBUG_FS is not set The last change is particularly useful, as a kernel developer is likely to build with debugfs always enabled and never see the build breakage cased if debugfs is disabled. Signed-off-by: Roland Dreier <roland@topspin.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] 2.6.12-rc1-mm3 Fix ver_linux script for no udev utils.Steven Cole2005-04-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Without the attached patch, the ver_linux script gives the following if udev utils are not present. ./scripts/ver_linux: line 90: udevinfo: command not found The patch causes ver_linux to be silent in the case of no udevinfo command. Signed-off-by: Steven Cole <elenstev@mesatop.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * [PATCH] export platform_add_devicesRobert Schwebel2005-04-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | platform_add_devices can be used from within modules, so it should be exported. This can for example happen if you have hotpluggable firmware in an FPGA on a system on chip processor; in our case the FPGA is probed for devices and the FPGA base code registers the devices it has found with the kernel. (akpm: I think this is reasonable from a licensing POV: it's unlikely that anyone would be interested in merging such specialised modules into mainline, and it's a GPL export). Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
OpenPOWER on IntegriCloud