1. 21 2月, 2013 3 次提交
    • D
      sparc64: Fix tsb_grow() in atomic context. · 0fbebed6
      David S. Miller 提交于
      If our first THP installation for an MM is via the set_pmd_at() done
      during khugepaged's collapsing we'll end up in tsb_grow() trying to do
      a GFP_KERNEL allocation with several locks held.
      
      Simply using GFP_ATOMIC in this situation is not the best option
      because we really can't have this fail, so we'd really like to keep
      this an order 0 GFP_KERNEL allocation if possible.
      
      Also, doing the TSB allocation from khugepaged is a really bad idea
      because we'll allocate it potentially from the wrong NUMA node in that
      context.
      
      So what we do is defer the hugepage TSB allocation until the first TLB
      miss we take on a hugepage.  This is slightly tricky because we have
      to handle two unusual cases:
      
      1) Taking the first hugepage TLB miss in the window trap handler.
         We'll call the winfix_trampoline when that is detected.
      
      2) An initial TSB allocation via TLB miss races with a hugetlb
         fault on another cpu running the same MM.  We handle this by
         unconditionally loading the TSB we see into the current cpu
         even if it's non-NULL at hugetlb_setup time.
      Reported-by: NMeelis Roos <mroos@ut.ee>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0fbebed6
    • D
      sparc64: Handle hugepage TSB being NULL. · bcd896ba
      David S. Miller 提交于
      Accomodate the possibility that the TSB might be NULL at
      the point that update_mmu_cache() is invoked.  This is
      necessary because we will sometimes need to defer the TSB
      allocation to the first fault that happens in the 'mm'.
      
      Seperate out the hugepage PTE test into a seperate function
      so that the logic is clearer.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      bcd896ba
    • D
      sparc64: Fix gfp_flags setting in tsb_grow(). · a55ee1ff
      David S. Miller 提交于
      We should "|= more_flags" rather than "= more_flags".
      Reported-by: NDavid Rientjes <rientjes@google.com>
      Acked-by: NDavid Rientjes <rientjes@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a55ee1ff
  2. 14 2月, 2013 2 次提交
  3. 22 1月, 2013 1 次提交
  4. 13 1月, 2013 1 次提交
  5. 04 1月, 2013 1 次提交
    • G
      SPARC: drivers: remove __dev* attributes. · 7c9503b8
      Greg Kroah-Hartman 提交于
      CONFIG_HOTPLUG is going away as an option.  As a result, the __dev*
      markings need to be removed.
      
      This change removes the use of __devinit, __devexit_p, __devinitdata,
      and __devexit from these drivers.
      
      Based on patches originally written by Bill Pemberton, but redone by me
      in order to handle some of the coding style issues better, by hand.
      
      Cc: Bill Pemberton <wfp5p@virginia.edu>
      Cc: "David S. Miller" <davem@davemloft.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      7c9503b8
  6. 29 12月, 2012 1 次提交
  7. 20 12月, 2012 8 次提交
  8. 19 12月, 2012 2 次提交
  9. 18 12月, 2012 1 次提交
  10. 14 12月, 2012 1 次提交
  11. 12 12月, 2012 4 次提交
  12. 04 12月, 2012 2 次提交
  13. 29 11月, 2012 3 次提交
  14. 24 11月, 2012 1 次提交
  15. 19 11月, 2012 1 次提交
    • A
      sparc64: not any error from do_sigaltstack() should fail rt_sigreturn() · fae2ae2a
      Al Viro 提交于
      If a signal handler is executed on altstack and another signal comes,
      we will end up with rt_sigreturn() on return from the second handler
      getting -EPERM from do_sigaltstack().  It's perfectly OK, since we
      are not asking to change the settings; in fact, they couldn't have been
      changed during the second handler execution exactly because we'd been
      on altstack all along.  64bit sigreturn on sparc treats any error from
      do_sigaltstack() as "SIGSEGV now"; we need to switch to the same semantics
      we are using on other architectures.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fae2ae2a
  16. 17 11月, 2012 2 次提交
  17. 14 11月, 2012 1 次提交
  18. 10 11月, 2012 4 次提交
  19. 07 11月, 2012 1 次提交