29 Jul, 2008

1 commit


26 Jul, 2008

2 commits


22 Jul, 2008

2 commits

  • ... as preparation for removing it completely, make it an
    invisible bool defaulting to yes.

    Signed-off-by: Johannes Berg
    Signed-off-by: Rusty Russell

    Johannes Berg
     
  • module.c and module.h conatains code for finding
    exported symbols which are declared with EXPORT_UNUSED_SYMBOL,
    and this code is compiled in even if CONFIG_UNUSED_SYMBOLS is not set
    and thus there can be no EXPORT_UNUSED_SYMBOLs in modules anyway
    (because EXPORT_UNUSED_SYMBOL(x) are compiled out to nothing then).

    This patch adds required #ifdefs.

    Signed-off-by: Denys Vlasenko
    Signed-off-by: Rusty Russell

    Denys Vlasenko
     

30 Jun, 2008

1 commit


26 May, 2008

1 commit

  • init/Kconfig contains a list of configs that are searched
    for if 'make *config' are used with no .config present.
    Extend this list to look at the config identified by
    ARCH_DEFCONFIG.

    With this change we now try the defconfig targets last.

    This fixes a regression reported
    by: Linus Torvalds

    Signed-off-by: Sam Ravnborg
    Cc: Linus Torvalds
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"

    Sam Ravnborg
     

09 May, 2008

1 commit

  • Linus found a logic bug: we ignore the version number in a module's
    vermagic string if we have CONFIG_MODVERSIONS set, but modversions
    also lets through a module with no __versions section for modprobe
    --force (with tainting, but still).

    We should only ignore the start of the vermagic string if the module
    actually *has* crcs to check. Rather than (say) having an
    entertaining hissy fit and creating a config option to work around the
    buggy code.

    Signed-off-by: Rusty Russell
    Signed-off-by: Linus Torvalds

    Rusty Russell
     

07 May, 2008

1 commit

  • fix pcspkr dependancies: make the pcspkr platform
    drivers to depend on a platform device, and
    not the other way around.

    Signed-off-by: Stas Sergeev
    Acked-by: Thomas Gleixner
    Acked-by: Dmitry Torokhov
    CC: Vojtech Pavlik
    CC: Michael Opdenacker
    [fixed for 2.6.26-rc1 by tiwai]
    Signed-off-by: Takashi Iwai

    Stas Sergeev
     

06 May, 2008

2 commits


05 May, 2008

1 commit

  • The kernel module loader used to be much too happy to allow loading of
    modules for the wrong kernel version by default. For example, if you
    had MODVERSIONS enabled, but tried to load a module with no version
    info, it would happily load it and taint the kernel - whether it was
    likely to actually work or not!

    Generally, such forced module loading should be considered a really
    really bad idea, so make it conditional on a new config option
    (MODULE_FORCE_LOAD), and make it default to off.

    If somebody really wants to force module loads, that's their problem,
    but we should not encourage it. Especially as it happened to me by
    mistake (ie regular unversioned Fedora modules getting loaded) causing
    lots of strange behavior.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

02 May, 2008

1 commit


29 Apr, 2008

