1. 04 7月, 2006 1 次提交
    • J
      [PATCH] time initialisation fix · 88fecaa2
      john stultz 提交于
      We're not reay to take a timer interrupt until timekeeping_init() has run.
      But time_init() will start the time interrupt and if it is called with
      local interrupts enabled we'll immediately take an interrupt and die.
      
      Fix that by running timekeeping_init() prior to time_init().
      
      We don't know _why_ local interrupts got enabled on Jesse Brandeburg's
      machine.  That's a separate as-yet-unsolved problem.  THe patch adds a little
      bit of debugging to detect that.
      
      This whole requirement that local interrupts be held off during early boot
      keeps on biting us.
      Signed-off-by: NJohn Stultz <johnstul@us.ibm.com>
      Cc: Jesse Brandeburg <jesse.brandeburg@gmail.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      88fecaa2
  2. 01 7月, 2006 2 次提交
  3. 28 6月, 2006 1 次提交
  4. 27 6月, 2006 3 次提交
  5. 02 5月, 2006 1 次提交
  6. 29 3月, 2006 1 次提交
  7. 27 3月, 2006 1 次提交
    • A
      [PATCH] remove fixup_cpu_present_map() · 9a98e2f7
      Andrew Morton 提交于
      Since the addition of boot_cpu_init(), fixup_cpu_present_map() has been a
      no-op.  That's because fixup_cpu_present_map() won't touch cpu_present_map if
      it has any bits set, and boot_cpu_init() sets a bit.
      
      So remove fixup_cpu_present_map().
      
      A consequence of this (actually of the boot_cpu_init() change) is that the
      architecture _must_ populate cpu_present_map itself (probably in
      smp_prepare_cpus()).  fixup_cpu_present_map() won't do it any more.
      
      If the architecture doesn't do this, it'll only bring up a single CPU.
      
      The other side effect (though less serious) is that smp_prepare_boot_cpu() no
      longer needs to mark the boot cpu in the online and present maps -
      boot_cpu_init() does that for everyone (to make early printks work).
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9a98e2f7
  8. 26 3月, 2006 2 次提交
  9. 23 3月, 2006 3 次提交
  10. 11 2月, 2006 1 次提交
  11. 15 1月, 2006 1 次提交
  12. 11 1月, 2006 1 次提交
  13. 09 1月, 2006 2 次提交
    • A
      [PATCH] Abandon gcc-2.95.x · fd285bb5
      Andrew Morton 提交于
      There's one scsi driver which doesn't compile due to weird __VA_ARGS__ tricks
      and the rather useful scsi/sd.c is currently getting an ICE.  None of the new
      SAS code compiles, due to extensive use of anonymous unions.  The V4L guys are
      very good at exploiting the gcc-2.95.x macro expansion bug (_why_ does each
      driver need to implement its own debug macros?) and various people keep on
      sneaking in anonymous unions, which are rather nice.
      
      Plus anonymous unions are rather useful.
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      fd285bb5
    • P
      [PATCH] cpuset: remove test for null cpuset from alloc code path · c417f024
      Paul Jackson 提交于
      Remove a couple of more lines of code from the cpuset hooks in the page
      allocation code path.
      
      There was a check for a NULL cpuset pointer in the routine
      cpuset_update_task_memory_state() that was only needed during system boot,
      after the memory subsystem was initialized, before the cpuset subsystem was
      initialized, to catch a NULL task->cpuset pointer.
      
      Add a cpuset_init_early() routine, just before the mem_init() call in
      init/main.c, that sets up just enough of the init tasks cpuset structure to
      render cpuset_update_task_memory_state() calls harmless.
      Signed-off-by: NPaul Jackson <pj@sgi.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      c417f024
  14. 07 1月, 2006 1 次提交
  15. 04 1月, 2006 1 次提交
  16. 09 11月, 2005 1 次提交
    • N
      [PATCH] sched: disable preempt in idle tasks · 5bfb5d69
      Nick Piggin 提交于
      Run idle threads with preempt disabled.
      
      Also corrected a bugs in arm26's cpu_idle (make it actually call schedule()).
      How did it ever work before?
      
      Might fix the CPU hotplugging hang which Nigel Cunningham noted.
      
      We think the bug hits if the idle thread is preempted after checking
      need_resched() and before going to sleep, then the CPU offlined.
      
      After calling stop_machine_run, the CPU eventually returns from preemption and
      into the idle thread and goes to sleep.  The CPU will continue executing
      previous idle and have no chance to call play_dead.
      
      By disabling preemption until we are ready to explicitly schedule, this bug is
      fixed and the idle threads generally become more robust.
      
      From: alexs <ashepard@u.washington.edu>
      
        PPC build fix
      
      From: Yoichi Yuasa <yuasa@hh.iij4u.or.jp>
      
        MIPS build fix
      Signed-off-by: NNick Piggin <npiggin@suse.de>
      Signed-off-by: NYoichi Yuasa <yuasa@hh.iij4u.or.jp>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      5bfb5d69
  17. 01 11月, 2005 1 次提交
  18. 31 10月, 2005 1 次提交
    • E
      [PATCH] i386: move apic init in init_IRQs · f2b36db6
      Eric W. Biederman 提交于
      All kinds of ugliness exists because we don't initialize
      the apics during init_IRQs.
      - We calibrate jiffies in non apic mode even when we are using apics.
      - We have to have special code to initialize the apics when non-smp.
      - The legacy i8259 must exist and be setup correctly, even
        when we won't use it past initialization.
      - The kexec on panic code must restore the state of the io_apics.
      - init/main.c needs a special case for !smp smp_init on x86
      
      In addition to pure code movement I needed a couple
      of non-obvious changes:
      - Move setup_boot_APIC_clock into APIC_late_time_init for
        simplicity.
      - Use cpu_khz to generate a better approximation of loops_per_jiffies
        so I can verify the timer interrupt is working.
      - Call setup_apic_nmi_watchdog again after cpu_khz is initialized on
        the boot cpu.
      Signed-off-by: NEric W. Biederman <ebiederm@xmission.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      f2b36db6
  19. 08 9月, 2005 3 次提交
  20. 30 8月, 2005 1 次提交
  21. 29 7月, 2005 1 次提交
  22. 29 6月, 2005 1 次提交
  23. 22 6月, 2005 1 次提交
    • C
      [PATCH] node local per-cpu-pages · e7c8d5c9
      Christoph Lameter 提交于
      This patch modifies the way pagesets in struct zone are managed.
      
      Each zone has a per-cpu array of pagesets.  So any particular CPU has some
      memory in each zone structure which belongs to itself.  Even if that CPU is
      not local to that zone.
      
      So the patch relocates the pagesets for each cpu to the node that is nearest
      to the cpu instead of allocating the pagesets in the (possibly remote) target
      zone.  This means that the operations to manage pages on remote zone can be
      done with information available locally.
      
      We play a macro trick so that non-NUMA pmachines avoid the additional
      pointer chase on the page allocator fastpath.
      
      AIM7 benchmark on a 32 CPU SGI Altix
      
      w/o patches:
      Tasks    jobs/min  jti  jobs/min/task      real       cpu
          1      484.68  100       484.6769     12.01      1.97   Fri Mar 25 11:01:42 2005
        100    27140.46   89       271.4046     21.44    148.71   Fri Mar 25 11:02:04 2005
        200    30792.02   82       153.9601     37.80    296.72   Fri Mar 25 11:02:42 2005
        300    32209.27   81       107.3642     54.21    451.34   Fri Mar 25 11:03:37 2005
        400    34962.83   78        87.4071     66.59    588.97   Fri Mar 25 11:04:44 2005
        500    31676.92   75        63.3538     91.87    742.71   Fri Mar 25 11:06:16 2005
        600    36032.69   73        60.0545     96.91    885.44   Fri Mar 25 11:07:54 2005
        700    35540.43   77        50.7720    114.63   1024.28   Fri Mar 25 11:09:49 2005
        800    33906.70   74        42.3834    137.32   1181.65   Fri Mar 25 11:12:06 2005
        900    34120.67   73        37.9119    153.51   1325.26   Fri Mar 25 11:14:41 2005
       1000    34802.37   74        34.8024    167.23   1465.26   Fri Mar 25 11:17:28 2005
      
      with slab API changes and pageset patch:
      
      Tasks    jobs/min  jti  jobs/min/task      real       cpu
          1      485.00  100       485.0000     12.00      1.96   Fri Mar 25 11:46:18 2005
        100    28000.96   89       280.0096     20.79    150.45   Fri Mar 25 11:46:39 2005
        200    32285.80   79       161.4290     36.05    293.37   Fri Mar 25 11:47:16 2005
        300    40424.15   84       134.7472     43.19    438.42   Fri Mar 25 11:47:59 2005
        400    39155.01   79        97.8875     59.46    590.05   Fri Mar 25 11:48:59 2005
        500    37881.25   82        75.7625     76.82    730.19   Fri Mar 25 11:50:16 2005
        600    39083.14   78        65.1386     89.35    872.79   Fri Mar 25 11:51:46 2005
        700    38627.83   77        55.1826    105.47   1022.46   Fri Mar 25 11:53:32 2005
        800    39631.94   78        49.5399    117.48   1169.94   Fri Mar 25 11:55:30 2005
        900    36903.70   79        41.0041    141.94   1310.78   Fri Mar 25 11:57:53 2005
       1000    36201.23   77        36.2012    160.77   1458.31   Fri Mar 25 12:00:34 2005
      Signed-off-by: NChristoph Lameter <clameter@sgi.com>
      Signed-off-by: NShobhit Dayal <shobhit@calsoftinc.com>
      Signed-off-by: NShai Fultheim <Shai@Scalex86.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      e7c8d5c9
  24. 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