1. 16 12月, 2006 1 次提交
    • L
      Remove stack unwinder for now · d1526e2c
      Linus Torvalds 提交于
      It has caused more problems than it ever really solved, and is
      apparently not getting cleaned up and fixed.  We can put it back when
      it's stable and isn't likely to make warning or bug events worse.
      
      In the meantime, enable frame pointers for more readable stack traces.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      d1526e2c
  2. 10 12月, 2006 1 次提交
    • A
      [PATCH] x86: Work around gcc 4.2 over aggressive optimizer · 1bac3b38
      Andi Kleen 提交于
      The new PDA code uses a dummy _proxy_pda variable to describe
      memory references to the PDA. It is never referenced
      in inline assembly, but exists as input/output arguments.
      gcc 4.2 in some cases can CSE references to this which causes
      unresolved symbols.  Define it to zero to avoid this.
      Signed-off-by: NAndi Kleen <ak@suse.de>
      1bac3b38
  3. 09 12月, 2006 1 次提交
    • J
      [PATCH] Generic BUG for x86-64 · c31a0bf3
      Jeremy Fitzhardinge 提交于
      This makes x86-64 use the generic BUG machinery.
      
      The main advantage in using the generic BUG machinery for x86-64 is that
      the inlined overhead of BUG is just the ud2a instruction; the file+line
      information are no longer inlined into the instruction stream.  This
      reduces cache pollution.
      Signed-off-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Cc: Andi Kleen <ak@muc.de>
      Cc: Hugh Dickens <hugh@veritas.com>
      Cc: Michael Ellerman <michael@ellerman.id.au>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      c31a0bf3
  4. 07 12月, 2006 1 次提交
  5. 21 11月, 2006 2 次提交
  6. 28 10月, 2006 1 次提交
  7. 22 10月, 2006 1 次提交
    • V
      [PATCH] x86-64: Overlapping program headers in physical addr space fix · dbaab49f
      Vivek Goyal 提交于
      o A recent change to vmlinux.ld.S file broke kexec as now resulting vmlinux
        program headers are overlapping in physical address space.
      
      o Now all the vsyscall related sections are placed after data and after
        that mostly init data sections are placed. To avoid physical overlap
        among phdrs, there are three possible solutions.
      	- Place vsyscall sections also in data phdrs instead of user
      	- move vsyscal sections after init data in bss.
      	- create another phdrs say data.init and move all the sections
      	  after vsyscall into this new phdr.
      
      o This patch implements the third solution.
      Signed-off-by: NVivek Goyal <vgoyal@in.ibm.com>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Cc: Magnus Damm <magnus@valinux.co.jp>
      Cc: Andi Kleen <ak@suse.de>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      dbaab49f
  8. 01 10月, 2006 1 次提交
    • A
      [PATCH] kill wall_jiffies · 8ef38609
      Atsushi Nemoto 提交于
      With 2.6.18-rc4-mm2, now wall_jiffies will always be the same as jiffies.
      So we can kill wall_jiffies completely.
      
      This is just a cleanup and logically should not change any real behavior
      except for one thing: RTC updating code in (old) ppc and xtensa use a
      condition "jiffies - wall_jiffies == 1".  This condition is never met so I
      suppose it is just a bug.  I just remove that condition only instead of
      kill the whole "if" block.
      
      [heiko.carstens@de.ibm.com: s390 build fix and cleanup]
      Signed-off-by: NAtsushi Nemoto <anemo@mba.ocn.ne.jp>
      Cc: Andi Kleen <ak@muc.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Ian Molton <spyro@f2s.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Hirokazu Takata <takata.hirokazu@renesas.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Kyle McMartin <kyle@mcmartin.ca>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: Kazumoto Kojima <kkojima@rr.iij4u.or.jp>
      Cc: Richard Curnow <rc@rc0.org.uk>
      Cc: William Lee Irwin III <wli@holomorphy.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
      Cc: Miles Bader <uclinux-v850@lsi.nec.co.jp>
      Cc: Chris Zankel <chris@zankel.net>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      8ef38609
  9. 30 9月, 2006 1 次提交
    • V
      [PATCH] Re-positioning the bss segment · 120b1142
      Vivek Goyal 提交于
      [AK: This apparently broke some systems, but we need it to fix
      a compile problem with old binutils and in theory the patch
      is correct. So let's trying reenabling it again.]
      
      o Currently bss segment is being placed somewhere in the middle (after .data)
        section and after bss lots of init section and data sections are coming.
        Is it intentional?
      
      o One side affect of placing bss in the middle is that objcopy keeps the
        bss in raw binary image (vmlinux.bin) hence unnecessarily increasing
        the size of raw binary image. (In my case ~600K). It also increases
        the size of generated bzImage, though the increase is very small
        (896 bytes), probably a very high compression ratio for stream
        of zeros.
      
      o This patch moves the bss at the end hence reducing the size of
        bzImage by 896 bytes and size of vmlinux.bin by 600K.
      
      o This change benefits in the context of relocatable kernel patches. If
        kernel bss is not part of compressed data (vmlinux.bin) then it does
        not have to be decompressed and this area can be used by the decompressor
        for its execution hence keeping the memory requirements bounded and
        decompressor code does not stomp over any other data loaded beyond
        kernel image (As might be the case with bootloaders like kexec).
      Signed-off-by: NVivek Goyal <vgoyal@in.ibm.com>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      120b1142
  10. 26 9月, 2006 3 次提交
    • A
      [PATCH] Mark per cpu data initialization __initdata again · b38337a6
      Andi Kleen 提交于
      Before 2.6.16 this was changed to work around code that accessed
      CPUs not in the possible map. But that code should be all fixed now,
      so mark it __initdata again.
      Signed-off-by: NAndi Kleen <ak@suse.de>
      b38337a6
    • I
      [PATCH] Put .note.* sections into a PT_NOTE segment · f2a9e1de
      Ian Campbell 提交于
      This patch updates x86_64 linker script to pack any .note.* sections
      into a PT_NOTE segment in the output file.
      
      To do this, we tell ld that we need a PT_NOTE segment.  This requires
      us to start explicitly mapping sections to segments, so we also need
      to explicitly create PT_LOAD segments for text and data, and map the
      sections to them appropriately.  Fortunately, each section will
      default to its previous section's segment, so it doesn't take many
      changes to vmlinux.lds.S.
      
      The corresponding change is already made for i386 in -mm and I'd like
      this patch to join it. The section to segment mappings do change as do
      the segment flags so some time in -mm would be good for that reason as
      well, just in case.
      
      In particular .data and .bss move from the text segment to the data
      segment and .data.cacheline_aligned .data.read_mostly are put in the
      data segment instead of a separate one.
      
      I think that it would be possible to exactly match the existing section
      to segment mapping and flags but it would be a more intrusive change and
      I'm not sure there is a reason for the existing layout other than it is
      what you get by default if you don't explicitly specify something else.
      If there is a reason for the existing layout then I will of course make
      the more intrusive change. If there is no reason we could probably drop
      the executable or writable flags from some segments but I don't know how
      much attention is paid to them anyway so it might not be worth the
      effort.
      
      The vsyscall related sections need to go in a different segment to the
      normal data segment and so I invented a "user" segment to contain them.
      I believe this should appear to be another data segment as far as the
      kernel is concerned so the flags are setup accordingly.
      
      The notes will be used in the Xen paravirt_ops backend to provide
      additional information to the domain builder. I am in the process of
      converting the xen-unstable kernels and tools over to this scheme at the
      moment to support this in the future.
      
      It has been suggested to me that the notes segment should have flags 0
      (i.e. not readable) since it is only used by the loader and is not used
      at runtime. For now I went with a readable segment since that is what
      the i386 patch uses.
      
      AK: dropped NOTES addition right now because the needed infrastructure
      for that is not merged yet
      Signed-off-by: NIan Campbell <ian.campbell@xensource.com>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      f2a9e1de
    • V
      [PATCH] Add the vgetcpu vsyscall · c08c8205
      Vojtech Pavlik 提交于
      This patch adds a vgetcpu vsyscall, which depending on the CPU RDTSCP
      capability uses either the RDTSCP or CPUID to obtain a CPU and node
      numbers and pass them to the program.
      
      AK: Lots of changes over Vojtech's original code:
      Better prototype for vgetcpu()
      It's better to pass the cpu / node numbers as separate arguments
      to avoid mistakes when going from SMP to NUMA.
      Also add a fast time stamp based cache using a user supplied
      argument to speed things more up.
      Use fast method from Chuck Ebbert to retrieve node/cpu from
      GDT limit instead of CPUID
      Made sure RDTSCP init is always executed after node is known.
      Drop printk
      Signed-off-by: NVojtech Pavlik <vojtech@suse.cz>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      c08c8205
  11. 01 7月, 2006 1 次提交
  12. 27 6月, 2006 2 次提交
    • J
      [PATCH] x86_64: reliable stack trace support (x86-64) · b538ed27
      Jan Beulich 提交于
      These are the x86_64-specific pieces to enable reliable stack traces. The
      only restriction with this is that it currently cannot unwind across the
      interrupt->normal stack boundary, as that transition is lacking proper
      annotation.
      Signed-off-by: NJan Beulich <jbeulich@novell.com>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      b538ed27
    • G
      [PATCH] x86_64: x86_64 version of the smp alternative patch. · d167a518
      Gerd Hoffmann 提交于
      Changes are largely identical to the i386 version:
      
       * alternative #define are moved to the new alternative.h file.
       * one new elf section with pointers to the lock prefixes which can be
         nop'ed out for non-smp.
       * two new elf sections simliar to the "classic" alternatives to
         replace SMP code with simpler UP code.
       * fixup headers to use alternative.h instead of defining their own
         LOCK / LOCK_PREFIX macros.
      
      The patch reuses the i386 version of the alternatives code to avoid code
      duplication.  The code in alternatives.c was shuffled around a bit to
      reduce the number of #ifdefs needed.  It also got some tweaks needed for
      x86_64 (vsyscall page handling) and new features (noreplacement option
      which was x86_64 only up to now).  Debug printk's are changed from
      compile-time to runtime.
      
      Loosely based on a early version from Bastian Blank <waldi@debian.org>
      Signed-off-by: NGerd Hoffmann <kraxel@suse.de>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      d167a518
  13. 10 4月, 2006 1 次提交
  14. 26 3月, 2006 2 次提交
    • A
      [PATCH] x86_64: Basic reorder infrastructure · 4bdc3b7f
      Arjan van de Ven 提交于
      This patch puts the infrastructure in place to allow for a reordering of
      functions based inside the vmlinux. The general idea is that it is possible
      to put all "common" functions into the first 2Mb of the code, so that they
      are covered by one TLB entry. This as opposed to the current situation where
      a typical vmlinux covers about 3.5Mb (on x86-64) and thus 2 TLB entries.
      
      This is done by enabling the -ffunction-sections flag in gcc, which puts
      each function in its own ELF section, so that the linker can then order them
      in a way defined by the linker script.
      
      As per previous discussions, Linus said he wanted a "static" list for this,
      eg a list provided by the kernel tarbal, so that most people have the same
      ordering at least. A script is provided to create this list based on
      readprofile(1) output. The included list is provisional, and entirely biased
      on my own testbox and me running a few kernel compiles and some other
      things.
      
      I think that to get to a better list we need to invite people to submit
      their own profiles, and somehow add those all up and base the final list on
      that. I'm willing to do that effort if this is ends up being the prefered
      approach. Such an effort probably needs to be repeated like once a year or
      so to adopt to the changing nature of the kernel.
      
      Made it a CONFIG with default n because it increases link times
      dramatically.
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      4bdc3b7f
    • A
      [PATCH] x86_64: Patch to make the head.S-must-be-first-in-vmlinux order explicit · eaeae0cc
      Arjan van de Ven 提交于
      This patch puts the code from head.S in a special .bootstrap.text
      section.
      
      I'm working on a patch to reorder the functions in the kernel (I'll post
      that later), but for x86-64 at least the kernel bootstrap requires that
      the head.S functions are on the very first page/pages of the kernel
      text.  This is understandable since the bootstrap is complex enough
      already and not a problem at all, it just means they aren't allowed to
      be reordered.  This patch puts these special functions into a separate
      section to document this, and to guarantee this in the light of possibly
      reordering the rest later.
      
      (So this patch doesn't fix a bug per se, but makes things more robust by
      making the order of these functions explicit)
      Signed-off-by: NArjan van de Ven <arjan@linux.intel.com>
      Signed-off-by: NAndi Kleen <ak@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      eaeae0cc
  15. 05 2月, 2006 2 次提交
  16. 12 1月, 2006 2 次提交
  17. 15 11月, 2005 1 次提交
  18. 11 9月, 2005 1 次提交
  19. 08 9月, 2005 1 次提交
  20. 13 7月, 2005 1 次提交
  21. 08 7月, 2005 1 次提交
  22. 26 6月, 2005 1 次提交
  23. 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