7 commits

  • Disable sysctl_check.c for embedded targets. This saves about about 11 kB
    in .text and another 11 kB in .data on a PXA255 embedded platform.

    Signed-off-by: Holger Schurig
    Cc: "Eric W. Biederman"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Holger Schurig
     
  • Remove the mem_cgroup member from mm_struct and instead adds an owner.

    This approach was suggested by Paul Menage. The advantage of this approach
    is that, once the mm->owner is known, using the subsystem id, the cgroup
    can be determined. It also allows several control groups that are
    virtually grouped by mm_struct, to exist independent of the memory
    controller i.e., without adding mem_cgroup's for each controller, to
    mm_struct.

    A new config option CONFIG_MM_OWNER is added and the memory resource
    controller selects this config option.

    This patch also adds cgroup callbacks to notify subsystems when mm->owner
    changes. The mm_cgroup_changed callback is called with the task_lock() of
    the new task held and is called just prior to changing the mm->owner.

    I am indebted to Paul Menage for the several reviews of this patchset and
    helping me make it lighter and simpler.

    This patch was tested on a powerpc box, it was compiled with both the
    MM_OWNER config turned on and off.

    After the thread group leader exits, it's moved to init_css_state by
    cgroup_exit(), thus all future charges from runnings threads would be
    redirected to the init_css_set's subsystem.

    Signed-off-by: Balbir Singh
    Cc: Pavel Emelianov
    Cc: Hugh Dickins
    Cc: Sudhir Kumar
    Cc: YAMAMOTO Takashi
    Cc: Hirokazu Takahashi
    Cc: David Rientjes ,
    Cc: Balbir Singh
    Acked-by: KAMEZAWA Hiroyuki
    Acked-by: Pekka Enberg
    Reviewed-by: Paul Menage
    Cc: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Balbir Singh
     
  • Implement a cgroup to track and enforce open and mknod restrictions on device
    files. A device cgroup associates a device access whitelist with each cgroup.
    A whitelist entry has 4 fields. 'type' is a (all), c (char), or b (block).
    'all' means it applies to all types and all major and minor numbers. Major
    and minor are either an integer or * for all. Access is a composition of r
    (read), w (write), and m (mknod).

    The root device cgroup starts with rwm to 'all'. A child devcg gets a copy of
    the parent. Admins can then remove devices from the whitelist or add new
    entries. A child cgroup can never receive a device access which is denied its
    parent. However when a device access is removed from a parent it will not
    also be removed from the child(ren).

    An entry is added using devices.allow, and removed using
    devices.deny. For instance

    echo 'c 1:3 mr' > /cgroups/1/devices.allow

    allows cgroup 1 to read and mknod the device usually known as
    /dev/null. Doing

    echo a > /cgroups/1/devices.deny

    will remove the default 'a *:* mrw' entry.

    CAP_SYS_ADMIN is needed to change permissions or move another task to a new
    cgroup. A cgroup may not be granted more permissions than the cgroup's parent
    has. Any task can move itself between cgroups. This won't be sufficient, but
    we can decide the best way to adequately restrict movement later.

    [akpm@linux-foundation.org: coding-style fixes]
    [akpm@linux-foundation.org: fix may-be-used-uninitialized warning]
    Signed-off-by: Serge E. Hallyn
    Acked-by: James Morris
    Looks-good-to: Pavel Emelyanov
    Cc: Daniel Hokka Zakrisson
    Cc: Li Zefan
    Cc: Paul Menage
    Cc: Balbir Singh
    Cc: KAMEZAWA Hiroyuki
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Serge E. Hallyn
     
  • The cgroup debug subsystem isn't generally useful for users. It should
    default to "n".

    Signed-off-by: Paul Menage
    Cc: "Li Zefan"
    Cc: Balbir Singh
    Cc: Paul Jackson
    Cc: Pavel Emelyanov
    Cc: KAMEZAWA Hiroyuki
    Cc: "YAMAMOTO Takashi"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paul Menage
     
  • 16 kB is often no longer enough for a normal boot of an UP system.

    And even less when people e.g. use suspend.

    17 seems to be a more reasonable default for current kernels on current
    hardware (it's just the default, anyone who is memory limited can still lower
    it).

    Signed-off-by: Adrian Bunk
    Acked-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sparc: video drivers: add facility level
    sparc: tcx.c make tcx_init and tcx_exit static
    sparc: ffb.c make ffb_init and ffb_exit static
    sparc: cg14.c make cg14_init and cg15_exit static
    sparc: bw2.c fix bw2_exit
    sparc64: Fix accidental syscall restart on child return from clone/fork/vfork.
    sparc64: Clean up handling of pt_regs trap type encoding.
    sparc: Remove old style signal frame support.
    sparc64: Kill bogus RT_ALIGNEDSZ macro from signal.c
    sparc: sunzilog.c remove unused argument
    sparc: fix drivers/video/tcx.c warning
    sparc64: Kill unused local ISA bus layer.
    input: Rewrite sparcspkr device probing.
    sparc64: Do not ignore 'pmu' device ranges.
    sparc64: Kill ISA_FLOPPY_WORKS code.
    sparc64: Kill CONFIG_SPARC32_COMPAT
    sparc64: Cleanups and corrections for arch/sparc64/Kconfig
    sparc64: Fix wedged irq regression.

    Linus Torvalds
     
  • this option has been the default on a wide range of distributions
    for a long time - time to make it non-experimental.

    Signed-off-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     

27 Apr, 2008

1 commit

  • It's completely superfluous, CONFIG_COMPAT is sufficient.

    What this used to be is an umbrella for enabling code shared
    by all 32-bit compat binary support types. But with the
    removal of SunOS and Solaris support, the only one left is
    Linux 32-bit ELF.

    Update defconfig.

    Signed-off-by: David S. Miller

    David S. Miller
     

20 Apr, 2008

1 commit


14 Apr, 2008

