- 13 Mar, 2005 39 commits
-
-
Oleg Nesterov authored
Replace open coded __vmalloc() with __vmalloc_area(). Uncompiled, untested. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Cc: Andi Kleen <ak@muc.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Oleg Nesterov authored
Replace open coded __vmalloc() with __vmalloc_area(). Uncompiled, untested. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Cc: "David S. Miller" <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Oleg Nesterov authored
Replace open coded __vmalloc() with __vmalloc_area(). Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Cc: Russell King <rmk@arm.linux.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Oleg Nesterov authored
There are 3 copy-and-paste implementations of __vmalloc() in arch/{arm,sparc64,x86_64}/kernel/module.c. I believe the only reason is that __vmalloc() doesn't allow to specify parameters of __get_vm_area(). This patch splits __vmalloc() into 2 functions. The new one, __vmalloc_area(), can be used as follows: vm_struct *area = __get_vm_area(...); void *addr = __vmalloc_area(area, gfp, prot); Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Nick Piggin's patch to fold away most of the pud and pmd levels when not required. Adjusted to define minimal pud_addr_end (in the 4LEVEL_HACK case too) and pmd_addr_end. Responsible for half of the savings. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
As a general rule, ask the compiler to inline action_on_pmd_range and action_on_pud_range: they're none very interesting, and it has a better chance of eliding them that way. But conversely, it helps debug traces if action_on_pte_range and top action_on_page_range remain uninlined. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
To handle large sparse areas a little more efficiently, follow Nick and move the p?d_none_or_clear_bad tests up from the start of each function to its callsite. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert clear_page_range pagetable walkers to loops using p?d_addr_end. These are exceptional in that some out-of-tree memory layouts might pass end 0, so the macros need to handle that (though previous code did not). The naming here was out of step: now we usually pass pmd_t *pmd down to action_on_pte_range, not action_on_pmd_range, etc: made like the others. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
This patch is the odd-one-out of the sequence. The one before adjusted copy_pte_range from a for loop to a do while loop, and it was therefore simplest to check for lockbreak before copying pte: possibility that it might keep getting preempted without making progress under some loads. Some loads such as startup: 2*HT*P4 with preemption cannot even reach multiuser login. Suspect needs_lockbreak is broken, can get in a state when it remains forever true. Investigate that later: for now, and for all time, it makes sense to aim for a little progress before breaking out; and we can manage more pte_nones than copies. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert copy_page_range pagetable walkers to loops using p?d_addr_end. Merge copy_swap_pte into copy_one_pte, make a few minor tidyups. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert unmap_page_range pagetable walkers to loops using p?d_addr_end. Move blanking of irrelevant details up to unmap_page_range as Nick did. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert zeromap_page_range pagetable walkers to loops using p?d_addr_end. Remove the redundant flush_tlb_range from afterwards: as its comment noted, there's already a BUG_ON(!pte_none). Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert remap_pfn_range pagetable walkers to loops using p?d_addr_end. Remove the redundant flush_tlb_range from afterwards: as its comment noted, there's already a BUG_ON(!pte_none). Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert i386 ioremap pagetable walkers to loops using p?d_addr_end. Rename internal levels ioremap_p??_range. Don't cheat, give it a real (but inlined) ioremap_pud_range; uninline lowest level to help debug. Replace "page already exists" printk and BUG by BUG_ON. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert unmap_vm_area and map_vm_area pagetable walkers to loops using p?d_addr_end; rename internal levels vunmap_p??_range, vmap_p??_range. map_vm_area shows the style when allocating: allocs moved down a level. Replace KERN_CRIT Whee message by boring WARN_ON. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert unuse_process pagetable walkers to loops using p?d_addr_end; but correct its name to unuse_mm, rename its levels to _range as elsewhere. Leave unuse_pte out-of-line since it's so rarely called; but move the funny activate_page inside it. foundaddr was a leftover from before: we still want to break out once page is found, but no need to pass addr up. And we need not comment on the page_table_lock at every level. Whereas most objects shrink ~200 bytes text, swapfile.o grows slightly: it had earlier been converted to the addr,end style to fix a 4level bug. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Convert filemap_sync pagetable walkers to loops using p?d_addr_end; use similar loop to split filemap_sync into chunks. Merge filemap_sync_pte into sync_pte_range, cut filemap_ off the longer names, vma arg first. There is no error from filemap_sync, nor is any use made of the flags: if it should do something else for MS_INVALIDATE, reinstate it when that is implemented. Remove the redundant flush_tlb_range from afterwards: as its comment noted, each dirty pte has already been flushed. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Begin the pagetable walker cleanup with a straightforward example, mprotect's change_protection. Started out from Nick Piggin's for_each proposal, but I prefer less hidden; and these are all do while loops, which degrade slightly when converted to for loops. Firmly agree with Andi and Nick that addr,end is the way to go: size is good at the user interface level, but unhelpful down in the loops. And the habit of an "address" which is actually an offset from some base has bitten us several times: use proper address at each level, whyever not? Don't apply each mask at two levels: all we need is a set of macros pgd_addr_end, pud_addr_end, pmd_addr_end to give the address of the end of each range. Which need to take the min of two addresses, with 0 as the greatest. Started out with a different macro, assumed end never 0; but clear_page_range (alone) might be passed end 0 by some out-of-tree memory layouts: could special case it, but this macro compiles smaller. Check "addr != end" instead of "addr < end" to work on that end 0 case. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
pgtable.h now need pud_t. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Hugh Dickins authored
Replace the repetitive p?d_none, p?d_bad, p?d_ERROR, p?d_clear clauses by pgd_none_or_clear_bad, pud_none_or_clear_bad, pmd_none_or_clear_bad inlines throughout common and i386 - avoids a sprinkling of "unlikely"s. Tests inline, but unlikely error handling in mm/memory.c - so the ERROR file and line won't tell much; but it comes too late anyway, and hardly ever seen outside development. Let mremap use them in get_one_pte_map, as it already did in _nested; but leave follow_page and untouched_anonymous page just skipping _bad as before - they don't have quite the same ownership of the mm. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Chris Wright authored
Successive mlock/munlock calls can leave fragmented vmas because they can be split but not merged. Give mlock et. al. full vma merging support. While we're at it, move *pprev assignment above first split_vma in mprotect_fixup to keep it in step with mlock_fixup (which for mlockall ignores errors yet still needs a valid prev pointer). Signed-off-by: Chris Wright <chrisw@osdl.org> Acked-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Jes Sorensen authored
Convert /dev/mem read/write calls to use arch_translate_mem_ptr if available. Needed on ia64 for pages converted fo uncached mappings to avoid it being accessed in cached mode after the conversion which can lead to memory corruption. Introduces PG_uncached page flag for marking pages uncached. Also folds do_write_mem into write_mem as it was it's only user. Use __ARCH_HAS_NO_PAGE_ZERO_MAPPED for architectures to indicate they require magic handling of the zero page (Sparc and m68k). Signed-off-by: Jes Sorensen <jes@wildopensource.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Chris Mason authored
In data=journal mode, when blocks are freed and their buffers are dirty, reiserfs can remove them from the transaction without cleaning them. These buffers never get cleaned, resulting in an unfreeable page. Signed-off-by: Chris Mason <mason@suse.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrea Arcangeli authored
Chris found that with data journaling a reiserfs pagecache may be truncate while still pinned. The truncation removes the page->mapping, but the page is still listed in the VM queues because it still has buffers. Then during the journaling process, a buffer is marked dirty and that sets the PG_dirty bitflag as well (in mark_buffer_dirty). After that the page is leaked because it's both dirty and without a mapping. So we must allow pages without mapping and dirty to reach the PagePrivate check. The page->mapping will be checked again right after the PagePrivate check. Signed-off-by: Andrea Arcangeli <andrea@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Dave Hansen authored
There is a bug booting with CONFIG_NUMA=y, CONFIG_X86_GENERICARCH=y, and booting on a non-NUMA system. While not the most common configuration, it should surely be supported. memmap_init_zone() is the first user to do pfn_to_nid(), which relies on physnode_map[] to be done properly. memory_present() was supposed to do that, but never got called for the flat configuration, so pfn_to_nid() was returning -1 on valid pages. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Adrian Bunk authored
drivers/video/intelfb/intelfbdrv.h:31: warning: 'intelfb_setup' declared `static' but never defined Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Adrian Bunk authored
drivers/mtd/maps/ich2rom.c is completely unused because it was renamed to drivers/mtd/maps/ichxrom.c. This patch removes the stale ich2rom.c file. This patch was already ACK'ed by David Woodhouse and Eric W. Biederman. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Prasanna Meda authored
dcache: is_subdir forgot to reset the result after seqretry. Signed-Off-by: Prasanna Meda <pmeda@akamai.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Johannes Stezenbach authored
This is the DVB whitespace cleanup patch (the big one ;-). I checked the whitespace-onlyness: linux-2.6.11-bk9$ find drivers/media/common drivers/media/dvb -name "*.o" | xargs size >/tmp/1 linux-2.6.11-bk9$ cd - linux-2.6.11-bk9.patched linux-2.6.11-bk9.patched$ find drivers/media/common drivers/media/dvb -name "*.o" | xargs size >/tmp/2 linux-2.6.11-bk9.patched$ less /tmp/1 linux-2.6.11-bk9.patched$ less /tmp/2 linux-2.6.11-bk9.patched$ diff -us /tmp/1 /tmp/2 Files /tmp/1 and /tmp/2 are identical DVB whitespace cleanups: o sync kernel and linuxtv.org CVS wrt whitespace o repair indentation damage o remove whitespace at eol Signed-off-by: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Benjamin Herrenschmidt authored
This patch fixes a logic error in the ide-pmac driver which could try to access the chip's fcr register after the cell clock has been shut down, thus causing a machine check on machines with the "Intrepid" chipset. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
bk://cifs.bkbits.net/linux-2.5cifsLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Steve French authored
outside of cifs vfs) Signed-off-by: Steve French (sfrench@us.ibm.com)
-
Steve French authored
Signed-off-by: Steve French (sfrench@us.ibm.com)
-
Roland McGrath authored
This patch further cleans up the appearance of TF in eflags when ptrace is involved. With this, PTRACE_SINGLESTEP will not cause TF to appear in eflags as seen by PTRACE_GETREGS and the like, when the instruction faulted for some reason other than the single-step trap. This moves the check added by Dan's patch from setup_sigcontext to handle_signal. This is a cosmetic difference, but I think it makes more sense to consolidate all the "reset registers to canonical state" work in the same place (i.e. put it with the syscall rollback code), separate from the signal handler setup. The change that matters is moving the similar check out of do_debug, where it only covers the case of a single-step trap. Instead, it goes into the ptrace_signal_deliver macro, which is called before the ptrace stop for whatever signal results from whatever kind of fault in that instruction (or asynchronous signal). With that, the handle_signal check is still needed only for the case of PTRACE_SINGLESTEP with a handled signal. Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
bk://linux-sam.bkbits.net/kconfigLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
-
Sam Ravnborg authored
fix: arch/ppc/Kconfig:211:warning: type of 'CPU_FREQ_TABLE' redefined from 'tristate' to 'boolean' Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-
Sam Ravnborg authored
This properly indents the USB menu. In usb menu do not display comment when USB is disabled. Signed-off-by: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-
Sam Ravnborg authored
This properly indents various driver menus. Remove PARPORT_PC_CML1. Signed-off-by: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-
- 12 Mar, 2005 1 commit
-
-
Sam Ravnborg authored
o This properly indents the kernel hacking menu. o Move LOG_BUF_SHIFT into kernel hacking menu (it already depended on DEBUG_KERNEL). o Add DEBUG_KERNEL dependency to EARLY_PRINTK, DEBUG_PREEMPT and FRAME_POINTER. o Remove overlong dependency, which included practically every arch. o Merge the two MAGIC_SYSRQ menu entries. o Remove unnecessary "default n" options. Signed-off-by: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-