1. 01 8月, 2006 5 次提交
    • R
      kconfig: correct oldconfig for unset choice options · 002d27b1
      Roman Zippel 提交于
      oldconfig currently ignores unset choice options and doesn't ask for them.
      Correct the SYMBOL_DEF_USER flag of the choice symbol to be only set if
      it's set for all values.
      Signed-off-by: NRoman Zippel <zippel@linux-m68k.org>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      002d27b1
    • D
      kbuild: fix typo in modpost · 0463f3c7
      Dave Jones 提交于
      Reported by a Fedora user when they tried to build some out of tree module..
      Signed-off-by: NDave Jones <davej@redhat.com>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      0463f3c7
    • S
      kbuild: improve error from file2alias · fb33d816
      Sam Ravnborg 提交于
      The original errormessage was just plain unreadable.
      
      Sample error message after this update (not for real - I provoked it):
      
      FATAL: drivers/net/s2io: sizeof(struct pci_device_id)=33 is not a modulo of the
      size of section __mod_pci_device_table=160.
      Fix definition of struct pci_device_id in mod_devicetable.h
      
      Before a warning was generated - this is now a fatal error.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      fb33d816
    • R
      [PATCH] vDSO hash-style fix · 0b0bf7a3
      Roland McGrath 提交于
      The latest toolchains can produce a new ELF section in DSOs and
      dynamically-linked executables.  The new section ".gnu.hash" replaces
      ".hash", and allows for more efficient runtime symbol lookups by the
      dynamic linker.  The new ld option --hash-style={sysv|gnu|both} controls
      whether to produce the old ".hash", the new ".gnu.hash", or both.  In some
      new systems such as Fedora Core 6, gcc by default passes --hash-style=gnu
      to the linker, so that a standard invocation of "gcc -shared" results in
      producing a DSO with only ".gnu.hash".  The new ".gnu.hash" sections need
      to be dealt with the same way as ".hash" sections in all respects; only the
      dynamic linker cares about their contents.  To work with older dynamic
      linkers (i.e.  preexisting releases of glibc), a binary must have the old
      ".hash" section.  The --hash-style=both option produces binaries that a new
      dynamic linker can use more efficiently, but an old dynamic linker can
      still handle.
      
      The new section runs afoul of the custom linker scripts used to build vDSO
      images for the kernel.  On ia64, the failure mode for this is a boot-time
      panic because the vDSO's PT_IA_64_UNWIND segment winds up ill-formed.
      
      This patch addresses the problem in two ways.
      
      First, it mentions ".gnu.hash" in all the linker scripts alongside ".hash".
       This produces correct vDSO images with --hash-style=sysv (or old tools),
      with --hash-style=gnu, or with --hash-style=both.
      
      Second, it passes the --hash-style=sysv option when building the vDSO
      images, so that ".gnu.hash" is not actually produced.  This is the most
      conservative choice for compatibility with any old userland.  There is some
      concern that some ancient glibc builds (though not any known old production
      system) might choke on --hash-style=both binaries.  The optimizations
      provided by the new style of hash section do not really matter for a DSO
      with a tiny number of symbols, as the vDSO has.  If someone wants to use
      =gnu or =both for their vDSO builds and worry less about that
      compatibility, just change the option and the linker script changes will
      make any choice work fine.
      Signed-off-by: NRoland McGrath <roland@redhat.com>
      Cc: "Luck, Tony" <tony.luck@intel.com>
      Cc: Kyle McMartin <kyle@mcmartin.ca>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Andi Kleen <ak@muc.de>
      Cc: Sam Ravnborg <sam@ravnborg.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      0b0bf7a3
    • R
      [PATCH] kernel-doc: ignore __devinit · 0129a057
      Randy Dunlap 提交于
      Ignore __devinit in function definitions so that kernel-doc won't fail on
      them.
      Signed-off-by: NRandy Dunlap <rdunlap@xenotime.net>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      0129a057
  2. 04 7月, 2006 1 次提交
    • S
      kbuild: introduce utsrelease.h · 63104eec
      Sam Ravnborg 提交于
      include/linux/version.h contained both actual KERNEL version
      and UTS_RELEASE that contains a subset from git SHA1 for when
      kernel was compiled as part of a git repository.
      This had the unfortunate side-effect that all files including version.h
      would be recompiled when some git changes was made due to changes SHA1.
      Split it out so we keep independent parts in separate files.
      
      Also update checkversion.pl script to no longer check for UTS_RELEASE.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      63104eec
  3. 02 7月, 2006 2 次提交
  4. 01 7月, 2006 4 次提交
  5. 28 6月, 2006 2 次提交
  6. 27 6月, 2006 1 次提交
    • L
      Revert "kbuild: fix make -rR breakage" · d38b6968
      Linus Torvalds 提交于
      This reverts commit e5c44fd8.
      
      Thanks to Daniel Ritz and Michal Piotrowski for noticing the problem.
      
      Daniel says:
      
        "[The] reason is a recent change that made modules always shows as
         module.mod.  it breaks modprobe and probably many scripts..besides
         lsmod looking horrible
      
         stuff like this in modprobe.conf:
              install pcmcia_core /sbin/modprobe --ignore-install pcmcia_core; /sbin/modprobe pcmcia
         makes modprobe fork/exec endlessly calling itself...until oom
         interrupts it"
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      d38b6968
  7. 26 6月, 2006 7 次提交
  8. 25 6月, 2006 6 次提交
    • S
      kbuild: replace abort() with exit(1) · 6803dc0e
      Sam Ravnborg 提交于
      We have had no use of the coredump file for a long time.
      So just exit(1) and avoid coredumping.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      6803dc0e
    • A
      kbuild: support for %.symtypes files · 15fde675
      Andreas Gruenbacher 提交于
      Here is a patch that adds a new -T option to genksyms for generating dumps of
      the type definition that makes up the symbol version hashes. This allows to
      trace modversion changes back to what caused them. The dump format is the
      name of the type defined, followed by its definition (which is almost C):
      
        s#list_head struct list_head { s#list_head * next , * prev ; }
      
      The s#, u#, e#, and t# prefixes stand for struct, union, enum, and typedef.
      The exported symbols do not define types, and thus do not have an x# prefix:
      
        nfs4_acl_get_whotype int nfs4_acl_get_whotype ( char * , t#u32 )
      
      The symbol type defintion of a single file can be generated with:
      
        make fs/jbd/journal.symtypes
      
      If KBUILD_SYMTYPES is defined, all the *.symtypes of all object files that
      export symbols are generated.
      
      The single *.symtypes files can be combined into a single file after a kernel
      build with a script like the following:
      
      for f in $(find -name '*.symtypes' | sort); do
          f=${f#./}
          echo "/* ${f%.symtypes}.o */"
          cat $f
          echo
      done \
      | sed -e '\:UNKNOWN:d' \
            -e 's:[,;] }:}:g' \
            -e 's:\([[({]\) :\1:g' \
            -e 's: \([])},;]\):\1:g' \
            -e 's: $::' \
            $f \
      | awk '
      /^.#/   { if (defined[$1] == $0) {
                  print $1
                  next
                }
                defined[$1] = $0
              }
              { print }
      '
      
      When the kernel ABI changes, diffing individual *.symtype files, or the
      combined files, against each other will show which symbol changes caused the
      ABI changes. This can save a tremendous amount of time.
      
      Dump the types that make up modversions
      Signed-off-by: NAndreas Gruenbacher <agruen@suse.de>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      15fde675
    • T
      kbuild: add option for stripping modules while installing them · ac031f26
      Theodore Ts'o 提交于
      Add option for stripping modules while installing them.
      
      This function adds support for stripping modules while they are being
      installed.  CONFIG_DEBUG_KERNEL (which will probably become more
      popular as developers use kdump) causes the size of the installed
      modules to grow by a factor of 9 or so.
      
      Some kernel package systems solve this problem by stripping the debug
      information from /lib/modules after running "make modules_install",
      but that may not work for people who are installing directly into
      /lib/modules --- root partitions that were sized to handle 16 megs
      worth of modules may not be quite so happy with 145 megs of modules,
      so the "make modules_install" never succeeds.
      
      This patch allows such users to request modules_install to strip the
      modules as they are installed.
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      ac031f26
    • A
      kbuild: kill some false positives from modpost · 468d9494
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      468d9494
    • R
      kbuild: export-symbol usage report generator · c5e30033
      Ram Pai 提交于
      The following patch provides the ability to generate a report of
      	(1) All the exported symbols and their in-kernel-module usage count
      	(2) For each module, lists the modules and their exported symbols, on
      	                  which it depends.
      
      	the report can be generated by executing:
      	perl scripts/export_report
      
      The tool warns if the modules are not build using MODVERSIONING.
      Signed-off-by: NRam Pai <linuxram@us.ibm.com>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      c5e30033
    • S
      kbuild: fix make -rR breakage · e5c44fd8
      Sam Ravnborg 提交于
      make failed to supply the filename when using make -rR and using $(*F)
      to get target filename without extension.
      This bug was not reproduceable in small scale but using:
      $(basename $(notdir $@)) fixes it with same functionality.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      e5c44fd8
  9. 18 6月, 2006 2 次提交
    • D
      Basic implementation of 'make headers_check' · 68475359
      David Woodhouse 提交于
      Based on the 'headers_install' target, this performs a basic sanity check
      on the exported headers -- so far only checking that they do not include
      any other headers which aren't selected for import, but easily extendable.
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      68475359
    • D
      Basic implementation of 'make headers_install' · 8d730cfb
      David Woodhouse 提交于
      This adds a make target which exports a subset of headers which contain
      definitions which are useful for system libraries and tools. It uses the
      BSD 'unifdef' tool to remove instances of #ifdef __KERNEL__, and uses
      sed to remove markers like __user.
      
      Based on an original implementation by Arnd Bergmann <arnd@arndb.de>
      Hacked about by David Woodhouse <dwmw2@infradead.org>
      Reviewed and cleaned up by Sam Ravnborg <sam@ravnborg.org>
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      8d730cfb
  10. 17 6月, 2006 3 次提交
  11. 10 6月, 2006 3 次提交
  12. 09 6月, 2006 4 次提交