1. 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
  2. 18 10月, 2010 1 次提交
  3. 09 10月, 2010 1 次提交
  4. 08 10月, 2010 2 次提交
  5. 05 10月, 2010 4 次提交
  6. 02 10月, 2010 1 次提交
  7. 19 9月, 2010 1 次提交
  8. 18 9月, 2010 1 次提交
  9. 17 9月, 2010 2 次提交
  10. 10 9月, 2010 1 次提交
  11. 08 9月, 2010 1 次提交
  12. 02 9月, 2010 2 次提交
  13. 27 8月, 2010 1 次提交
  14. 11 8月, 2010 2 次提交
  15. 06 8月, 2010 4 次提交
  16. 05 8月, 2010 3 次提交
  17. 30 7月, 2010 1 次提交
  18. 27 7月, 2010 5 次提交
  19. 16 7月, 2010 1 次提交
  20. 12 7月, 2010 1 次提交
    • E
      ARM: Auto calculate ZRELADDR and provide option for exceptions · e69edc79
      Eric Miao 提交于
      As long as the zImage is placed within the 128MB range from the start of
      memory, ZRELADDR (Address where the decompressed kernel will be placed,
      usually == PHYS_OFFSET + TEXT_OFFSET) can be determined at run-time by
      masking PC with 0xf80000000.
      
      Running through all the Makefile.boot, all those zreladdr-y
      addresses == 0x[0-f][08]00_0000 + TEXT_OFFSET can be determined at
      run-time.
      
      Option CONFIG_AUTO_ZRELADDR and CONFIG_ZRELADDR are introduced,
      CONFIG_ZRELADDR _must_ be explicitly specified if:
      
      - ((zreladdr-y - TEXT_OFFSET) & ~0xf8000000) != 0, which means
        masking PC with 0xf8000000 will result in an incorrect address.
        Currently this is only a problem on u300.
      
      - or the assumption of the zImage being loaded by the bootloader within
        the first 128MB of RAM is incorrect
      
      - or when ZBOOT_ROM is used, where the above assumption is usually wrong.
      
      [ukleinek: changed mask from 0xf0000000 to 0xf8000000 for mx1 and shark
      + some review fixes from the mailing list]
      Original-Idea-and-Signed-off-by: NNicolas Pitre <nicolas.pitre@linaro.org>
      Signed-off-by: NEric Miao <eric.miao@canonical.com>
      Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      e69edc79
  21. 09 7月, 2010 4 次提交