1. 17 11月, 2013 4 次提交
    • R
      alpha: Switch to GENERIC_CLOCKEVENTS · a1659d6d
      Richard Henderson 提交于
      This allows us to get rid of some hacky code for SMP.  Get rid of
      some cycle counter hackery that's now handled by generic code via
      clocksource + clock_event_device objects.
      Signed-off-by: NRichard Henderson <rth@twiddle.net>
      a1659d6d
    • R
      alpha: Enable the rpcc clocksource for single processor · db2d3260
      Richard Henderson 提交于
      Don't depend on SMP, just check the number of processors online.
      This allows a single distribution kernel to use the clocksource
      when run on a single processor machine.  Do depend on whether or
      not we're using WTINT.
      Signed-off-by: NRichard Henderson <rth@twiddle.net>
      db2d3260
    • R
      alpha: Reorganize rtc handling · 85d0b3a5
      Richard Henderson 提交于
      Discontinue use of GENERIC_CMOS_UPDATE; rely on the RTC subsystem.
      
      The marvel platform requires that the rtc only be touched from the
      boot cpu.  This had been partially implemented with hooks for
      get/set_rtc_time, but read/update_persistent_clock were not handled.
      Move the hooks from the machine_vec to a special rtc_class_ops struct.
      
      We had read_persistent_clock managing the epoch against which the
      rtc hw is based, but this didn't apply to get_rtc_time or set_rtc_time.
      This resulted in incorrect values when hwclock(8) gets involved.
      
      Allow the epoch to be set from the kernel command-line, overriding
      the autodetection, which is doomed to fail in 2020.  Further, by
      implementing the rtc ioctl function, we can expose this epoch to
      userland.
      
      Elide the alarm functions that RTC_DRV_CMOS implements.  This was
      highly questionable on Alpha, since the interrupt is used by the
      system timer.
      Signed-off-by: NRichard Henderson <rth@twiddle.net>
      85d0b3a5
    • R
      alpha: Allow HZ to be configured · fddd87d6
      Richard Henderson 提交于
      With the 1024Hz default, we spend 50% of QEMU emulation
      processing timer interrupts.
      Signed-off-by: NRichard Henderson <rth@twiddle.net>
      fddd87d6
  2. 20 7月, 2013 1 次提交
  3. 01 7月, 2011 1 次提交
  4. 09 6月, 2011 1 次提交
  5. 14 5月, 2011 1 次提交
  6. 18 4月, 2011 1 次提交
  7. 22 2月, 2011 1 次提交
  8. 31 1月, 2011 1 次提交
    • T
      alpha: Change do_timer() to xtime_update() · 1340f3e0
      Torben Hohn 提交于
      xtime_update() takes the xtime_lock itself.
      
      timer_interrupt() is only called on the boot cpu. See do_entInt(). So
      "state" in timer_interrupt does not require protection by xtime_lock.
      Signed-off-by: NTorben Hohn <torbenh@gmx.de>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: johnstul@us.ibm.com
      Cc: hch@infradead.org
      Cc: yong.zhang0@gmail.com
      LKML-Reference: <20110127145915.23248.20919.stgit@localhost>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      1340f3e0
  9. 14 1月, 2011 1 次提交
  10. 19 10月, 2010 1 次提交
    • P
      irq_work: Add generic hardirq context callbacks · e360adbe
      Peter Zijlstra 提交于
      Provide a mechanism that allows running code in IRQ context. It is
      most useful for NMI code that needs to interact with the rest of the
      system -- like wakeup a task to drain buffers.
      
      Perf currently has such a mechanism, so extract that and provide it as
      a generic feature, independent of perf so that others may also
      benefit.
      
      The IRQ context callback is generated through self-IPIs where
      possible, or on architectures like powerpc the decrementer (the
      built-in timer facility) is set to generate an interrupt immediately.
      
      Architectures that don't have anything like this get to do with a
      callback from the timer tick. These architectures can call
      irq_work_run() at the tail of any IRQ handlers that might enqueue such
      work (like the perf IRQ handler) to avoid undue latencies in
      processing the work.
      Signed-off-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Acked-by: NKyle McMartin <kyle@mcmartin.ca>
      Acked-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      [ various fixes ]
      Signed-off-by: NHuang Ying <ying.huang@intel.com>
      LKML-Reference: <1287036094.7768.291.camel@yhuang-dev>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      e360adbe
  11. 19 9月, 2010 1 次提交
  12. 10 8月, 2010 1 次提交
    • M
      alpha: implement HW performance events on the EV67 and later CPUs · 979f8671
      Michael Cree 提交于
      This implements hardware performance events for the EV67 and later CPUs
      within the Linux performance events subsystem.  Only using the performance
      monitoring unit in HP/Compaq's so called "Aggregrate mode" is supported.
      
      The code has been implemented in a manner that makes extension to other
      older Alpha CPUs relatively straightforward should some mug wish to
      indulge themselves.
      Signed-off-by: NMichael Cree <mcree@orcon.net.nz>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Matt Turner <mattst88@gmail.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Jay Estabrook <jay.estabrook@hp.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      979f8671
  13. 26 5月, 2010 1 次提交
  14. 13 3月, 2010 1 次提交
    • J
      alpha: Convert alpha to use read/update_persistent_clock · 1e871be1
      John Stultz 提交于
      This patch converts the alpha architecture to use the generic
      read_persistent_clock and update_persistent_clock interfaces, reducing
      the amount of arch specific code we have to maintain, and allowing for
      further cleanups in the future.
      
      I have not built or tested this patch, so help from arch maintainers
      would be appreciated.
      igned-off-by: NJohn Stultz <johnstul@us.ibm.com>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      LKML-Reference: <1267675049-12337-2-git-send-email-johnstul@us.ibm.com>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      1e871be1
  15. 22 9月, 2009 1 次提交
  16. 16 1月, 2009 1 次提交
    • I
      alpha: fix RTC on marvel · 5f7dc5d7
      Ivan Kokshaysky 提交于
      Unlike other alphas, marvel doesn't have real PC-style CMOS clock hardware
      - RTC accesses are emulated via PAL calls.  Unfortunately, for unknown
      reason these calls work only on CPU #0.  So current implementation for
      arbitrary CPU makes CMOS_READ/WRITE to be executed on CPU #0 via IPI.
      However, for obvious reason this doesn't work with standard
      get/set_rtc_time() functions, where a bunch of CMOS accesses is done with
      disabled interrupts.
      
      Solved by making the IPI calls for entire get/set_rtc_time() functions,
      not for individual CMOS accesses.  Which is also a lot more effective
      performance-wise.
      
      The patch is largely based on the code from Jay Estabrook.
      My changes:
      - tweak asm-generic/rtc.h by adding a couple of #defines to
        avoid a massive code duplication in arch/alpha/include/asm/rtc.h;
      - sys_marvel.c: fix get/set_rtc_time() return values (Jay's FIXMEs).
      
      NOTE: this fixes *only* LIB_RTC drivers.  Legacy (CONFIG_RTC) driver
      wont't work on marvel.  Actually I think that we should just disable
      CONFIG_RTC on alpha (maybe in 2.6.30?), like most other arches - AFAIK,
      all modern distributions use LIB_RTC anyway.
      Signed-off-by: NIvan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Richard Henderson <rth@twiddle.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      5f7dc5d7
  17. 20 10月, 2008 1 次提交
  18. 14 2月, 2008 1 次提交
    • P
      xtime_lock vs update_process_times · aa02cd2d
      Peter Zijlstra 提交于
      Commit d3d74453 ("hrtimer: fixup the
      HRTIMER_CB_IRQSAFE_NO_SOFTIRQ fallback") broke several archs, and since
      only Russell bothered to merge the fix, and Greg to ACK his arch, I'm
      sending this for merger.
      
      I have confirmation that the Alpha bit results in a booting kernel.
      That leaves: blackfin, frv, sh and sparc untested.
      
      The deadlock in question was found by Russell:
      
        IRQ handle
          -> timer_tick() - xtime seqlock held for write
            -> update_process_times()
              -> run_local_timers()
                -> hrtimer_run_queues()
                  -> hrtimer_get_softirq_time() - tries to get a read lock
      
      Now, Thomas assures me the fix is trivial, only do_timer() needs to be
      done under the xtime_lock, and update_process_times() can savely be
      removed from under it.
      Signed-off-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Acked-by: NGreg Ungerer <gerg@uclinux.org>
      CC: Richard Henderson <rth@twiddle.net>
      CC: Bryan Wu <bryan.wu@analog.com>
      CC: David Howells <dhowells@redhat.com>
      CC: Paul Mundt <lethal@linux-sh.org>
      CC: William Irwin <wli@holomorphy.com>
      Acked-by: NIngo Molnar <mingo@elte.hu>
      Acked-by: NIvan Kokshaysky <ink@jurassic.park.msu.ru>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      aa02cd2d
  19. 17 7月, 2007 1 次提交
    • S
      alpha: fix trivial section mismatch warnings · ebaf4fc1
      Sam Ravnborg 提交于
      Fix the following section mismatch warnings:
      WARNING: arch/alpha/kernel/built-in.o(.text+0x7c78): Section mismatch: reference to .init.text:init_rtc_irq (between 'common_init_rtc' and 'timer_interrupt')
      WARNING: arch/alpha/kernel/built-in.o(.text+0x7c7c): Section mismatch: reference to .init.text:init_rtc_irq (between 'common_init_rtc' and 'timer_interrupt')
      WARNING: arch/alpha/kernel/built-in.o(.data+0x2c30): Section mismatch: reference to .init.text:srm_console_setup (between 'srmcons' and 'tsunami_pci_ops')
      
      In all three cases functions marked __init was called outside __init context.
      So the fix was to just drop the __init attribute.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      Cc: Meelis Roos <mroos@linux.ee>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Richard Henderson <rth@twiddle.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ebaf4fc1
  20. 12 2月, 2007 1 次提交
  21. 12 10月, 2006 1 次提交
  22. 08 10月, 2006 1 次提交
  23. 01 10月, 2006 1 次提交
    • A
      [PATCH] kill wall_jiffies · 8ef38609
      Atsushi Nemoto 提交于
      With 2.6.18-rc4-mm2, now wall_jiffies will always be the same as jiffies.
      So we can kill wall_jiffies completely.
      
      This is just a cleanup and logically should not change any real behavior
      except for one thing: RTC updating code in (old) ppc and xtensa use a
      condition "jiffies - wall_jiffies == 1".  This condition is never met so I
      suppose it is just a bug.  I just remove that condition only instead of
      kill the whole "if" block.
      
      [heiko.carstens@de.ibm.com: s390 build fix and cleanup]
      Signed-off-by: NAtsushi Nemoto <anemo@mba.ocn.ne.jp>
      Cc: Andi Kleen <ak@muc.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Ian Molton <spyro@f2s.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Hirokazu Takata <takata.hirokazu@renesas.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Kyle McMartin <kyle@mcmartin.ca>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: Kazumoto Kojima <kkojima@rr.iij4u.or.jp>
      Cc: Richard Curnow <rc@rc0.org.uk>
      Cc: William Lee Irwin III <wli@holomorphy.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
      Cc: Miles Bader <uclinux-v850@lsi.nec.co.jp>
      Cc: Chris Zankel <chris@zankel.net>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      8ef38609
  24. 30 9月, 2006 1 次提交
    • A
      [PATCH] simplify update_times (avoid jiffies/jiffies_64 aliasing problem) · 3171a030
      Atsushi Nemoto 提交于
      Pass ticks to do_timer() and update_times(), and adjust x86_64 and s390
      timer interrupt handler with this change.
      
      Currently update_times() calculates ticks by "jiffies - wall_jiffies", but
      callers of do_timer() should know how many ticks to update.  Passing ticks
      get rid of this redundant calculation.  Also there are another redundancy
      pointed out by Martin Schwidefsky.
      
      This cleanup make a barrier added by
      5aee405c needless.  So this patch removes
      it.
      
      As a bonus, this cleanup make wall_jiffies can be removed easily, since now
      wall_jiffies is always synced with jiffies.  (This patch does not really
      remove wall_jiffies.  It would be another cleanup patch)
      Signed-off-by: NAtsushi Nemoto <anemo@mba.ocn.ne.jp>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: john stultz <johnstul@us.ibm.com>
      Cc: Andi Kleen <ak@muc.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Acked-by: NRussell King <rmk@arm.linux.org.uk>
      Cc: Ian Molton <spyro@f2s.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Acked-by: NDavid Howells <dhowells@redhat.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Hirokazu Takata <takata.hirokazu@renesas.com>
      Acked-by: NRalf Baechle <ralf@linux-mips.org>
      Cc: Kyle McMartin <kyle@mcmartin.ca>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: Kazumoto Kojima <kkojima@rr.iij4u.or.jp>
      Cc: Richard Curnow <rc@rc0.org.uk>
      Cc: William Lee Irwin III <wli@holomorphy.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
      Cc: Miles Bader <uclinux-v850@lsi.nec.co.jp>
      Cc: Chris Zankel <chris@zankel.net>
      Acked-by: N"Luck, Tony" <tony.luck@intel.com>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      3171a030
  25. 01 8月, 2006 1 次提交
  26. 01 7月, 2006 1 次提交
  27. 29 3月, 2006 1 次提交
  28. 31 10月, 2005 1 次提交
  29. 08 9月, 2005 1 次提交
  30. 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