13 Oct, 2015

1 commit


09 Sep, 2015

1 commit

  • Pull misc kbuild updates from Michal Marek:
    - deb-pkg:
    + module signing fix
    + dtb files are added to the package
    + do not require `hostname -f` to work during build
    + make deb-pkg generates a source package, bindeb-pkg has been
    added to only generate the binary package
    - rpm-pkg packages /lib/modules as well
    - new coccinelle patch and updates to existing ones
    - new stackusage & stackdelta script to collect and compare stack usage
    info (using gcc's -fstack-usage)
    - make tags understands trace_*_rcuidle() macros
    - .gitignore updates, misc cleanups

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild: (27 commits)
    deb-pkg: add source package
    package/Makefile: move source tar creation to a function
    scripts: add stackdelta script
    kbuild: remove *.su files generated by -fstack-usage
    .gitignore: add *.su pattern
    scripts: add stackusage script
    kbuild: avoid listing /lib/modules in kernel spec file
    fallback to hostname in scripts/package/builddeb
    coccinelle: api: extend spatch for dropping unnecessary owner
    deb-pkg: simplify directory creation
    scripts/tags.sh: Include trace_*_rcuidle() in tags
    scripts/package/Makefile: rpmbuild is needed for rpm targets
    Kbuild: Add ID files to .gitignore
    gitignore: Add MIPS vmlinux.32 to the list
    coccinelle: simple_return: Add a blank line
    coccinelle: irqf_oneshot.cocci: Improve the generated commit log
    coccinelle: api: add vma_pages.cocci
    scripts/coccinelle/misc/irqf_oneshot.cocci: Fix grammar
    scripts/coccinelle/misc/semicolon.cocci: Use imperative mood
    coccinelle: simple_open: Use imperative mood
    ...

    Linus Torvalds
     

19 Aug, 2015

1 commit


17 Jun, 2015

1 commit

  • The __cpuinit support was removed several releases ago in 3.11-rc1 with
    commit 22f0a27367742f65130c0fb25ef00f7297e032c1 ("init.h: remove __cpuinit
    sections from the kernel")

    People have had a chance to update their out of tree code, so now we remove
    the no-op stubs to ensure no more new use cases can creep back in.

    Also delete the mention of __cpuinitdata from the tag script.

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

14 Oct, 2014

1 commit

  • Pull misc kbuild updates from Michal Marek:
    "This is the less critical kbuild stuff for v3.18-rc1:

    - make deb-pkg debuginfo fix, ppc64el support and warning fix for
    recent dpkg tools
    - make TAGS fixes
    - new coccinelle patch
    - kbuild documentation improvements"

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    deb-pkg: remove obsolete -isp option to dpkg-gencontrol
    coccinelle: misc: semantic patch to delete overly complex return code processing
    deb-pkg: Add support for powerpc little endian
    builddeb: put the dbg files into the correct directory
    scripts/tags.sh: fix DEFINE_HASHTABLE in emacs case
    scripts/tags.sh: remove *PCGFLAGS regular expressions
    scripts/tags.sh: Don't specify kind-spec for emacs' ctags/etags
    Documentation: kbuild: Improve grammar
    Documentation: kbuild: Remove obsolete dtc_cpp section
    Documentation: kbuild: Improve if_changed documentation
    Documentation: kbuild: Remove obsolete include/asm symlink step

    Linus Torvalds
     

25 Sep, 2014

1 commit

  • This will simplify code when we add new flags.

    v3:
    - Kees pointed out that no_new_privs should never be cleared, so we
    shouldn't define task_clear_no_new_privs(). we define 3 macros instead
    of a single one.

    v2:
    - updated scripts/tags.sh, suggested by Peter

    Cc: Ingo Molnar
    Cc: Miao Xie
    Cc: Tetsuo Handa
    Acked-by: Peter Zijlstra (Intel)
    Acked-by: Kees Cook
    Signed-off-by: Zefan Li
    Signed-off-by: Tejun Heo

    Zefan Li
     

19 Aug, 2014

3 commits

  • The emacs --regex for DEFINE_HASHTABLE produced a warning because of
    an unmatched '\('. Further, the whole entry did not work, because the
    regex needs to match from the beginning of a line, including keywords
    like 'static'. Finally, '\w' should not be used, because it
    stops at underscores which are often part of variable names in C,
    resulting in wrong entries in the tags file.

    Signed-off-by: Dirk Gouders
    Inspired-by: Masatake YAMATO
    Signed-off-by: Michal Marek

    Dirk Gouders
     
  • Commit 0a31bc97c80c3fa8 (mm: memcontrol: rewrite uncharge API)
    removed the macros {TEST,SET,CLEAR,TESTCLEAR}PCFLAG. Remove
    corresponding entries from tags.sh -- in the emacs case they also
    produced warnigs because of unmatched '\('.

    Signed-off-by: Dirk Gouders
    Inspired-by: Masatake YAMATO
    Signed-off-by: Michal Marek

    Dirk Gouders
     
  • Emacs' ctags/etags don't know about kind-spec in --regex and
    produce warnings:

    etags: invalid regexp modifier `v', ignoring
    etags: invalid regexp modifier `/', ignoring

    Fix it by removing kind-spec for the emacs case.

    Signed-off-by: Dirk Gouders
    Inspired-by: Masatake YAMATO
    Tested-by: Masatake YAMATO
    Signed-off-by: Michal Marek

    Dirk Gouders
     

09 Aug, 2014

1 commit


10 Jun, 2014

2 commits

  • Signed-off-by: Masahiro Yamada
    Signed-off-by: Michal Marek

    Masahiro Yamada
     
  • Since commit 22d651dcef536c75f75537290bf3da5038e68b6b ('selftests/powerpc:
    Import Anton's memcpy / copy_tofrom_user tests'), some source files in the
    tree appear as symlink.
    Until commit 8c38a5328af8080bc69a25b3e4e144b03eeea95e ('scripts/tags.sh:
    ignore code of user space tools'), those symlinks made cscope report some
    warnings:

    $ make ALLSOURCE_ARCHS=all O=./obj-cscope/ cscope
    GEN cscope
    cscope: cannot find
    file .../tools/testing/selftests/powerpc/copyloops/copyuser_power7.S
    cscope: cannot find
    file .../tools/testing/selftests/powerpc/copyloops/memcpy_64.S
    cscope: cannot find
    file .../tools/testing/selftests/powerpc/copyloops/memcpy_power7.S
    cscope: cannot find
    file .../tools/testing/selftests/powerpc/copyloops/copyuser_64.S

    In order to prevent the same kind of warnings to be triggered by future
    addition of symlinks, the best option is to ignore all symlinks when
    building the file list to be processed by cscope (and other tools
    supported by scripts/tags.sh).

    Ignoring symlinks won't hide source files from cscope (and others) as the
    target of these symlinks already appear somewhere else in the tree, and,
    as such, should be processed by cscope (or others).

    Note that, cscope, when used with -R option to make it find the files to
    process by itself, already skip symlinks: it's not expected that cscope
    access source files through symlink.

    On top of commit 8c38a5328af8080bc69a25b3e4e144b03eeea95e ('scripts/tags.sh:
    ignore code of user space tools'), scripts/tags.sh output from
    "make cscope tags TAGS" is the same with and without this patch: it doesn't
    seems to introduce any regression (on Fedora 20).

    Link: http://lkml.kernel.org/r/1396530975.4361.28.camel@localhost.localdomain
    Link: http://mid.gmane.org/534312F8.5090609@t-online.de
    Cc: Michael Ellerman
    Cc: Anton Blanchard
    Cc: Benjamin Herrenschmidt
    Cc: Hans-Bernhard Bröker ,
    Cc: Hans-Bernhard Broeker ,
    Cc: Neil Horman
    Cc: Neil Horman
    Cc: Gerhard Sittig
    Cc: Konstantin Khlebnikov
    Signed-off-by: Yann Droneaud
    Signed-off-by: Michal Marek

    Yann Droneaud
     

14 May, 2014

1 commit

  • Currently, while using ctags to read code, we would get stumbled on
    PageCgroup* symbols: no definition found. And it is quite dull to
    manually dig it out.

    This patch adds regular expression replacement pattern for such symbols,
    like what have done for the PageXXX flag. It will teach ctags to find
    out the definition for us.

    Signed-off-by: Jianyu Zhan
    Signed-off-by: Michal Marek

    Jianyu Zhan
     

24 Apr, 2014

1 commit


17 Apr, 2014

1 commit


06 Feb, 2014

1 commit

  • CONFIG_MODVERSIONS=y results in a .mod.c for every compiled file in the
    kernel. Issuing a 'make cscope' on a compiled kernel tree results in
    the cscope files containing *.mod.c files.

    [prarit@prarit linux]# make cscope
    [prarit@prarit linux]# cat cscope.files | grep mod.c | wc -l
    4807

    These files are not useful for cscope and should be ignored. For example,

    # line filename / context / line
    1 105 arch/x86/kvm/kvm-intel.mod.c <>
    { 0x618911fc, __VMLINUX_SYMBOL_STR(numa_node) },
    2 508 drivers/block/mtip32xx/mtip32xx.h <>
    int numa_node;
    3 55 drivers/block/mtip32xx/mtip32xx.mod.c <>
    { 0x618911fc, __VMLINUX_SYMBOL_STR(numa_node) },
    4 37 drivers/cpufreq/acpi-cpufreq.mod.c <>
    { 0x618911fc, __VMLINUX_SYMBOL_STR(numa_node) },

    Add an export to RCS_FIND_IGNORE so it can be used in scripts/tags.sh
    and add explicitly ignore *.mod.c files.

    Signed-off-by: Prarit Bhargava
    Cc: Andrew Morton
    Cc: Kirill Tkhai
    Cc: Michael Opdenacker
    Cc: Rusty Russell
    Signed-off-by: Michal Marek

    Prarit Bhargava
     

08 Nov, 2013

1 commit


23 Oct, 2013

1 commit


27 Mar, 2013

1 commit


28 Feb, 2013

1 commit

  • Pull misc non-critical kbuild changes from Michal Marek:

    - Fix for make TAGS

    - Fix for make rpm

    - Some new coccinelle semantic patches

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    scripts/coccinelle: find constant additions that could be bit ors
    coccicheck: Allow to show the executed command line
    coccicheck: Allow the user to give a V= (verbose) argument
    scripts/coccinelle/misc/memcpy-assign.cocci: Replace memcpy with struct assignment
    kbuild: clear KBUILD_SRC when calling 'make' in RPM spec
    scripts/coccinelle/misc/semicolon.cocci: Add unneeded semicolon test
    scripts/tags.sh: Fix regex syntax for etags

    Linus Torvalds
     

22 Feb, 2013

1 commit


14 Jan, 2013

1 commit


11 Dec, 2012

2 commits

  • We usually have interst in compiled files only,
    because they are strongly related to individual's work.
    Current tags.sh can't select compiled files, so support it.

    We can use this functionality like below.
    "make cscope O=. SRCARCH=xxxx COMPILED_SOURCE=compiled"

    It must be executed after building the kernel.

    Signed-off-by: Joonsoo Kim
    Signed-off-by: Michal Marek

    Joonsoo Kim
     
  • Current tags.sh doesn't handle subarch for ARM.
    There are too many subarch on ARM, it is hard that we locate some
    functions which are defined in every subarch with tags util family.
    Therefore support subarch for removing this unconvenience.

    We can use ARM subarch functionality like below.
    "make cscope O=. SRCARCH=arm SUBARCH=xxx"

    Signed-off-by: Joonsoo Kim
    Signed-off-by: Michal Marek

    Joonsoo Kim
     

31 Aug, 2012

1 commit


26 Jul, 2012

1 commit


02 Apr, 2012

1 commit

  • When $remove_structs is empty a test for empty string will turn
    into test -n with no arguments meaning true. Add quotes so an
    empty string is tested and so that make cscope works again.

    Reported-and-tested-by: Jike Song
    Reported-by: Prarit Bhargava
    Acked-by: Yang Bai
    Signed-off-by: Stephen Boyd
    Signed-off-by: Michal Marek

    Stephen Boyd
     

27 Mar, 2012

1 commit


26 Mar, 2012

1 commit


19 Dec, 2011

1 commit


15 Nov, 2011

1 commit

  • It takes a while to find the macro-magically defined Page*()
    functions defined in include/linux/page-flags.h if you're new to
    the kernel. Add some magic to the tags script to transform these
    macros into the actual functions they are, so that tag jumping in
    the mm code is a bit easier.

    Signed-off-by: Stephen Boyd
    Signed-off-by: Michal Marek

    Stephen Boyd
     

31 Aug, 2011

1 commit

  • On PowerPC we use _GLOBAL throughout the assembly to define symbols, but
    currently these symbols are missing from the tags generated with
    ARCH=powerpc make tags. This patch modifies the tags.sh script to
    recognise _GLOBAL(.*) so that these symbols will be in the tags.

    This is almost (but not quite) PowerPC specific and this change should
    not affect anyone else:

    $ git grep -E '^_GLOBAL\(([^)]*)\).*' |sed 's/^\([^/]*\/[^/]*\)\/.*$/\1/'|uniq -c
    627 arch/powerpc
    2 arch/um

    Signed-off-by: Ian Munsie
    Signed-off-by: Michal Marek

    Ian Munsie
     

26 May, 2011

2 commits

  • Seems that Peter Zijlstra treats us emacs users as second class
    citizens and the commit:

    commit 15664125f7cadcb6d725cb2d9b90f9715397848d
    Author: Peter Zijlstra
    scripts/tags.sh: Add magic for trace-events

    only updated ctags (for vim) and did not do the work to let us
    lowly emacs users benefit from such a change.

    Cc: Peter Zijlstra
    Signed-off-by: Steven Rostedt

    Steven Rostedt
     
  • The regex to handle DEFINE_EVENT() should not be the same as
    the TRACE_EVENT() as the first parameter in DEFINE_EVENT is the
    template name, not the event name. We need the second parameter
    as that is what the trace_... will use.

    Tested-by: Peter Zijlstra
    Signed-off-by: Steven Rostedt

    Steven Rostedt
     

21 Mar, 2011

1 commit


15 Jan, 2011

1 commit


11 Jan, 2011

1 commit

  • * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    Documentation/kbuild: add info that 'choice' can have a symbol name
    kbuild: add numeric --set-val option to scripts/config
    headers_check: Fix warning text
    headers_check: better search for functions in headers
    scripts/coccinelle: update for compatability with Coccinelle 0.2.4
    tags: put function prototypes back!
    Kconfig: fix single letter command in scripts/config
    gitignore: add scripts/recordmcount

    Linus Torvalds
     

02 Dec, 2010

2 commits

  • Make tags find the trace-event definitions

    Acked-by: WANG Cong
    Signed-off-by: Peter Zijlstra
    LKML-Reference:
    Signed-off-by: Steven Rostedt

    Peter Zijlstra
     
  • Commit 7db86dc (ctags: usability fix) removed function prototypes from
    tags file claiming "It makes no real sense to include function
    prototypes".
    But it is useful for quickly determining which header file developer
    needs to include to fix compilation.

    Now if someone wants to remove forward declarations (which I agree are
    baggage), write a postprocessing script.

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Uwe Kleine-König
    Signed-off-by: Michal Marek

    Uwe Kleine-König
     

08 Mar, 2010

1 commit

  • This reverts commit eb8f844c0a41c4529a7d06b7801296eca9ae67aa. Ian
    Campbell writes:
    > I keep my kernel source tree on a more powerful build box where I run my
    > builds etc (including "make cscope") but run my editor from my
    > workstation with an NFS mount to the source. This worked fine for me
    > using relative paths for cscope. Using absolute paths in cscope breaks
    > this previously working setup because the root path is not the same on
    > both systems. I guess this is similar to moving the source tree around.
    >
    > Without wanting to start a flamewar it really sounds to me like we are
    > working around a vim (or cscope) bug here, emacs with cscope bindings
    > works fine in this configuration.

    Given that absolute paths can be forced by make O=. cscope, change the
    default back to relative paths.

    Ian Campbell
    Cc: Daniel Vetter
    Signed-off-by: Michal Marek

    Michal Marek