1. 25 6月, 2006 6 次提交
    • 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
    • R
      kbuild: fix silentoldconfig recursion · 3041e47e
      Roman Zippel 提交于
      kconfig-fix-config-dependencies causes this:
      
      make CC=cc  KBUILD_VERBOSE=1 -C /usr/src/25 SUBDIRS=/home/akpm/NVIDIA-Linux-x86_64-1.0-8762-pkg2/usr/src/nv modules
      make -f /usr/src/devel/Makefile silentoldconfig
      make -f /usr/src/devel/Makefile silentoldconfig
      make -f /usr/src/devel/Makefile silentoldconfig
      
      The basic problem is if we compile external modules, config-targets isn't
      set which can cause recursive calls to silentoldconfig to update the
      kernel configuration.
      
      Bail out and ask the user to update manually.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      3041e47e
    • 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
  2. 17 6月, 2006 3 次提交
  3. 10 6月, 2006 5 次提交
  4. 09 6月, 2006 23 次提交
  5. 06 6月, 2006 3 次提交