1. 12 11月, 2006 1 次提交
  2. 09 11月, 2006 9 次提交
  3. 08 11月, 2006 3 次提交
  4. 07 11月, 2006 12 次提交
  5. 06 11月, 2006 7 次提交
  6. 04 11月, 2006 8 次提交
    • J
      [PATCH] uml: include tidying · 1f6f6164
      Jeff Dike 提交于
      In order to get the __NR_* constants, we need sys/syscall.h.
      linux/unistd.h works as well since it includes syscall.h, however syscall.h
      is more parsimonious.  We were inconsistent in this, and this patch adds
      syscall.h includes where necessary and removes linux/unistd.h includes
      where they are not needed.
      
      asm/unistd.h also includes the __NR_* constants, but these are not the
      glibc-sanctioned ones, so this also removes one such inclusion.
      Signed-off-by: NJeff Dike <jdike@addtoit.com>
      Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      1f6f6164
    • J
      [PATCH] uml: fix I/O hang · 53b17332
      Jeff Dike 提交于
      Fix a UML hang in which everything would just stop until some I/O happened
      - a ping, someone whacking the keyboard - at which point everything would
      start up again as though nothing had happened.
      
      The cause was gcc reordering some code which absolutely needed to be
      executed in the order in the source.  When unblock_signals switches signals
      from off to on, it needs to see if any interrupts had happened in the
      critical section.  The interrupt handlers check signals_enabled - if it is
      zero, then the handler adds a bit to the "pending" bitmask and returns.
      unblock_signals checks this mask to see if any signals need to be
      delivered.
      
      The crucial part is this:
      	signals_enabled = 1;
      	save_pending = pending;
      	if(save_pending == 0)
      		return;
      	pending = 0;
      
      In order to avoid an interrupt arriving between reading pending and setting
      it to zero, in which case, the record of the interrupt would be erased,
      signals are enabled.
      
      What happened was that gcc reordered this so that 'save_pending = pending'
      came before 'signals_enabled = 1', creating a one-instruction window within
      which an interrupt could arrive, set its bit in pending, and have it be
      immediately erased.
      
      When the I/O workload is purely disk-based, the loss of a block device
      interrupt stops the entire I/O system because the next block request will
      wait for the current one to finish.  Thus the system hangs until something
      else causes some I/O to arrive, such as a network packet or console input.
      
      The fix to this particular problem is a memory barrier between enabling
      signals and reading the pending signal mask.  An xchg would also probably
      work.
      
      Looking over this code for similar problems led me to do a few more
      things:
      
      - make signals_enabled and pending volatile so that they don't get cached
        in registers
      
      - add an mb() to the return paths of block_signals and unblock_signals so
        that the modification of signals_enabled doesn't get shuffled into the
        caller in the event that these are inlined in the future.
      Signed-off-by: NJeff Dike <jdike@addtoit.com>
      Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      53b17332
    • A
      [PATCH] acpi_noirq section fix · 90d53909
      Andrew Morton 提交于
      WARNING: vmlinux - Section mismatch: reference to .init.data:acpi_noirq from .text between 'pcibios_penalize_isa_irq' (at offset 0xc026ffa1) and 'pirq_serverworks_get'
      Acked-by: N"Brown, Len" <len.brown@intel.com>
      Cc: Andi Kleen <ak@suse.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      90d53909
    • B
      [ARM] 3923/1: S3C24XX: update s3c2410_defconfig with new drivers · 3f84ada6
      Ben Dooks 提交于
      Add the new drivers, such as SPI, LED and RTC core,
      to the s3c2410_defconfig.
      Signed-off-by: NBen Dooks <ben-linux@fluff.irg>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      3f84ada6
    • B
      [ARM] 3922/1: S3C24XX: update s3c2410_defconfig to 2.6.19-rc4 · da863418
      Ben Dooks 提交于
      Update the s3c2410_defconfig to 2.6.19-rc4
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      da863418
    • B
      [ARM] 3921/1: S3C24XX: remove bast_defconfig · 73d15da4
      Ben Dooks 提交于
      Remove the bast_defconfig, as it has not been updated
      since 2.6.13. The s3c2410_defconfig should be a good
      replacement.
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      73d15da4
    • B
      [ARM] 3920/1: S3C24XX: Remove smdk2410_defconfig · d91f75fb
      Ben Dooks 提交于
      Remove the smdk2410_defconifg as it is out of data
      and has not been touched since 2.6.11.
      
      Use the s3c2410_defconfig instead.
      Signed-off-by: NBen Dooks <ben-linux@fluff.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      d91f75fb
    • K
      [ARM] 3918/1: ixp4xx irq-chip rework · 984d115b
      Kevin Hilman 提交于
      This is a rework of the ixp4xx irq_chip implementation.  The use of
      two irq_chip structures and potentially switching between them is a
      violation of the intended use of the IRQ framework.  The current
      implementation does not work with current in-kernel spinlock debugging
      or lockdep due to lock recursion problems caused by calling
      set_irq_chip/handler from within the chip's set_irq_type().
      
      This patch goes back to using one irq_chip structure and handling the
      differences between edge/level, normal/GPIO interrupts inside the
      ack/mask/unmask routines themselves.
      Signed-off-by: NKevin Hilman <khilman@mvista.com>
      Signed-off-by: NDeepak Saxena <dsaxena@mvista.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      984d115b