1 commit

  • The per node counters are used mainly for showing data through the sysfs API.
    If that API is not compiled in then there is no point in keeping track of this
    data. Disable counters for the number of slabs and the number of total slabs
    if !SLUB_DEBUG. Incrementing the per node counters is also accessing a
    potentially contended cacheline so this could actually be a performance
    benefit to embedded systems.

    SLABINFO support is also affected. It now must depends on SLUB_DEBUG (which
    is on by default).

    Patch also avoids a check for a NULL kmem_cache_node pointer in new_slab()
    if the system is not compiled with NUMA support.

    [penberg@cs.helsinki.fi: fix oops and move ->nr_slabs into CONFIG_SLUB_DEBUG]
    Signed-off-by: Christoph Lameter
    Signed-off-by: Pekka Enberg

    Christoph Lameter
     

11 Mar, 2008

1 commit

  • The original preemptible-RCU patch put the choice between classic and
    preemptible RCU into kernel/Kconfig.preempt, which resulted in build failures
    on machines not supporting CONFIG_PREEMPT. This choice was therefore moved to
    init/Kconfig, which worked, but placed the choice between classic and
    preemptible RCU at the top level, a very obtuse choice indeed.

    This patch changes from the Kconfig "choice" mechanism to a pair of booleans,
    only one of which (CONFIG_PREEMPT_RCU) is user-visible, and is located in
    kernel/Kconfig.preempt, where one would expect it to be. The other
    (CONFIG_CLASSIC_RCU) is in init/Kconfig so that it is available to all
    architectures, hopefully avoiding build breakage. Thanks to Roman Zippel for
    suggesting this approach.

    Signed-off-by: Paul E. McKenney
    Cc: Ingo Molnar
    Acked-by: Steven Rostedt
    Cc: Dipankar Sarma
    Cc: Josh Triplett
    Cc: Thomas Gleixner
    Cc: Peter Zijlstra
    Cc: Roman Zippel
    Cc: Sam Ravnborg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paul E. McKenney
     

05 Mar, 2008

4 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6:
    debugfs: fix sparse warnings
    Driver core: Fix cleanup when failing device_add().
    driver core: Remove dpm_sysfs_remove() from error path of device_add()
    PM: fix new mutex-locking bug in the PM core
    PM: Do not acquire device semaphores upfront during suspend
    kobject: properly initialize ksets
    sysfs: CONFIG_SYSFS_DEPRECATED fix
    driver core: fix up Kconfig text for CONFIG_SYSFS_DEPRECATED

    Linus Torvalds
     
  • Rename Memory Controller to Memory Resource Controller. Reflect the same
    changes in the CONFIG definition for the Memory Resource Controller. Group
    together the config options for Resource Counters and Memory Resource
    Controller.

    Signed-off-by: Balbir Singh
    Cc: Paul Menage
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Balbir Singh
     
  • CONFIG_SYSFS_DEPRECATED=y changed its meaning recently and causes
    regressions in working setups that had SYSFS_DEPRECATED disabled.

    so rename it to SYSFS_DEPRECATED_V2 so that testers pick up the new
    default via 'make oldconfig', even if their old .config's disabled
    CONFIG_SYSFS_DEPRECATED ...

    Signed-off-by: Ingo Molnar
    Cc: Kay Sievers
    Cc: Linus Torvalds
    Cc: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Ingo Molnar
     
  • As things get moved into this config option, the hard date of 2006 does
    not work anymore, so update the text to be more descriptive.

    Cc: Kay Sievers
    Cc: Jiri Slaby
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

24 Feb, 2008

1 commit

  • Document huge memory/cache overhead of memory controller in Kconfig

    I was a little surprised that 2.6.25-rc* increased struct page for the
    memory controller. At least on many x86-64 machines it will not fit into a
    single cache line now anymore and also costs considerable amounts of RAM.
    At earlier review I remembered asking for a external data structure for
    this.

    It's also quite unobvious that a innocent looking Kconfig option with a
    single line Kconfig description has such a negative effect.

    This patch attempts to document these disadvantages at least so that users
    configuring their kernel can make a informed decision.

    Signed-off-by: Andi Kleen
    Cc: Balbir Singh
    Acked-by: Paul Menage
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andi Kleen
     

13 Feb, 2008

1 commit


10 Feb, 2008

1 commit


09 Feb, 2008

