1. 29 3月, 2012 1 次提交
  2. 07 10月, 2010 1 次提交
    • D
      Fix IRQ flag handling naming · df9ee292
      David Howells 提交于
      Fix the IRQ flag handling naming.  In linux/irqflags.h under one configuration,
      it maps:
      
      	local_irq_enable() -> raw_local_irq_enable()
      	local_irq_disable() -> raw_local_irq_disable()
      	local_irq_save() -> raw_local_irq_save()
      	...
      
      and under the other configuration, it maps:
      
      	raw_local_irq_enable() -> local_irq_enable()
      	raw_local_irq_disable() -> local_irq_disable()
      	raw_local_irq_save() -> local_irq_save()
      	...
      
      This is quite confusing.  There should be one set of names expected of the
      arch, and this should be wrapped to give another set of names that are expected
      by users of this facility.
      
      Change this to have the arch provide:
      
      	flags = arch_local_save_flags()
      	flags = arch_local_irq_save()
      	arch_local_irq_restore(flags)
      	arch_local_irq_disable()
      	arch_local_irq_enable()
      	arch_irqs_disabled_flags(flags)
      	arch_irqs_disabled()
      	arch_safe_halt()
      
      Then linux/irqflags.h wraps these to provide:
      
      	raw_local_save_flags(flags)
      	raw_local_irq_save(flags)
      	raw_local_irq_restore(flags)
      	raw_local_irq_disable()
      	raw_local_irq_enable()
      	raw_irqs_disabled_flags(flags)
      	raw_irqs_disabled()
      	raw_safe_halt()
      
      with type checking on the flags 'arguments', and then wraps those to provide:
      
      	local_save_flags(flags)
      	local_irq_save(flags)
      	local_irq_restore(flags)
      	local_irq_disable()
      	local_irq_enable()
      	irqs_disabled_flags(flags)
      	irqs_disabled()
      	safe_halt()
      
      with tracing included if enabled.
      
      The arch functions can now all be inline functions rather than some of them
      having to be macros.
      
      Signed-off-by: David Howells <dhowells@redhat.com> [X86, FRV, MN10300]
      Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> [Tile]
      Signed-off-by: Michal Simek <monstr@monstr.eu> [Microblaze]
      Tested-by: Catalin Marinas <catalin.marinas@arm.com> [ARM]
      Acked-by: NThomas Gleixner <tglx@linutronix.de>
      Acked-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> [AVR]
      Acked-by: Tony Luck <tony.luck@intel.com> [IA-64]
      Acked-by: Hirokazu Takata <takata@linux-m32r.org> [M32R]
      Acked-by: Greg Ungerer <gerg@uclinux.org> [M68K/M68KNOMMU]
      Acked-by: Ralf Baechle <ralf@linux-mips.org> [MIPS]
      Acked-by: Kyle McMartin <kyle@mcmartin.ca> [PA-RISC]
      Acked-by: Paul Mackerras <paulus@samba.org> [PowerPC]
      Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com> [S390]
      Acked-by: Chen Liqin <liqin.chen@sunplusct.com> [Score]
      Acked-by: Matt Fleming <matt@console-pimps.org> [SH]
      Acked-by: David S. Miller <davem@davemloft.net> [Sparc]
      Acked-by: Chris Zankel <chris@zankel.net> [Xtensa]
      Reviewed-by: Richard Henderson <rth@twiddle.net> [Alpha]
      Reviewed-by: Yoshinori Sato <ysato@users.sourceforge.jp> [H8300]
      Cc: starvik@axis.com [CRIS]
      Cc: jesper.nilsson@axis.com [CRIS]
      Cc: linux-cris-kernel@axis.com
      df9ee292
  3. 17 4月, 2009 1 次提交
  4. 11 11月, 2008 1 次提交
  5. 08 2月, 2008 2 次提交
  6. 20 7月, 2007 1 次提交
  7. 16 5月, 2007 1 次提交
  8. 11 5月, 2007 1 次提交
    • H
      m32r: fix switch_to macro to push/pop frame pointer if needed · 43c09ce7
      Hirokazu Takata 提交于
      This patch fixes a rarely-happened but severe scheduling problem of
      the recent m32r kernel of 2.6.17-rc3 or later.
      
      In the following previous m32r patch, the switch_to macro was
      modified not to do unnecessary push/pop operations for tuning.
      > [PATCH] m32r: update switch_to macro for tuning
      > 4127272c
      
      In this modification, only 'lr' and 'sp' registers are push/pop'ed,
      assuming that the m32r kernel is always compiled with
      -fomit-frame-pointer option.
      
      However, in 2.6 kernel, kernel/sched.c is irregularly compiled
      with -fno-omit-frame-pointer if CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER
      is not defined.
      
       -- kernel/Makefile --
         :
       ifneq ($(CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER),y)
       # According to Alan Modra <alan@linuxcare.com.au>, the -fno-omit-frame-pointer is
       # needed for x86 only.  Why this used to be enabled for all architectures is beyond
       # me.  I suspect most platforms don't need this, but until we know that for sure
       # I turn this off for IA-64 only.  Andreas Schwab says it's also needed on m68k
       # to get a correct value for the wait-channel (WCHAN in ps). --davidm
       CFLAGS_sched.o := $(PROFILING) -fno-omit-frame-pointer
       endif
         :
       ---
      
      Therefore, for the recent m32r kernel, we have to push/pop 'fp'
      (frame pointer) if CONFIG_FRAME_POINTER is defined or
      CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER is not defined.
      Signed-off-by: NHitoshi Yamamoto <hitoshiy@linux-m32r.org>
      Signed-off-by: NHirokazu Takata <takata@linux-m32r.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      43c09ce7
  9. 09 5月, 2007 2 次提交
  10. 12 2月, 2007 1 次提交
  11. 27 9月, 2006 1 次提交
  12. 15 7月, 2006 1 次提交
    • S
      [PATCH] remove set_wmb - arch removal · 52393ccc
      Steven Rostedt 提交于
      set_wmb should not be used in the kernel because it just confuses the
      code more and has no benefit.  Since it is not currently used in the
      kernel this patch removes it so that new code does not include it.
      
      All archs define set_wmb(var, value) to do { var = value; wmb(); }
      while(0) except ia64 and sparc which use a mb() instead.  But this is
      still moot since it is not used anyway.
      
      Hasn't been tested on any archs but x86 and x86_64 (and only compiled
      tested)
      Signed-off-by: NSteven Rostedt <rostedt@goodmis.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      52393ccc
  13. 04 7月, 2006 1 次提交
  14. 27 6月, 2006 1 次提交
  15. 26 4月, 2006 1 次提交
  16. 20 4月, 2006 1 次提交
  17. 11 4月, 2006 1 次提交
  18. 21 2月, 2006 1 次提交
  19. 13 1月, 2006 1 次提交
  20. 07 1月, 2006 1 次提交
  21. 29 11月, 2005 1 次提交
  22. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4