1. 23 3月, 2006 1 次提交
    • G
      [PATCH] x86: SMP alternatives · 9a0b5817
      Gerd Hoffmann 提交于
      Implement SMP alternatives, i.e.  switching at runtime between different
      code versions for UP and SMP.  The code can patch both SMP->UP and UP->SMP.
      The UP->SMP case is useful for CPU hotplug.
      
      With CONFIG_CPU_HOTPLUG enabled the code switches to UP at boot time and
      when the number of CPUs goes down to 1, and switches to SMP when the number
      of CPUs goes up to 2.
      
      Without CONFIG_CPU_HOTPLUG or on non-SMP-capable systems the code is
      patched once at boot time (if needed) and the tables are released
      afterwards.
      
      The changes in detail:
      
        * The current alternatives bits are moved to a separate file,
          the SMP alternatives code is added there.
      
        * The patch adds some new elf sections to the kernel:
          .smp_altinstructions
      	like .altinstructions, also contains a list
      	of alt_instr structs.
          .smp_altinstr_replacement
      	like .altinstr_replacement, but also has some space to
      	save original instruction before replaving it.
          .smp_locks
      	list of pointers to lock prefixes which can be nop'ed
      	out on UP.
          The first two are used to replace more complex instruction
          sequences such as spinlocks and semaphores.  It would be possible
          to deal with the lock prefixes with that as well, but by handling
          them as special case the table sizes become much smaller.
      
       * The sections are page-aligned and padded up to page size, so they
         can be free if they are not needed.
      
       * Splitted the code to release init pages to a separate function and
         use it to release the elf sections if they are unused.
      Signed-off-by: NGerd Hoffmann <kraxel@suse.de>
      Signed-off-by: NChuck Ebbert <76306.1226@compuserve.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9a0b5817
  2. 08 2月, 2006 1 次提交
  3. 12 1月, 2006 1 次提交
  4. 09 1月, 2006 1 次提交
  5. 07 1月, 2006 1 次提交
    • J
      [PATCH] uml: umid cleanup · 7eebe8a9
      Jeff Dike 提交于
      This patch cleans up the umid code:
      
      - The only_if_set argument to get_umid is gone.
      
      - get_umid returns an empty string rather than NULL if there is no umid.
      
      - umid_is_random is gone since its users went away.
      
      - Some printfs were turned into printks because the code runs late enough
        that printk is working.
      
      - Error paths were cleaned up.
      
      - Some functions now return an error and let the caller print the error
        message rather than printing it themselves.  This eliminates the practice of
        passing a pointer to printf or printk in, depending on where in the boot
        process we are.
      
      - Major tidying of not_dead_yet - mostly error path cleanup, plus a comment
        explaining why it doesn't react to errors the way you might expect.
      
      - Calls to os_* interfaces that were moved under os are changed back to
        their native libc forms.
      
      - snprintf, strlcpy, and their bounds-checking friends are used more often,
        replacing by-hand bounds checking in some places.
      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>
      7eebe8a9
  6. 07 11月, 2005 1 次提交
  7. 01 10月, 2005 1 次提交
  8. 18 9月, 2005 1 次提交
  9. 05 9月, 2005 2 次提交
  10. 28 7月, 2005 1 次提交
  11. 14 6月, 2005 1 次提交
  12. 29 5月, 2005 1 次提交
  13. 07 5月, 2005 1 次提交
  14. 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