1. 08 12月, 2008 2 次提交
    • Y
      x86: use NR_IRQS_LEGACY · 99d093d1
      Yinghai Lu 提交于
      Impact: cleanup
      
      Introduce NR_IRQS_LEGACY instead of hard coded number.
      Signed-off-by: NYinghai Lu <yinghai@kernel.org>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      99d093d1
    • Y
      sparse irq_desc[] array: core kernel and x86 changes · 0b8f1efa
      Yinghai Lu 提交于
      Impact: new feature
      
      Problem on distro kernels: irq_desc[NR_IRQS] takes megabytes of RAM with
      NR_CPUS set to large values. The goal is to be able to scale up to much
      larger NR_IRQS value without impacting the (important) common case.
      
      To solve this, we generalize irq_desc[NR_IRQS] to an (optional) array of
      irq_desc pointers.
      
      When CONFIG_SPARSE_IRQ=y is used, we use kzalloc_node to get irq_desc,
      this also makes the IRQ descriptors NUMA-local (to the site that calls
      request_irq()).
      
      This gets rid of the irq_cfg[] static array on x86 as well: irq_cfg now
      uses desc->chip_data for x86 to store irq_cfg.
      Signed-off-by: NYinghai Lu <yinghai@kernel.org>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      0b8f1efa
  2. 06 12月, 2008 8 次提交
  3. 05 12月, 2008 21 次提交
  4. 04 12月, 2008 9 次提交
    • A
      x86: fix early panic with boot option "nosmp" · 9adc1386
      Andi Kleen 提交于
      Impact: fix boot crash with numcpus=0 on certain systems
      
      Fix early exception in __get_smp_config with nosmp.
      
      Bail out early when there is no MP table.
      Reported-by: NWu Fengguang <fengguang.wu@intel.com>
      Signed-off-by: NAndi Kleen <ak@linux.intel.com>
      Tested-by: NWu Fengguang <fengguang.wu@intel.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      9adc1386
    • A
      [PATCH] fix bogus argument of blkdev_put() in pktcdvd · 2cbed890
      Al Viro 提交于
      final close of ->bdev should match the initial open, i.e.
      get FMODE_READ | FMODE_NDELAY; FMODE_READ|FMODE_WRITE has
      been a braino.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      2cbed890
    • C
      [PATCH 2/2] documnt FMODE_ constants · fc9161e5
      Christoph Hellwig 提交于
      Make sure all FMODE_ constants are documents, and ensure a coherent
      style for the already existing comments.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      fc9161e5
    • C
      [PATCH 1/2] kill FMODE_NDELAY_NOW · fd4ce1ac
      Christoph Hellwig 提交于
      Update FMODE_NDELAY before each ioctl call so that we can kill the
      magic FMODE_NDELAY_NOW.  It would be even better to do this directly
      in setfl(), but for that we'd need to have FMODE_NDELAY for all files,
      not just block special files.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      fd4ce1ac
    • C
      [PATCH] clean up blkdev_get a little bit · ebbefc01
      Christoph Hellwig 提交于
      The way the bd_claim for the FMODE_EXCL case is implemented is rather
      confusing.  Clean it up to the most logical style.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      ebbefc01
    • A
      [PATCH] Fix block dev compat ioctl handling · 1c925604
      Andreas Schwab 提交于
      Commit 33c2dca4 (trim file propagation
      in block/compat_ioctl.c) removed the handling of some ioctls from
      compat_blkdev_driver_ioctl.  That caused them to be rejected as unknown
      by the compat layer.
      Signed-off-by: NAndreas Schwab <schwab@suse.de>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      1c925604
    • A
      [PATCH] kill obsolete temporary comment in swsusp_close() · 50c396d3
      Al Viro 提交于
      it had been put there to mark the call of blkdev_put() that
      needed proper argument propagated to it; later patch in the
      same series had done just that.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      50c396d3
    • J
      time: catch xtime_nsec underflows and fix them · 6c9bacb4
      john stultz 提交于
      Impact: fix time warp bug
      
      Alex Shi, along with Yanmin Zhang have been noticing occasional time
      inconsistencies recently. Through their great diagnosis, they found that
      the xtime_nsec value used in update_wall_time was occasionally going
      negative. After looking through the code for awhile, I realized we have
      the possibility for an underflow when three conditions are met in
      update_wall_time():
      
        1) We have accumulated a second's worth of nanoseconds, so we
           incremented xtime.tv_sec and appropriately decrement xtime_nsec.
           (This doesn't cause xtime_nsec to go negative, but it can cause it
            to be small).
      
        2) The remaining offset value is large, but just slightly less then
           cycle_interval.
      
        3) clocksource_adjust() is speeding up the clock, causing a
           corrective amount (compensating for the increase in the multiplier
           being multiplied against the unaccumulated offset value) to be
           subtracted from xtime_nsec.
      
      This can cause xtime_nsec to underflow.
      
      Unfortunately, since we notify the NTP subsystem via second_overflow()
      whenever we accumulate a full second, and this effects the error
      accumulation that has already occured, we cannot simply revert the
      accumulated second from xtime nor move the second accumulation to after
      the clocksource_adjust call without a change in behavior.
      
      This leaves us with (at least) two options:
      
      1) Simply return from clocksource_adjust() without making a change if we
         notice the adjustment would cause xtime_nsec to go negative.
      
      This would work, but I'm concerned that if a large adjustment was needed
      (due to the error being large), it may be possible to get stuck with an
      ever increasing error that becomes too large to correct (since it may
      always force xtime_nsec negative). This may just be paranoia on my part.
      
      2) Catch xtime_nsec if it is negative, then add back the amount its
         negative to both xtime_nsec and the error.
      
      This second method is consistent with how we've handled earlier rounding
      issues, and also has the benefit that the error being added is always in
      the oposite direction also always equal or smaller then the correction
      being applied. So the risk of a corner case where things get out of
      control is lessened.
      
      This patch fixes bug 11970, as tested by Yanmin Zhang
      http://bugzilla.kernel.org/show_bug.cgi?id=11970
      
      Reported-by: alex.shi@intel.com
      Signed-off-by: NJohn Stultz <johnstul@us.ibm.com>
      Acked-by: N"Zhang, Yanmin" <yanmin_zhang@linux.intel.com>
      Tested-by: N"Zhang, Yanmin" <yanmin_zhang@linux.intel.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      6c9bacb4
    • J
      sparc64: Fix VIS emulation bugs · 726c12f5
      Joseph Myers 提交于
      This patch fixes some bugs in VIS emulation that cause the GCC test
      failure
      
      FAIL: gcc.target/sparc/pdist-3.c execution test
      
      for both 32-bit and 64-bit testing on hardware lacking these
      instructions.  The emulation code for the pdist instruction uses
      RS1(insn) for both source registers rs1 and rs2, which is obviously
      wrong and leads to the instruction doing nothing (the observed
      problem), and further inspection of the code shows that RS1 uses a
      shift of 24 and RD a shift of 25, which clearly cannot both be right;
      examining SPARC documentation indicates the correct shift for RS1 is
      14.
      
      This patch fixes the bug if single-stepping over the affected
      instruction in the debugger, but not if the testcase is run
      standalone.  For that, Wind River has another patch I hope they will
      send as a followup to this patch submission.
      Signed-off-by: NJoseph Myers <joseph@codesourcery.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      726c12f5