1. 15 Dec, 2006 1 commit
    • Zachary Amsden's avatar
      softirq: remove BUG_ONs which can incorrectly trigger · e89da8fc
      Zachary Amsden authored
      
      It is possible to have tasklets get scheduled before softirqd has had a chance
      to spawn on all CPUs.  This is totally harmless; after success during action
      CPU_UP_PREPARE, action CPU_ONLINE will be called, which immediately wakes
      softirqd on the appropriate CPU to process the already pending tasklets.  So
      there is no danger of having a missed wakeup for any tasklets that were
      already pending.
      
      In particular, i386 is affected by this during startup, and is visible when
      using a very large initrd; during the time it takes for the initrd to be
      decompressed, a timer IRQ can come in and schedule RCU callbacks.  It is also
      possible that resending of a hardware IRQ via a softirq triggers the same bug.
      
      Because of different timing conditions, this shows up in all emulators and
      virtual machines tested, including Xen, VMware, Virtual PC, and Qemu.  It is
      also possible to trigger on native hardware with a large enough initrd,
      although I don't have a reliable case demonstrating that.
      Signed-off-by: default avatarZachary Amsden <zach@vmware.com>
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      e89da8fc
  2. 07 Nov, 2005 1 commit
    • Heiko Carstens's avatar
      [PATCH] cpu hoptlug: avoid usage of smp_processor_id() in preemptible code · a4c4af7c
      Heiko Carstens authored
      
      Replace smp_processor_id() with any_online_cpu(cpu_online_map) in order to
      avoid lots of "BUG: using smp_processor_id() in preemptible [00000001]
      code:..." messages in case taking a cpu online fails.
      
      All the traces start at the last notifier_call_chain(...) in kernel/cpu.c.
      Since we hold the cpu_control semaphore it shouldn't be any problem to access
      cpu_online_map.
      
      The reason why cpu_up failed is simply that the cpu that was supposed to be
      taken online wasn't even there.  That is because on s390 we never know when a
      new cpu comes and therefore cpu_possible_map consists of only ones and doesn't
      reflect reality.
      Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      a4c4af7c
  3. 12 Sep, 2005 1 commit
  4. 30 Jul, 2005 1 commit
  5. 29 Jul, 2005 1 commit
  6. 16 Apr, 2005 1 commit
    • Linus Torvalds's avatar
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds authored
      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