1. 31 10月, 2005 6 次提交
  2. 30 10月, 2005 5 次提交
    • H
      [PATCH] mm: tlb_finish_mmu forget rss · fc2acab3
      Hugh Dickins 提交于
      zap_pte_range has been counting the pages it frees in tlb->freed, then
      tlb_finish_mmu has used that to update the mm's rss.  That got stranger when I
      added anon_rss, yet updated it by a different route; and stranger when rss and
      anon_rss became mm_counters with special access macros.  And it would no
      longer be viable if we're relying on page_table_lock to stabilize the
      mm_counter, but calling tlb_finish_mmu outside that lock.
      
      Remove the mmu_gather's freed field, let tlb_finish_mmu stick to its own
      business, just decrement the rss mm_counter in zap_pte_range (yes, there was
      some point to batching the update, and a subsequent patch restores that).  And
      forget the anal paranoia of first reading the counter to avoid going negative
      - if rss does go negative, just fix that bug.
      
      Remove the mmu_gather's flushes and avoided_flushes from arm and arm26: no use
      was being made of them.  But arm26 alone was actually using the freed, in the
      way some others use need_flush: give it a need_flush.  arm26 seems to prefer
      spaces to tabs here: respect that.
      Signed-off-by: NHugh Dickins <hugh@veritas.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      fc2acab3
    • H
      [PATCH] mm: tlb_is_full_mm was obscure · 4d6ddfa9
      Hugh Dickins 提交于
      tlb_is_full_mm?  What does that mean?  The TLB is full?  No, it means that the
      mm's last user has gone and the whole mm is being torn down.  And it's an
      inline function because sparc64 uses a different (slightly better)
      "tlb_frozen" name for the flag others call "fullmm".
      
      And now the ptep_get_and_clear_full macro used in zap_pte_range refers
      directly to tlb->fullmm, which would be wrong for sparc64.  Rather than
      correct that, I'd prefer to scrap tlb_is_full_mm altogether, and change
      sparc64 to just use the same poor name as everyone else - is that okay?
      Signed-off-by: NHugh Dickins <hugh@veritas.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      4d6ddfa9
    • H
      [PATCH] mm: tlb_gather_mmu get_cpu_var · 15a23ffa
      Hugh Dickins 提交于
      tlb_gather_mmu dates from before kernel preemption was allowed, and uses
      smp_processor_id or __get_cpu_var to find its per-cpu mmu_gather.  That works
      because it's currently only called after getting page_table_lock, which is not
      dropped until after the matching tlb_finish_mmu.  But don't rely on that, it
      will soon change: now disable preemption internally by proper get_cpu_var in
      tlb_gather_mmu, put_cpu_var in tlb_finish_mmu.
      Signed-off-by: NHugh Dickins <hugh@veritas.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      15a23ffa
    • N
      [ARM] 3061/1: cleanup the XIP link address mess · 37d07b72
      Nicolas Pitre 提交于
      Patch from Nicolas Pitre
      
      Since vmlinux.lds.S is preprocessed, we can use the defines already
      present in asm/memory.h (allowed by patch #3060) for the XIP kernel link
      address instead of relying on a duplicated Makefile hardcoded value, and
      also get rid of its dependency on awk to handle it at the same time.
      
      While at it let's clean XIP stuff even further and make things clearer
      in head.S with a nice code reduction.
      Signed-off-by: NNicolas Pitre <nico@cam.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      37d07b72
    • N
      [ARM] 3060/1: allow constants found in asm/memory.h to be used in asm code · f09b9979
      Nicolas Pitre 提交于
      Patch from Nicolas Pitre
      
      This patch allows for assorted type of cleanups by letting assembly code
      use the same set of defines for constant values and avoid duplicated
      definitions that might not always be in sync, or that might simply be
      confusing due to the different names for the same thing.
      Signed-off-by: NNicolas Pitre <nico@cam.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      f09b9979
  3. 29 10月, 2005 7 次提交
  4. 28 10月, 2005 20 次提交
  5. 26 10月, 2005 1 次提交
    • I
      [ARM] 3032/1: sparse: complains about generic_fls() prototype in asm-arm/bitops.h · 7edc24c4
      Ian Campbell 提交于
      Patch from Ian Campbell
      
      Sparse complains about the definition of generic_fls in asm-arm/bitops.h:
        CHECK   /home/icampbell/devel/kernel/2.6/arch/arm/mach-pxa/viper.c
      include2/asm/bitops.h:350:34: error: marked inline, but without a definition
      
      The definition is unnecessary since linux/bitops.h defines generic_fls before including asm/bitops.h and asm/bitops.h should not be included directly. There are still some places where asm/bitops.h is directly included, but I think that code should be fixed. I was a little wary of the patch for this reason but lubbock, mainstone and assabet all build OK and so do my in house boards...
      
      ARM is the only arch with the generic_fls prototype in this way.
      Signed-off-by: NIan Campbell <icampbell@arcom.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      7edc24c4
  6. 21 10月, 2005 1 次提交