5 commits

  • Just like with the user namespaces, move the namespace management code into
    the separate .c file and mark the (already existing) PID_NS option as "depend
    on NAMESPACES"

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Pavel Emelyanov
    Acked-by: Serge Hallyn
    Cc: Cedric Le Goater
    Cc: "Eric W. Biederman"
    Cc: Herbert Poetzl
    Cc: Kirill Korotaev
    Cc: Sukadev Bhattiprolu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     
  • Make the user_namespace.o compilation depend on this option and move the
    init_user_ns into user.c file to make the kernel compile and work without the
    namespaces support. This make the user namespace code be organized similar to
    other namespaces'.

    Also mask the USER_NS option as "depend on NAMESPACES".

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Pavel Emelyanov
    Acked-by: Serge Hallyn
    Cc: Cedric Le Goater
    Cc: "Eric W. Biederman"
    Cc: Herbert Poetzl
    Cc: Kirill Korotaev
    Cc: Sukadev Bhattiprolu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     
  • Currently the IPC namespace management code is spread over the ipc/*.c files.
    I moved this code into ipc/namespace.c file which is compiled out when needed.

    The linux/ipc_namespace.h file is used to store the prototypes of the
    functions in namespace.c and the stubs for NAMESPACES=n case. This is done
    so, because the stub for copy_ipc_namespace requires the knowledge of the
    CLONE_NEWIPC flag, which is in sched.h. But the linux/ipc.h file itself in
    included into many many .c files via the sys.h->sem.h sequence so adding the
    sched.h into it will make all these .c depend on sched.h which is not that
    good. On the other hand the knowledge about the namespaces stuff is required
    in 4 .c files only.

    Besides, this patch compiles out some auxiliary functions from ipc/sem.c,
    msg.c and shm.c files. It turned out that moving these functions into
    namespaces.c is not that easy because they use many other calls and macros
    from the original file. Moving them would make this patch complicated. On
    the other hand all these functions can be consolidated, so I will send a
    separate patch doing this a bit later.

    Signed-off-by: Pavel Emelyanov
    Acked-by: Serge Hallyn
    Cc: Cedric Le Goater
    Cc: "Eric W. Biederman"
    Cc: Herbert Poetzl
    Cc: Kirill Korotaev
    Cc: Sukadev Bhattiprolu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     
  • Currently all the namespace management code is in the kernel/utsname.c file,
    so just compile it out and make stubs in the appropriate header.

    The init namespace itself is in init/version.c and is in the kernel all the
    time.

    Signed-off-by: Pavel Emelyanov
    Acked-by: Serge Hallyn
    Cc: Cedric Le Goater
    Cc: "Eric W. Biederman"
    Cc: Herbert Poetzl
    Cc: Kirill Korotaev
    Cc: Sukadev Bhattiprolu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     
  • The option is selectable if EMBEDDED is chosen only. When the EMBEDDED is off
    namespaces will be on.

    Signed-off-by: Pavel Emelyanov
    Acked-by: Serge Hallyn
    Cc: Cedric Le Goater
    Cc: "Eric W. Biederman"
    Cc: Herbert Poetzl
    Cc: Kirill Korotaev
    Cc: Sukadev Bhattiprolu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelyanov
     

08 Feb, 2008

2 commits

  • Setup the memory cgroup and add basic hooks and controls to integrate
    and work with the cgroup.

    Signed-off-by: Balbir Singh
    Cc: Pavel Emelianov
    Cc: Paul Menage
    Cc: Peter Zijlstra
    Cc: "Eric W. Biederman"
    Cc: Nick Piggin
    Cc: Kirill Korotaev
    Cc: Herbert Poetzl
    Cc: David Rientjes
    Cc: Vaidyanathan Srinivasan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Balbir Singh
     
  • With fixes from David Rientjes

    Introduce generic structures and routines for resource accounting.

    Each resource accounting cgroup is supposed to aggregate it,
    cgroup_subsystem_state and its resource-specific members within.

    Signed-off-by: Pavel Emelianov
    Signed-off-by: Balbir Singh
    Cc: Paul Menage
    Cc: Peter Zijlstra
    Cc: "Eric W. Biederman"
    Cc: Nick Piggin
    Cc: Kirill Korotaev
    Cc: Herbert Poetzl
    Cc: Vaidyanathan Srinivasan
    Signed-off-by: David Rientjes
    Cc: Pavel Emelianov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Emelianov
     

07 Feb, 2008

1 commit

  • based on similar patch from: Pavel Machek

    Introduce CONFIG_COMPAT_BRK. If disabled then the kernel is free
    (but not obliged to) randomize the brk area.

    Heap randomization breaks ancient binaries, so we keep COMPAT_BRK
    enabled by default.

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     

06 Feb, 2008

1 commit