aboutsummaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)AuthorFilesLines
2010-10-19Merge branch 'devel-stable' into develRussell King4-7/+5
2010-10-18Merge branches 'at91', 'dcache', 'ftrace', 'hwbpt', 'misc', 'mmci', 's3c', ↵Russell King4-5/+183
'st-ux' and 'unwind' into devel
2010-10-18ftrace: Remove recursion between recordmcount and scripts/mod/emptySteven Rostedt1-1/+7
When DYNAMIC_FTRACE is enabled and we use the C version of recordmcount, all objects are run through the recordmcount program to create a separate section that stores all the callers of mcount. The build process has a special file: scripts/mod/empty.o. This is built from empty.c which is literally an empty file (except for a single comment). This file is used to find information about the target elf format, like endianness and word size. The problem comes up when we need to build recordmcount. The build process requires that empty.o is built first. The build rules for empty.o will try to execute recordmcount on the empty.o file. We get an error that recordmcount does not exist. To avoid this recursion, the build file will skip running recordmcount if the file that it is building is script/mod/empty.o. [ extra comment Suggested-by: Sam Ravnborg <[email protected]> ] Reported-by: Ingo Molnar <[email protected]> Tested-by: Ingo Molnar <[email protected]> Cc: Michal Marek <[email protected]> Cc: [email protected] Signed-off-by: Steven Rostedt <[email protected]>
2010-10-15ftrace: Use objtree for C version of recordmcountSteven Rostedt1-1/+1
The C version of recordmcount is compiled to a binary, which will end up located in the objtree. If the kernel is built with O=path, the srctree will not include the binary recordmcount caller. Cc: Michal Marek <[email protected]> Cc: [email protected] Signed-off-by: Steven Rostedt <[email protected]>
2010-10-15ftrace: Do not process kernel/trace/ftrace.o with C recordmcount programSteven Rostedt1-2/+20
The file kernel/trace/ftrace.c references the mcount() call to convert the mcount() callers to nops. But because it references mcount(), the mcount() address is placed in the relocation table. The C version of recordmcount reads the relocation table of all object files, and it will add all references to mcount to the __mcount_loc table that is used to find the places that call mcount() and change the call to a nop. When recordmcount finds the mcount reference in kernel/trace/ftrace.o, it saves that location even though the code is not a call, but references mcount as data. On boot up, when all calls are converted to nops, the code has a safety check to determine what op code it is actually replacing before it replaces it. If that op code at the address does not match, then a warning is printed and the function tracer is disabled. The reference to mcount in ftrace.c, causes this warning to trigger, since the reference is not a call to mcount(). The ftrace.c file is not compiled with the -pg flag, so no calls to mcount() should be expected. This patch simply makes recordmcount.c skip the kernel/trace/ftrace.c file. This was the same solution used by the perl version of recordmcount. Reported-by: Ingo Molnar <[email protected]> Cc: John Reiser <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>
2010-10-14ftrace: Remove duplicate code for 64 and 32 bit in recordmcount.cSteven Rostedt2-544/+370
The elf reader for recordmcount.c had duplicate functions for both 32 bit and 64 bit elf handling. This was due to the need of using the 32 and 64 bit elf structures. This patch consolidates the two by using macros to define the 32 and 64 bit names in a recordmcount.h file, and then by just defining a RECORD_MCOUNT_64 macro and including recordmcount.h twice we create the funtions for both the 32 bit version as well as the 64 bit version using one code source. Cc: John Reiser <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>
2010-10-14ftrace/x86: Add support for C version of recordmcountSteven Rostedt2-0/+5
This patch adds the support for the C version of recordmcount and compile times show ~ 12% improvement. After verifying this works, other archs can add: HAVE_C_MCOUNT_RECORD in its Kconfig and it will use the C version of recordmcount instead of the perl version. Cc: <[email protected]> Cc: Michal Marek <[email protected]> Cc: [email protected] Cc: John Reiser <[email protected]> Signed-off-by: Steven Rostedt <[email protected]>
2010-10-14ftrace: Add C version of recordmcount compile time codeJohn Reiser1-0/+885
Currently, the mcount callers are found with a perl script that does an objdump on every file in the kernel. This is a C version of that same code which should increase the performance time of compiling the kernel with dynamic ftrace enabled. Signed-off-by: John Reiser <[email protected]> [ Updated the code to include .text.unlikely section as well as changing the format to follow Linux coding style. ] Signed-off-by: Steven Rostedt <[email protected]>
2010-10-14scripts/package: don't break if %{_smp_mflags} isn't setNishanth Aravamudan1-1/+1
Same fix as in 13797b77d419fc1b16eebf2993bf7b5cea65f0bf is needed for the "new" line invoking _smp_mflags for modules_install. Without the fix, `make binrpm-pkg` fails with: + make '%{_smp_mflags}' KBUILD_SRC= modules_install make[2]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. make[2]: *** No rule to make target `%{_smp_mflags}'. Stop. error: Bad exit status from /var/tmp/rpm-tmp.8S9B9e (%install) Signed-off-by: Nishanth Aravamudan <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-10-13Coccinelle: Use the -no_show_diff option for org and report modeNicolas Palix1-4/+6
This allows to write the semantic patches with code sharing for the matching parts. Signed-off-by: Nicolas Palix <[email protected]> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-10-13Coccinelle: Add a new mode named 'chain'Nicolas Palix1-5/+11
spatch now returns -1 when a virtual rule (given with -D on the command line) is not defined in the semantic patch. Using this spatch feature, coccicheck is now tries several modes by default, in the order: patch, report, context, org Signed-off-by: Nicolas Palix <[email protected]> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-10-13Coccinelle: Use new comment format to explain kfree.cocciNicolas Palix1-4/+5
Use new comment format to separate proposed commit message and information about generated false positives Signed-off-by: Nicolas Palix <[email protected]> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-10-13Coccinelle: Improve user information with a new kind of commentNicolas Palix1-3/+11
Improve user information with a new kind of comment about semantic patch output. Fix spelling. Signed-off-by: Nicolas Palix <[email protected]> Signed-off-by: Julia Lawall <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-10-12Revert "kconfig: Temporarily disable dependency warnings"Michal Marek1-2/+0
This reverts commit 71ebc01, which was a 2.6.36-only stopgap solution. Signed-off-by: Michal Marek <[email protected]>
2010-10-12Merge branch 'kbuild/rc-fixes' into kbuild/kconfigMichal Marek29-100/+972
We need to revert the temporary hack in 71ebc01, hence the merge.
2010-10-11Merge branch 'rc-fixes' of ↵Linus Torvalds4-7/+5
git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: kbuild: fix oldnoconfig to do the right thing kconfig: Temporarily disable dependency warnings kconfig: delay symbol direct dependency initialization
2010-10-09kbuild: fix oldnoconfig to do the right thingKyle McMartin1-1/+1
Commit 861b4ea4 broke oldnoconfig when removed the oldnoconfig checks on if (input_mode == nonint_oldconfig || input_mode == oldnoconfig) { if (input_mode == nonint_oldconfig && sym->name && !sym_is_choice_value(sym)) { to avoid oldnoconfig chugging through the else stanza. Fix that to restore expected behaviour (which I've confirmed in the Fedora kernel build that the configs end up looking the same.) Signed-off-by: Kyle McMartin <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-10-09kconfig: Temporarily disable dependency warningsMichal Marek1-0/+2
After fixing a use-after-free bug in kconfig, a 'make defconfig' or 'make allmodconfig' fills the screen with warnings that were not detected before. Given that we are close to the release now, disable the warnings temporarily and deal with them after 2.6.36. Signed-off-by: Michal Marek <[email protected]>
2010-10-04kconfig: Use PATH_MAX instead of 128 for path buffer sizes.Will Newton1-2/+2
This prevents the buffers being overflowed when using a config file with a long name. PATH_MAX is used elsewhere in the same file, so use it here as well. Signed-off-by: Will Newton <[email protected]> Acked-by: WANG Cong <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-10-04kconfig: delay symbol direct dependency initializationArnaud Lacombe2-6/+2
This fixes the use-after-free and associated crash in kconfig introduced in commit 246cf9c26bf11f2bffbecea6e5bd222eee7b1df8. Signed-off-by: Arnaud Lacombe <[email protected]> Acked-by: Catalin Marinas <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-09-30kconfig: Fix realloc usage()Michal Marek1-1/+1
Reported-by: Stephen Rothwell <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-09-30kconfig: Propagate constMichal Marek1-6/+9
Commit 2e7a091 made struct file->name a const char*, but forgot to constify all users of it. Reported-by: Stephen Rothwell <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-09-30kconfig: Don't go out from read config loop when you read new symbolNaohiro Aota1-2/+3
commit 8baefd30b5b0101aa07aa75da44a9eee881eed28 of linux-next replaced a `switch()' statement with some `if()' statements, but left `break's in the `switch()' statement untouched. This cause read config loop to exit and so "make oldconfig" is not much usable (see below). > $ make oldconfig ><snip> > scripts/kconfig/conf --oldconfig Kconfig > # > # using defaults found in /boot/config-2.6.34-ccs-r1 > # > * > * Restart config... > * > * > * General setup > * > Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [N/y/?] (NEW) (I've already have "CONFIG_EXPERIMENTAL=y" in the old config file. But that's not read here.) This patch should fix this problem. Signed-off-by: Naohiro Aota <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-09-29scripts/kallsyms: Enable error messages while hush up unnecessary warningsJean Sacren1-6/+2
As no error was handled, we wouldn't be able to know when an error does occur. The fix preserves error messages while it doesn't let unnecessary compiling warnings show up. Signed-off-by: Jean Sacren <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-09-27Merge branch 'kbuild/kconfig/kbuild-generic-v7' of ↵Michal Marek17-423/+488
http://github.com/lacombar/linux-2.6 into kbuild/kconfig * 'kbuild/kconfig/kbuild-generic-v7' of http://github.com/lacombar/linux-2.6: kbuild: migrate all arch to the kconfig mainmenu upgrade kconfig: expand file names kconfig: use the file's name of sourced file kconfig: constify file name kconfig: don't emit warning upon rootmenu's prompt redefinition kconfig: replace KERNELVERSION usage by the mainmenu's prompt kconfig: delay gconf window initialization kconfig: expand by default the rootmenu's prompt kconfig: add a symbol string expansion helper kconfig: regen parser kconfig: implement the `mainmenu' directive kconfig: allow PACKAGE to be defined on the compiler's command-line kconfig: rephrase help texts/comments not to include the package name kconfig: allow build-time definition of the internal config prefix kconfig: rephrase help text not to mention the internal prefix kconfig: replace a `switch()' statement by a more flexible `if()' statement
2010-09-24jump label: Fix GCC feature check when distcc is usedIngo Molnar1-1/+1
The following build bug occurs on distcc builds: CC arch/x86/kernel/asm-offsets.s In file included from include/linux/module.h:24, from include/linux/crypto.h:22, from arch/x86/kernel/asm-offsets_64.c:9, from arch/x86/kernel/asm-offsets.c:5: include/trace/events/module.h: In function 'trace_module_load': include/trace/events/module.h:18: error: expected '(' before 'goto' include/trace/events/module.h:18: error: expected identifier or '*' before '(' token It triggers because distcc is invoked by turning $CC into "distcc gcc", but gcc-goto.sh check script was using $1 not $@ to expand parameters. Cc: Jason Baron <[email protected]> Cc: Steven Rostedt <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Ingo Molnar <[email protected]>
2010-09-22jump label: Convert dynamic debug to use jump labelsJason Baron3-75/+2
Convert the 'dynamic debug' infrastructure to use jump labels. Signed-off-by: Jason Baron <[email protected]> LKML-Reference: <b77627358cea3e27d7be4386f45f66219afb8452.1284733808.git.jbaron@redhat.com> Signed-off-by: Steven Rostedt <[email protected]>
2010-09-22jump label: Base patch for jump labelJason Baron1-0/+5
base patch to implement 'jump labeling'. Based on a new 'asm goto' inline assembly gcc mechanism, we can now branch to labels from an 'asm goto' statment. This allows us to create a 'no-op' fastpath, which can subsequently be patched with a jump to the slowpath code. This is useful for code which might be rarely used, but which we'd like to be able to call, if needed. Tracepoints are the current usecase that these are being implemented for. Acked-by: David S. Miller <[email protected]> Signed-off-by: Jason Baron <[email protected]> LKML-Reference: <ee8b3595967989fdaf84e698dc7447d315ce972a.1284733808.git.jbaron@redhat.com> [ cleaned up some formating ] Signed-off-by: Steven Rostedt <[email protected]>
2010-09-20kconfig: fix menuconfig on debian lennyJunio C Hamano1-0/+2
In 60f33b8 (kconfig: get rid of stray a.o, support ncursesw, 2006-01-15), support to link menuconfig with ncursesw library was added. To compute the linker command option -l, we check "libncursesw.{so,a,dylib}" to allow ncursesw to be used as a replacement ncurses. However, when checking what header file to include, we do not check /usr/include/ncursesw directory. Add /usr/include/ncursesw to the list of directories that are checked. With this patch, on my Debian Lenny box with libncursesw5-dev package but not libncurses5-dev package, I can say "make menuconfig". Signed-off-by: Junio C Hamano <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-09-19kbuild: migrate all arch to the kconfig mainmenu upgradeArnaud Lacombe1-1/+1
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: expand file namesArnaud Lacombe1-2/+5
This will allow to use the following construct in source files: config FOO string default "foo" source "$FOO/Kconfig" Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: use the file's name of sourced fileArnaud Lacombe1-2/+3
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: constify file nameArnaud Lacombe3-3/+3
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: don't emit warning upon rootmenu's prompt redefinitionArnaud Lacombe1-1/+1
This silences the warning printed upon prompt redefinition for the rootmenu. We will encounter this redefinition when a "mainmenu" statement is specified and override the default prompt. Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: replace KERNELVERSION usage by the mainmenu's promptArnaud Lacombe5-26/+11
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: delay gconf window initializationArnaud Lacombe1-6/+6
Delay the window initialization to let the rootmenu's prompt be initialized as it will be used to get the window's title. Signed-off-by: Arnaud Lacombe <[email protected]>
2010-09-19kconfig: expand by default the rootmenu's promptArnaud Lacombe1-0/+4
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: add a symbol string expansion helperArnaud Lacombe2-0/+50
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: regen parserArnaud Lacombe2-267/+287
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: implement the `mainmenu' directiveArnaud Lacombe1-3/+11
If specified, the directive must be placed at the top of the Kconfig file. We need to change the grammar to make the mainmenu directive set the `rootmenu' prompt. This reflect how menu_add_prompt() works internally, ie. set the prompt of the `current_entry', pointing originally to `rootmenu'. Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: allow PACKAGE to be defined on the compiler's command-lineArnaud Lacombe1-0/+3
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: rephrase help texts/comments not to include the package nameArnaud Lacombe6-54/+45
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Randy Dunlap <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: allow build-time definition of the internal config prefixArnaud Lacombe6-34/+43
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: rephrase help text not to mention the internal prefixArnaud Lacombe2-11/+11
Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-19kconfig: replace a `switch()' statement by a more flexible `if()' statementArnaud Lacombe1-14/+5
With the upcoming dynamical configuration prefix, we can no longer assume that the prefix will start by a 'C'. As such, we can no longer hardcode this value in the `case ...:', so replace the `switch() { ... }' statement by a more flexible 'if () { ... }' statement. Signed-off-by: Arnaud Lacombe <[email protected]> Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Michal Marek <[email protected]>
2010-09-17scripts/kconfig/gconf.glade Update broken web addresses.Justin P. Mattock1-1/+0
As discussed, remove the DOCTYPE declaration since libglade validates the file against itself.. Signed-off-by: Justin P. Mattock <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-09-13Merge branch 'kbuild/clean' into kbuild/kbuildMichal Marek1-0/+2
2010-09-13kconfig: Simplify Makefile for xconfigMichal Marek1-2/+2
Signed-off-by: Michal Marek <[email protected]>
2010-09-13Fix QT4 moc, cflags libs detection on dual QT3/Qt4 systemsAlexander Stein1-6/+4
On system with QT3 and QT4 qmake in PATH may be from QT3. So we use pkg-config for proper QT4 detection. By reqesting cflags and libs for either QtCore, QtGui and QtSupport include dirs and libs get listed several times, but so we won't mis anything Signed-off-by: Alexander Stein <[email protected]> Acked-by: Randy Dunlap <[email protected]> Signed-off-by: Michal Marek <[email protected]>
2010-09-13nconfig: Fix help for choice menusStephen Boyd1-0/+2
When getting the help for a choice menu with a help section (for example the "Choose SLAB allocator" menu) nconfig pops up a window with nothing inside it. This is due to show_help() passing an empty string to show_scroll_win()'s 3rd argument. The option really does have help though, but it isn't a config symbol, so just add the help text for the option, and don't try to add anything else like the config option name. Signed-off-by: Stephen Boyd <[email protected]> Acked-by: Nir Tzachar <[email protected]> Signed-off-by: Michal Marek <[email protected]>