24 Dec, 2007
1 commit
-
Currently when using KCONFIG_ALLCONFIG with randconfig the choice options
are clobbered. As recommended by Roman, this adds an is_new test to see
whether to select a new option or obey the existing one.This is a resend of the earlier patch a couple of weeks ago, since there
was no reply. Original thread is at http://lkml.org/lkml/2007/11/28/94Signed-off-by: Paul Mundt
Cc: Roman Zippel
Cc: Sam Ravnborg
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
18 Dec, 2007
1 commit
-
bloat-o-meter assumes that a '.' anywhere in a symbol's name means that it
is static and prepends 'static.' to the first part of the symbol name,
discarding the portion of the name that follows the '.'. However, the
names of function entry points begin with '.' in the ppc64 ABI. This
causes all function text size changes to be accounted to a single 'static.'
entry in the output when comparing ppc64 kernels.Change getsizes() to ignore the first character of the symbol name when
searching for '.'.Signed-off-by: Nathan Lynch
Cc: Matt Mackall
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
14 Dec, 2007
1 commit
-
The commit:
18c32dac75b187d1a4e858f3cfdf03e844129f5e "kbuild: fix
building with O=.. options"
disabled the creation of a Makefile in a new O=... directory. Restore it.Signed-off-by: Guillaume Chazarain
Signed-off-by: Sam Ravnborg
09 Dec, 2007
1 commit
-
The check introduced in commit:
4f1127e204377cbd2a56d112d323466f668e8334 "kbuild: fix
infinite make recursion"caused certain external modules not to build and
also caused 'make targz-pkg' to fail.
This is a minimal fix so we revert to previous
behaviour - but we do not overwrite the Makefile
in the top-level directory.Signed-off-by: Sam Ravnborg
Tested-by: Jay Cliburn
Cc: Jay Cliburn
30 Nov, 2007
1 commit
-
This version brings a new terse output mode as well as many improvements to
the unary detection and bare type regcognition. It also brings the usual
updates for false positives, though these seem to be slowing markedly
now that the unary detector is no longer just putting its finger in the
air and guessing. Of note:- new --terse mode producing a single line per report
- loosening of the block brace checks
- new checks for enum/union/struch brace placements
- hugely expanded "bare type" detection
- checks for inline usage
- better handling of already open comment blocks
- handle patches which introduce or remove lines without newlinesAndy Whitcroft (19):
Version: 0.12
style fixes as spotted by checkpatch
add a --terse options of a single line of output per report
block brace checks should only apply for single line blocks
all new bare type detector
check spacing for open braces with enum, union and struct
check for LINUX_VERSION_CODE
macros definition bracketing checks need to ignore -ve context
clean up the mail-back mode, -q et al
expand possible type matching to declarations
allow const and sparse annotations on possible types
handle possible types as regular types everywhere
prefer plain inline over __inline__ and __inline
all new open comment detection
fix up conditional extraction for if assignment checks
add const to the possible type matcher
unary checks: a for loop is a conditional too
possible types: detect function pointer definitions
handle missind newlines at end of file, report additionSigned-off-by: Andy Whitcroft
Acked-by: Ingo Molnar
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
18 Nov, 2007
1 commit
-
Simplify "make ARCH=x86" and fix kconfig so we again can set 64BIT in
all.config.For a fix the diffstat is nice:
6 files changed, 3 insertions(+), 36 deletions(-)The patch reverts these commits:
- 0f855aa64b3f63d35a891510cf7db932a435c116 ("kconfig: add helper to set
config symbol from environment variable")
- 2a113281f5cd2febbab21a93c8943f8d3eece4d3 ("kconfig: use $K64BIT to
set 64BIT with all*config targets")Roman Zippel pointed out that kconfig supported string compares so
the additional complexity introduced by the above two patches were
not needed.With this patch we have following behaviour:
# make {allno,allyes,allmod,rand}config [ARCH=...]
option \ host arch | 32bit | 64bit
=====================================================
./. | 32bit | 64bit
ARCH=x86 | 32bit | 32bit
ARCH=i386 | 32bit | 32bit
ARCH=x86_64 | 64bit | 64bitThe general rule are that ARCH= and native architecture takes
precedence over the configuration.So make ARCH=i386 [whatever] will always build a 32-bit kernel
no matter what the configuration says. The configuration will
be updated to 32-bit if it was configured to 64-bit and the
other way around.This behaviour is consistent with previous behaviour so no
suprises here.make ARCH=x86 will per default result in a 32-bit kernel but as
the only ARCH= value x86 allow the user to select between 32-bit
and 64-bit using menuconfig.Signed-off-by: Sam Ravnborg
Cc: Roman Zippel
Cc: Andreas Herrmann
Cc: Thomas Gleixner
Cc: Ingo Molnar
Cc: "H. Peter Anvin"
Signed-off-by: Linus Torvalds
13 Nov, 2007
4 commits
-
After unification of the Kconfig files and
introducing K64BIT support in kconfig
it required only trivial changes to enable
"make ARCH=x86".With this patch you can build for x86_64 in several ways:
1) make ARCH=x86_64
2) make ARCH=x86 K64BIT=y
3) make ARCH=x86 menuconfig
=> select 64-bitLikewise for i386 with the addition that
i386 is default is you say ARCH=x86.Signed-off-by: Sam Ravnborg
Cc: Thomas Gleixner
Cc: Ingo Molnar
Cc: "H. Peter Anvin" -
The variable K64BIT can now be used to select the
value of CONFIG_64BIT.This is for example useful for powerpc to generate
allmodconfig for both bit sizes - like this:
make ARCH=powerpc K64BIT=y
make ARCH=powerpc K64BIT=nTo use this the Kconfig file must use "64BIT" as the
config value to select between 32 and 64 bit.Signed-off-by: Sam Ravnborg
Cc: Roman Zippel -
Add conf_set_env_sym() that can set an already defined symbol
based on the value of an environment variable.Unknown symbols are silently ignored.
A warning is printed if the value of the environment variable
is unexpected.Signed-off-by: Sam Ravnborg
Cc: Roman Zippel -
This patch introduce no functional changes.
Signed-off-by: Sam Ravnborg
Cc: Roman Zippel
26 Oct, 2007
3 commits
-
After a small change in kconfig Makefile we could
move all x86 Kconfig files to x86 directory.Signed-off-by: Sam Ravnborg
-
Do not hardcode the arch/$(ARCH)/Kconfig name all over
Signed-off-by: Sam Ravnborg
-
With some small changes to kconfig makefile we can now
locate the defconfig files for i386 and x86_64 in
the configs/ subdirectory under x86.
make ARCH=i386 defconfig and make defconfig
works as expected also after this change.
But arch maintainers shall now update a defconfig file in
the configs/ directory.Signed-off-by: Sam Ravnborg
23 Oct, 2007
1 commit
-
This adds the logic to convert the virtio ids into module aliases, and
includes a modalias entry in sysfs and the env var to make probing work.Signed-off-by: Rusty Russell
21 Oct, 2007
3 commits
-
* 'master' of hera.kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6: (29 commits)
[PARISC] fix uninitialized variable warning in asm/rtc.h
[PARISC] Port checkstack.pl to parisc
[PARISC] Make palo target work when $obj != $src
[PARISC] Zap unused variable warnings in pci.c
[PARISC] Fix tests in palo target
[PARISC] Fix palo target
[PARISC] Restore palo target
[PARISC] Attempt to clean up parisc/Makefile
[PARISC] Fix infinite loop in /proc/iomem
[PARISC] Quiet sysfs_create_link __must_check warnings in pdc_stable
[PARISC] Squelch pci_enable_device __must_check warning in superio
[PARISC] Kill off broken irqstack code
[PARISC] Remove hardcoded uses of PAGE_SIZE
[PARISC] Clean up pointless ASM_PAGE_SIZE_DIV use
[PARISC] Kill off the last vestiges of ASM_PAGE_SIZE
[PARISC] Kill off ASM_PAGE_SIZE use
[PARISC] Beautify parisc vmlinux.lds.S
[PARISC] Clean up a resource_size_t warning in sba_iommu
[PARISC] Kill incorrect cast warning in unwinder
[PARISC] Kill zone_to_nid printk warning
...Fixed trivial conflict in include/asm-parisc/tlbflush.h manually
-
Signed-off-by: Kyle McMartin
-
Put kernel version info on title bar in xconfig (qconf) instead of
defaulting to "qconf".Signed-off-by: Randy Dunlap
Signed-off-by: Sam Ravnborg
20 Oct, 2007
4 commits
-
This reverts commit a5bf3d891a6a0fb5aa122792d965e3774108b923.
David Brownell notes that this causes a regression visible in the
drivers/usb/gadget Kconfig file:"That Kconfig hasn't changed (other than adding new drivers), and it's
worked that way for several years now ... so the issue seems to be
changes in menuconfig/kconfig/etc semantics.The issue is that when USB_GADGET=m, it's no longer possible to
configure peripheral controller drivers as modules ... the
controller drivers can now only be configured for static linkage.It should be making a choice of one of the controller drivers which
could work on the target system, and allow that driver to be linked
either as a module (ok iff USB_GADGET=m) or statically."Reverting this commit resolves the problem, and also fixes a second
problem that David noticed: various dependent options couldn't be enabled.Tested-and-reported-by: David Brownell
Cc: Randy Dunlap
Cc: Jan Beulich ,
Cc: Andrew Morton ,
Cc: Sam Ravnborg ,
Cc: Roman Zippel
Signed-off-by: Linus Torvalds -
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:
kbuild: fix first module build
kconfig: update kconfig-language text
kbuild: introduce cc-cross-prefix
kbuild: disable depmod in cross-compile kernel build
kbuild: make deb-pkg - add 'Provides:' line
kconfig: comment typo in scripts/kconfig/Makefile.
kbuild: stop docproc segfaulting when SRCTREE isn't set.
kbuild: modpost problem when symbols move from one module to another
kbuild: cscope - filter out .tmp_* in find_sources
kbuild: mailing list has moved
kbuild: check asm symlink when building a kernel -
cc-cross-prefix is useful for the architecture that like
to provide a default CROSS_COMPILE value,
but may have several to select between.Sample usage:
ifneq ($(SUBARCH),$(ARCH))
ifeq ($(CROSS_COMPILE),)
CROSS_COMPILE := $(call cc-cross-prefix, m68k-linux-gnu- m68k-linux-)
endif
endifActual usage by the different archs will taken care of later.
Signed-off-by: Sam Ravnborg
-
Trivial change in a comment.
Signed-off-by: Joern Engel
Signed-off-by: Andre Haupt
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
19 Oct, 2007
1 commit
-
This version brings a more cautious checkpatch.pl by default. The more
subjective checks are only applied with the --strict option. It also
brings the usual slew of corrections for false positives. Of note:- new tree detection, the source tree will be found via the executable
- a major revamp of the unary detection to make it more parser like
- a new summary at the bottom of the report
- --strict option for subjective checks
- --file to enable checking on complete files
- support for use in emacs "compile" windowAndy Whitcroft (27):
Version: 0.11
fix up cat_vet for the case where there are no control characters
any cast to a pointer introduces a type
cpp unary operator detection needs to float
attributes are also valid in type definitions
sizeof may be a bareword and makes its argument unary
unary checks for #ifdef et al need to find end of line
add new --file mode to handle raw source files
add --strict/--subjective which enables the subjective tests
add some additional standard type suffixes
cpp #elif is also a unary prefix
case is not a function name
widen asm volatile exceptions
__kprobes is a type attribute
typeof is a unary operator
function open parenthesis checks should check all occurances
expand sizeof() binary exceptions
linux/irq.h should not be recommended
work harder to find the kernel root and add --root=
fix --emacs mode line numbers and string concatenation warnings
add a summary to the bottom of the main report
loosen assignment in if checks
update operator spacing to maintain tabs in output
revamp unary detection
corruption/line wrapped patches need only reporting once
revamp s/u/be/le 8/16/32/64 bit types
handle missing ,1 in uni-diff headerMike D. Day (2):
Adds support to checkpatch.pl for running in the emacs compile window.
checkpatch: Fix line number reportingSigned-off-by: Andy Whitcroft
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
18 Oct, 2007
4 commits
-
http://bugzilla.kernel.org/show_bug.cgi?id=8941
Current Debian's kernel-modules depend on matching linux-image-$version, though
Linux's make deb-pkg build a .deb that 'Provides: kernel-image-$version' only.
The following patch adds the Debian-compliant 'Provides', leaving the default
one; hopely this will make way all happy.Signed-off-by: paolo
Signed-off-by: Sam Ravnborg -
Typo in comment in scripts/kconfig/Makefile.
Signed-off-by: Rob Landley
Signed-off-by: Sam Ravnborg -
Prevent docproc from segfaulting when SRCTREE isn't set.
Signed-off-by: Rob Landley
Acked-by: Randy Dunlap
Signed-off-by: Sam Ravnborg -
When part of build an external module tree, modpost first reads in the
kernel's and then the external tree's Module.symvers files. From these files
it establishes a symbol => module mapping. When it later reads in each module
built and processes the symbols it finds, it discovers the symbol=>module
mapping from Module.symvers and leaves it as it is.The problem comes with a module has been re-named or a symbol has moved from
one module to another, since the Module.symvers file was generated. modpost
does not update the symbol=>module mapping when it finds the new location of
the symbol when scanning the newly built modules. This results in the module
containing incorrect dependency information and the new Module.symvers file
written by modpost will also contain the incorrect mappings, perpetuating the
problem to the next build, and so on.When building the out of kernel development tree for kernel subsystem, like
v4l-dvb or ALSA, deleting the external Module.symvers file before building
(which the kernel build system doesn't do and shouldn't be necessary anyway),
won't fix the problem. modpost still reads the kernel's Module.symvers, and
since we a building a kernel subsystem, it will define the same symbols as the
external modules.Signed-off-by: Trent Piepho
Signed-off-by: Sam Ravnborg
17 Oct, 2007
4 commits
-
Johannes Berg reports (Thanks!) that &struct names are not highlighted in
html output format when they are inside a DOC: block.DOC: blocks were not escaped thru xml_escape() like other kernel-doc
comments were. Fixed that.However, that left a problem with
($blankline_html) being processed
thru xml_escape(), converting it to <p>, which isn't good for the
generated html output (theshould remain unchanged), so this patch also
introduces the notion of "local" kernel-doc meta-characters
('\\\\mnemonic:'), which are converted to html just before writing the
stream to its output file.Please report any problems that you (anyone) see in "highlighting" in any
output mode (text, man, html, xml).Also update copyright to include me.
Signed-off-by: Randy Dunlap
Cc: Johannes Berg
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This version brings a number of new checks, and a number of bug
fixes. Of note:- better categorisation and space checks for dual use unary/binary
operators
- warn on deprecated use of {SPIN,RW}_LOCK_UNLOCKED
- check if/for/while with trailing ';' for hanging statements
- detect DOS line endings
- detect redundant casts for kalloc()Andy Whitcroft (18):
Version: 0.10
asmlinkage is also a storage type
pull out inline specifiers
allow only some operators before a unary operator
parenthesised values may span line ends
add additional attribute matching
handle sparse annotations within pointer type space checks
support alternative function definition syntax for typedefs
check if/for/while with trailing ';' for hanging statements
fix output format for case checks
deprecate SPIN_LOCK_UNLOCKED and RW_LOCK_UNLOCKED
allow complex macros with bracketing braces
detect and report DOS line endings
fastcall is a valid function attribute
bracket spacing is ok for 'for'
categorise operators into unary/binary/definitions
add heuristic to pick up on unannotated types
remove spurious warnings from cat_vetDave Jones (1):
Make checkpatch warn about pointless casting of kalloc returns.Signed-off-by: Andy Whitcroft
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Simply fill out the bits in checkstack.pl for Blackfin. I thought I already
sent this, but I don't see it in -mm anywhere ...Signed-off-by: Mike Frysinger
Cc: Bryan Wu
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (40 commits)
kbuild: introduce ccflags-y, asflags-y and ldflags-y
kbuild: enable 'make CPPFLAGS=...' to add additional options to CPP
kbuild: enable use of AFLAGS and CFLAGS on commandline
kbuild: enable 'make AFLAGS=...' to add additional options to AS
kbuild: fix AFLAGS use in h8300 and m68knommu
kbuild: check for wrong use of CFLAGS
kbuild: enable 'make CFLAGS=...' to add additional options to CC
kbuild: fix up CFLAGS usage
kbuild: make modpost detect unterminated device id lists
kbuild: call export_report from the Makefile
kbuild: move Kai Germaschewski to CREDITS
kconfig/menuconfig: distinguish between selected-by-another options and comments
kconfig: tristate choices with mixed tristate and boolean values
include/linux/Kbuild: remove duplicate entries
kbuild: kill backward compatibility checks
kbuild: kill EXTRA_ARFLAGS
kbuild: fix documentation in makefiles.txt
kbuild: call make once for all targets when O=.. is used
kbuild: pass -g to assembler under CONFIG_DEBUG_INFO
kbuild: update _shipped files for kconfig syntax cleanup
...Fix up conflicts in arch/um/sys-{x86_64,i386}/Makefile manually.
16 Oct, 2007
3 commits
-
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
endifSigned-off-by: 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, s390Signed-off-by: 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, s390Signed-off-by: Sam Ravnborg
15 Oct, 2007
2 commits
-
External modules have in a few cases modifed gcc option
by modifying CFLAGS. This has never been documented and
was a bad practice.
With the check to use KBUILD_CFLAGS it will no longer work
so we better error out and tell what was wrong as a service
to the external module users.This check can be overruled if
KBUILD_NOPEDANTIC is set to something.
Addid this possibility may allow older external
module to build without any code modifications but potentially
only loosing some un-important gcc options.Signed-off-by: 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, m68kTest was simple to do a defconfig build, apply the patch and check
that nothing got rebuild.Signed-off-by: Sam Ravnborg
14 Oct, 2007
1 commit
-
I2C devices do not have any form of ID as PCI or USB devices have.
No driver uses "MODULE_DEVICE_TABLE(i2c, ...)" because it doesn't
make sense. So we can get rid of struct i2c_device_id and the
associated support code.Signed-off-by: Jean Delvare
Cc: Greg KH
13 Oct, 2007
4 commits
-
Cause modpost to fail if any device id lists are incorrectly terminated,
after reporting the offender.
Improved reporting by akpmSigned-off-by: Kees Cook
Cc: Greg KH
Cc: Alexey Dobriyan
Cc: Jeff Garzik
Cc: Ben Collins
Cc: Michael Wu
Cc: Rusty Russell
Signed-off-by: Andrew Morton
Signed-off-by: Sam Ravnborg -
menuconfig currently represents options implied by another option ('select'
directive in Kconfig) by prefixing them with '---'. Unfortunately the same
notation is used for comments. If the implied option is module capable,
user can still switch between Y and M, all without any feedback until she
visits option's help. (try saying M to MAC80211 and then toggling
CFG80211)This patch changes notation of selected-by-another items by introducing 2
new representations for implied options: {*} or {M} for options selected by
another modularized one, thus builtin or module capable, -*- or -M- for
options that cannot be at the moment changed by user.The idea is to represent actual capability of the option by braces (dashes)
around and to always report actual state by * or M inside.Signed-off-by: Matej Laitl
Acked-by: Randy Dunlap
Cc: Roman Zippel
Signed-off-by: Andrew Morton
Signed-off-by: Sam Ravnborg -
Change kconfig behavior so that mixing bool and tristate config settings in
a choice is possible and has the desired effect of offering just the
tristate options individually if the choice gets set to M, and a normal
boolean selection if the choice gets set to Y.Signed-off-by: Jan Beulich
Cc: Roman Zippel
Signed-off-by: Andrew Morton
Signed-off-by: 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-objsThere were three remaining in-tree users of O_TARGET in some
unmaintained sh64 code - mail sent to the maintainer + list.Signed-off-by: Sam Ravnborg