1. 09 5月, 2009 1 次提交
  2. 25 3月, 2009 1 次提交
    • J
      dynamic debug: combine dprintk and dynamic printk · e9d376f0
      Jason Baron 提交于
      This patch combines Greg Bank's dprintk() work with the existing dynamic
      printk patchset, we are now calling it 'dynamic debug'.
      
      The new feature of this patchset is a richer /debugfs control file interface,
      (an example output from my system is at the bottom), which allows fined grained
      control over the the debug output. The output can be controlled by function,
      file, module, format string, and line number.
      
      for example, enabled all debug messages in module 'nf_conntrack':
      
      echo -n 'module nf_conntrack +p' > /mnt/debugfs/dynamic_debug/control
      
      to disable them:
      
      echo -n 'module nf_conntrack -p' > /mnt/debugfs/dynamic_debug/control
      
      A further explanation can be found in the documentation patch.
      Signed-off-by: NGreg Banks <gnb@sgi.com>
      Signed-off-by: NJason Baron <jbaron@redhat.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      e9d376f0
  3. 05 1月, 2009 2 次提交
    • H
      bzip2/lzma: handle failures from bzip2 and lzma correctly · 0f5e2d24
      H. Peter Anvin 提交于
      Impact: Bug fix
      
      If bzip2 or lzma fails (for example, if they aren't installed on the
      system), we need to propagate the failure out to "make".  However,
      they were masked by being followed by a semicolon.
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      0f5e2d24
    • A
      bzip2/lzma: library support for gzip, bzip2 and lzma decompression · bc22c17e
      Alain Knaff 提交于
      Impact: Replaces inflate.c with a wrapper around zlib_inflate; new library code
      
      This is the first part of the bzip2/lzma patch
      
      The bzip patch is based on an idea by Christian Ludwig, includes support for
      compressing the kernel with bzip2 or lzma rather than gzip. Both
      compressors give smaller sizes than gzip.  Lzma's decompresses faster
      than bzip2.
      
      It also supports ramdisks and initramfs' compressed using these two
      compressors.
      
      The functionality has been successfully used for a couple of years by
      the udpcast project
      
      This version applies to "tip" kernel 2.6.28
      
      This part contains:
      - changed inflate.c to accomodate rest of patch
      - implementation of bzip2 compression (not used at this stage yet)
      - implementation of lzma compression (not used at this stage yet)
      - Makefile routines to support bzip2 and lzma kernel compression
      Signed-off-by: NAlain Knaff <alain@knaff.lu>
      Signed-off-by: NH. Peter Anvin <hpa@zytor.com>
      bc22c17e
  4. 04 12月, 2008 1 次提交
    • S
      kbuild: expand -I in KBUILD_CPPFLAGS · d8672b40
      Sam Ravnborg 提交于
      kbuild failed to expand include flags in KBUILD_CPPFLAGS
      resulting in code like this in arch Makefiles:
      
      ifeq ($(KBUILD_SRC),)
      KBUILD_CPPFLAGS += -Iinclude/foo
      else
      KBUILD_CPPFLAGS += -I$(srctree)/include/foo
      endif
      
      Move use of LINUXINCLUDE into Makefile.lib to allow
      us to expand -I directives of KBUILD_CPPFLAGS so
      we can avoid the above code.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      d8672b40
  5. 17 10月, 2008 1 次提交
    • J
      driver core: basic infrastructure for per-module dynamic debug messages · 346e15be
      Jason Baron 提交于
      Base infrastructure to enable per-module debug messages.
      
      I've introduced CONFIG_DYNAMIC_PRINTK_DEBUG, which when enabled centralizes
      control of debugging statements on a per-module basis in one /proc file,
      currently, <debugfs>/dynamic_printk/modules. When, CONFIG_DYNAMIC_PRINTK_DEBUG,
      is not set, debugging statements can still be enabled as before, often by
      defining 'DEBUG' for the proper compilation unit. Thus, this patch set has no
      affect when CONFIG_DYNAMIC_PRINTK_DEBUG is not set.
      
      The infrastructure currently ties into all pr_debug() and dev_dbg() calls. That
      is, if CONFIG_DYNAMIC_PRINTK_DEBUG is set, all pr_debug() and dev_dbg() calls
      can be dynamically enabled/disabled on a per-module basis.
      
      Future plans include extending this functionality to subsystems, that define 
      their own debug levels and flags.
      
      Usage:
      
      Dynamic debugging is controlled by the debugfs file, 
      <debugfs>/dynamic_printk/modules. This file contains a list of the modules that
      can be enabled. The format of the file is as follows:
      
      	<module_name> <enabled=0/1>
      		.
      		.
      		.
      
      	<module_name> : Name of the module in which the debug call resides
      	<enabled=0/1> : whether the messages are enabled or not
      
      For example:
      
      	snd_hda_intel enabled=0
      	fixup enabled=1
      	driver enabled=0
      
      Enable a module:
      
      	$echo "set enabled=1 <module_name>" > dynamic_printk/modules
      
      Disable a module:
      
      	$echo "set enabled=0 <module_name>" > dynamic_printk/modules
      
      Enable all modules:
      
      	$echo "set enabled=1 all" > dynamic_printk/modules
      
      Disable all modules:
      
      	$echo "set enabled=0 all" > dynamic_printk/modules
      
      Finally, passing "dynamic_printk" at the command line enables
      debugging for all modules. This mode can be turned off via the above
      disable command.
      
      [gkh: minor cleanups and tweaks to make the build work quietly]
      Signed-off-by: NJason Baron <jbaron@redhat.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
      346e15be
  6. 24 5月, 2008 1 次提交
    • S
      kbuild: create new CFLAGS_REMOVE_(basename).o option · 656ee82c
      Steven Rostedt 提交于
      We currently have a way to add special CFLAGS to code, but we do not have a
      way to remove them if needed.
      
      With the case of ftrace, some files should simply not be profiled. Adding
      the -pg flag to these files is simply a waste, and adding "notrace" to each
      and every function is ugly.
      
      Currently we put in "Makefile turd" [1] to stop the compiler from adding -pg
      to certain files. This was clumsy and awkward.
      
      This patch now adds the revese of CFLAGS_(basename).o with
      CFLAGS_REMOVE_(basename).o.  This allows developers to prevent certain
      CFLAGS from being used to compile files. For example, we can now do
      
      CFLAGS_REMOVE_string.o = -pg
      
      to remove the -pg option from the string.o file in the lib directory.
      
      Note: a space delimited list of options may be added to the REMOVE macro.
      
      [1] - what David Miller called the workaronud to remove -pg
      Signed-off-by: NSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      656ee82c
  7. 29 1月, 2008 1 次提交
    • T
      kbuild: implement modules.order · 551559e1
      Tejun Heo 提交于
      When multiple built-in modules (especially drivers) provide the same
      capability, they're prioritized by link order specified by the order
      listed in Makefile.  This implicit ordering is lost for loadable
      modules.
      
      When driver modules are loaded by udev, what comes first in
      modules.alias file is selected.  However, the order in this file is
      indeterministic (depends on filesystem listing order of installed
      modules).  This causes confusion.
      
      The solution is two-parted.  This patch updates kbuild such that it
      generates and installs modules.order which contains the name of
      modules ordered according to Makefile.  The second part is update to
      depmod such that it generates output files according to this file.
      
      Note that both obj-y and obj-m subdirs can contain modules and
      ordering information between those two are lost from beginning.
      Currently obj-y subdirs are put before obj-m subdirs.
      
      Sam Ravnborg cleaned up Makefile modifications and suggested using awk
      to remove duplicate lines from modules.order instead of using separate
      C program.
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Cc: Bill Nottingham <notting@redhat.com>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Kay Sievers <kay.sievers@vrfy.org>
      Cc: Jon Masters <jonathan@jonmasters.org>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      551559e1
  8. 16 10月, 2007 3 次提交
    • S
      kbuild: introduce ccflags-y, asflags-y and ldflags-y · f77bf014
      Sam Ravnborg 提交于
      Introduce ccflags-y, asflags-y and ldflags-y so we soon can
      deprecate use of EXTRA_CFLAGS, EXTRA_AFLAGS and EXTRA_LDFLAGS.
      This patch does not touch any in-tree users - thats next round.
      Lets get this committed first and then fix the users of the
      soon to be deprecated variants next.
      
      The rationale behind this change is to introduce support for
      makefile fragments like:
      
      ccflags-$(CONFIG_WHATEVER_DEBUG) := -DDEBUG
      
      As a replacement for the uglier:
      ifeq ($(CONFIG_WHATEVER_DEBUG),y)
              EXTRA_CFLAGS := -DDEBUG
      endif
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      f77bf014
    • S
      kbuild: enable 'make CPPFLAGS=...' to add additional options to CPP · 06c5040c
      Sam Ravnborg 提交于
      The variable CPPFLAGS is a wellknown variable and the usage by
      kbuild may result in unexpected behaviour.
      
      This patch replace use of CPPFLAGS with KBUILD_CPPFLAGS all over the
      tree and enabling one to use:
      make CPPFLAGS=...
      to specify additional CPP commandline options.
      
      Patch was tested on following architectures:
      alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k, s390
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      06c5040c
    • S
      kbuild: enable 'make AFLAGS=...' to add additional options to AS · 222d394d
      Sam Ravnborg 提交于
      The variable AFLAGS is a wellknown variable and the usage by
      kbuild may result in unexpected behaviour.
      On top of that several people over time has asked for a way to
      pass in additional flags to gcc.
      
      This patch replace use of AFLAGS with KBUILD_AFLAGS all over
      the tree.
      
      Patch was tested on following architectures:
      alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k, s390
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      222d394d
  9. 15 10月, 2007 1 次提交
    • S
      kbuild: enable 'make CFLAGS=...' to add additional options to CC · a0f97e06
      Sam Ravnborg 提交于
      The variable CFLAGS is a wellknown variable and the usage by
      kbuild may result in unexpected behaviour.
      On top of that several people over time has asked for a way to
      pass in additional flags to gcc.
      
      This patch replace use of CFLAGS with KBUILD_CFLAGS all over the
      tree and enabling one to use:
      make CFLAGS=...
      to specify additional gcc commandline options.
      
      One usecase is when trying to find gcc bugs but other
      use cases has been requested too.
      
      Patch was tested on following architectures:
      alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k
      
      Test was simple to do a defconfig build, apply the patch and check
      that nothing got rebuild.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      a0f97e06
  10. 13 10月, 2007 2 次提交
    • S
      kbuild: kill backward compatibility checks · 836caba7
      Sam Ravnborg 提交于
      These checks has been present for several kernel releases (> 5).
      So lets just get rid of them.
      With this we no longer check for use of:
      EXTRA_TARGETS, O_TARGET, L_TARGET, list-multi, export-objs
      
      There were three remaining in-tree users of O_TARGET in some
      unmaintained sh64 code - mail sent to the maintainer + list.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      836caba7
    • S
      kbuild: fix directory traversal bug · f5fb9765
      Sam Ravnborg 提交于
      Previously kbuild choked over the following:
      obj-y += ../../../arch/i386/kernel/bootflag.o
      
      This has resulted in some rather ugly workarounds in
      current x86_64 tree.
      This patch fixes kbuild to allow the above and enable
      potential cleanups in x86_64 and maybe in other places.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      f5fb9765
  11. 01 7月, 2006 1 次提交
    • S
      kbuild: fix ia64 breakage after introducing make -rR · 5e8d780d
      Sam Ravnborg 提交于
      kbuild used $¤(*F to get filename of target without extension.
      This was used in several places all over kbuild, but introducing
      make -rR broke his for all cases where we specified full path to
      target/prerequsite. It is assumed that make -rR disables old style
      suffix-rules which is why is suddenly failed.
      
      ia64 was impacted by this change because several div* routines in
      arch/ia64/lib are build using explicit paths and then kbuild failed.
      
      Thanks to David Mosberger-Tang <David.Mosberger@acm.org> for an explanation
      what was the root-cause and for testing on ia64.
      
      This patch also fixes two uses of $(*F) in arch/um
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      5e8d780d
  12. 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
  13. 25 6月, 2006 1 次提交
    • 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
  14. 07 4月, 2006 1 次提交
  15. 26 12月, 2005 1 次提交
    • U
      kbuild: set correct KBUILD_MODNAME when using well known kernel symbols as module names · f83b5e32
      Ustyugov Roman 提交于
      This patch fixes a problem when we use well known kernel symbols as module
      names.
      
      For example, if module source name is current.c, idle_stack.c or etc.,
      we have a bad KBUILD_MODNAME value.
      For example, KBUILD_MODNAME will be "get_current()" instead of "current", or
      "(init_thread_union.stack)" instead of "idle_task".
      
      The trick is to define a stringify macro on the commandline - named
      KBUILD_STR for namespace reasons - and then to stringify the module
      name.
      
      There are a few uses of KBUILD_MODNAME throughout the tree but the usage
      is for debug and will not be harmed by this change so left untouched for now.
      
      While at it KBUILD_BASENAME was changed too. Any spinlock usage in the
      unix module would have created wrong section names without it.
      Usage in spinlock.h fixed so it no longer stringify KBUILD_BASENAME.
      
      Original patch from Ustyogov Roman - all bugs introduced by me.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      f83b5e32
  16. 26 7月, 2005 1 次提交
    • S
      kbuild: introduce Kbuild.include · 8ec4b4ff
      Sam Ravnborg 提交于
      Kbuild.include is a placeholder for definitions originally present in
      both the top-level Makefile and scripts/Makefile.build.
      There were a slight difference in the filechk definition, so the most videly
      used version was kept and usr/Makefile was adopted for this syntax.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      ---
      8ec4b4ff
  17. 25 7月, 2005 1 次提交
  18. 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