29 Mar, 2009

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async-for-30:
    fastboot: remove duplicate unpack_to_rootfs()
    ide/net: flip the order of SATA and network init
    async: remove the temporary (2.6.29) "async is off by default" code

    Fix up conflicts in init/initramfs.c manually

    Linus Torvalds
     
  • we check if initrd is initramfs first and then do the real unpack. The check
    isn't required, we can directly do unpack. If the initrd isn't an
    initramfs, we can remove the garbage. In my laptop, this saves 0.1s boot
    time.

    This patch penalizes non-initramfs initrd case, but nowadays, initramfs is
    the most widely used method for initrds.

    Signed-off-by: Shaohua Li
    Acked-by: Arjan van de Ven
    Signed-off-by: Ingo Molnar

    Li, Shaohua
     

28 Mar, 2009

1 commit


13 Mar, 2009

1 commit


11 Mar, 2009

1 commit

  • The COMPAT_BRK kconfig symbol does not depend on EMBEDDED, but it is in
    the midst of the EMBEDDED menu symbols, so it mucks up the EMBEDDED menu.
    Fix by moving it to just after all of the EMBEDDED menu symbols. Also,
    ANON_INODES has a similar problem, so move it to just above the EMBEDDED
    menu items since it is used in the EMBEDDED menu.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     

05 Mar, 2009

1 commit


04 Mar, 2009

1 commit


03 Mar, 2009

2 commits

  • This reverts commit 155b25bcc28631a5b5230191aa3f56c40dfffa3f, which was
    totally wrong - the "embedded" options still exists (very much so) even
    on non-embedded platforms.

    It's just that we don't bother with actually asking about them when
    we're not embedded, we just take their default values (which is usually
    'y' - the options add features that may not be worth it in a constrained
    environment).

    Noticed-by: Andrew Morton
    Cc: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • The COMPAT_BRK kconfig symbol does not depend on EMBEDDED, but it is in
    the midst of the EMBEDDED menu symbols, so it mucks up the EMBEDDED
    menu. Fix by moving it to just after all of the EMBEDDED menu symbols.

    Also, surround all of the EMBEDDED symbols with "if EMBEDDED"/"endif" so
    that this EMBEDDED block is clearer.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     

26 Feb, 2009

2 commits

  • Ingo Molnar
     
  • This patch fixes a bug located by Vegard Nossum with the aid of
    kmemcheck, updated based on review comments from Nick Piggin,
    Ingo Molnar, and Andrew Morton. And cleans up the variable-name
    and function-name language. ;-)

    The boot CPU runs in the context of its idle thread during boot-up.
    During this time, idle_cpu(0) will always return nonzero, which will
    fool Classic and Hierarchical RCU into deciding that a large chunk of
    the boot-up sequence is a big long quiescent state. This in turn causes
    RCU to prematurely end grace periods during this time.

    This patch changes the rcutree.c and rcuclassic.c rcu_check_callbacks()
    function to ignore the idle task as a quiescent state until the
    system has started up the scheduler in rest_init(), introducing a
    new non-API function rcu_idle_now_means_idle() to inform RCU of this
    transition. RCU maintains an internal rcu_idle_cpu_truthful variable
    to track this state, which is then used by rcu_check_callback() to
    determine if it should believe idle_cpu().

    Because this patch has the effect of disallowing RCU grace periods
    during long stretches of the boot-up sequence, this patch also introduces
    Josh Triplett's UP-only optimization that makes synchronize_rcu() be a
    no-op if num_online_cpus() returns 1. This allows boot-time code that
    calls synchronize_rcu() to proceed normally. Note, however, that RCU
    callbacks registered by call_rcu() will likely queue up until later in
    the boot sequence. Although rcuclassic and rcutree can also use this
    same optimization after boot completes, rcupreempt must restrict its
    use of this optimization to the portion of the boot sequence before the
    scheduler starts up, given that an rcupreempt RCU read-side critical
    section may be preeempted.

    In addition, this patch takes Nick Piggin's suggestion to make the
    system_state global variable be __read_mostly.

    Changes since v4:

    o Changes the name of the introduced function and variable to
    be less emotional. ;-)

    Changes since v3:

    o WARN_ON(nr_context_switches() > 0) to verify that RCU
    switches out of boot-time mode before the first context
    switch, as suggested by Nick Piggin.

    Changes since v2:

    o Created rcu_blocking_is_gp() internal-to-RCU API that
    determines whether a call to synchronize_rcu() is itself
    a grace period.

    o The definition of rcu_blocking_is_gp() for rcuclassic and
    rcutree checks to see if but a single CPU is online.

    o The definition of rcu_blocking_is_gp() for rcupreempt
    checks to see both if but a single CPU is online and if
    the system is still in early boot.

    This allows rcupreempt to again work correctly if running
    on a single CPU after booting is complete.

    o Added check to rcupreempt's synchronize_sched() for there
    being but one online CPU.

    Tested all three variants both SMP and !SMP, booted fine, passed a short
    rcutorture test on both x86 and Power.

    Located-by: Vegard Nossum
    Tested-by: Vegard Nossum
    Tested-by: Paul E. McKenney
    Signed-off-by: Paul E. McKenney
    Signed-off-by: Ingo Molnar

    Paul E. McKenney
     

23 Feb, 2009

1 commit


22 Feb, 2009

1 commit


09 Feb, 2009

1 commit


06 Feb, 2009

1 commit


27 Jan, 2009

4 commits

  • Conflicts:
    arch/x86/kernel/setup_percpu.c

    Ingo Molnar
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
    kbuild: fix kbuild.txt typos
    kbuild: print usage with no arguments in scripts/config
    Revert "kbuild: strip generated symbols from *.ko"

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (92 commits)
    gianfar: Revive VLAN support
    vlan: Export symbols as non GPL symbols.
    bnx2x: tx_has_work should not wait for FW
    netxen: reduce memory footprint
    netxen: fix vlan tso/checksum offload
    net: Fix linux/if_frad.h's suitability for userspace.
    net: Move config NET_NS to from net/Kconfig to init/Kconfig
    isdn: Fix missing ifdef in isdn_ppp
    networking: document "nc" in addition to "netcat" in netconsole.txt
    e1000e: workaround hw errata
    af_key: initialize xfrm encap_oa
    virtio_net: Fix MAX_PACKET_LEN to support 802.1Q VLANs
    lcs: fix compilation for !CONFIG_IP_MULTICAST
    rtl8187: Add termination packet to prevent stall
    iwlwifi: fix rs_get_rate WARN_ON()
    p54usb: fix packet loss with first generation devices
    sctp: Fix another socket race during accept/peeloff
    sctp: Properly timestamp outgoing data chunks for rtx purposes
    sctp: Correctly start rtx timer on new packet transmissions.
    sctp: Fix crc32c calculations on big-endian arhes.
    ...

    Linus Torvalds
     
  • Make NET_NS available underneath the generic Namespaces config option
    since all of the other namespace options are there.

    Signed-off-by: Matt Helsley
    Acked-by: Serge Hallyn
    Signed-off-by: David S. Miller

    Matt Helsley
     

22 Jan, 2009

1 commit


21 Jan, 2009

1 commit


19 Jan, 2009

1 commit


16 Jan, 2009

4 commits

  • Ingo Molnar wrote:

    > here's a new build failure with tip/sched/rt:
    >
    > LD .tmp_vmlinux1
    > kernel/built-in.o: In function `set_curr_task_rt':
    > sched.c:(.text+0x3675): undefined reference to `plist_del'
    > kernel/built-in.o: In function `pick_next_task_rt':
    > sched.c:(.text+0x37ce): undefined reference to `plist_del'
    > kernel/built-in.o: In function `enqueue_pushable_task':
    > sched.c:(.text+0x381c): undefined reference to `plist_del'

    Eliminate the plist library kconfig and make it available
    unconditionally.

    Signed-off-by: Peter Zijlstra
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     
  • Move Documentation/cpusets.txt and Documentation/controllers/* to
    Documentation/cgroups/

    Signed-off-by: Li Zefan
    Acked-by: KAMEZAWA Hiroyuki
    Acked-by: Balbir Singh
    Acked-by: Paul Menage
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Li Zefan
     
  • - move CONFIG_PROC_PID_CPUSET into cgroup menu
    - move MM_OWNER to the bottom for better menu indent
    - fix typos
    - use tabs not spaces

    Signed-off-by: Li Zefan
    Acked-by: Paul Menage
    Acked-by: Balbir Singh
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Li Zefan
     
  • Move RCU Kconfig options from top-level menu to an "RCU Subsystem"
    menu under the "General Setup" menu.

    Signed-off-by: Mike Travis
    Tested-by: "Paul E. McKenney"
    Signed-off-by: Ingo Molnar

    Mike Travis
     

15 Jan, 2009

2 commits

  • This reverts commit ad7a953c522ceb496611d127e51e278bfe0ff483.

    And commit: ("allow stripping of generated symbols under CONFIG_KALLSYMS_ALL")
    9bb482476c6c9d1ae033306440c51ceac93ea80c

    These stripping patches has caused a set of issues:

    1) People have reported compatibility issues with binutils due to
    lack of support for `--strip-unneeded-symbols' with objcopy 2.15.92.0.2
    Reported by: Wenji
    2) ccache and distcc no longer works as expeced
    Reported by: Ted, Roland, + others
    3) The installed modules increased a lot in size
    Reported by: Ted, Davej + others

    Reported-by: Wenji Huang
    Reported-by: "Theodore Ts'o"
    Reported-by: Dave Jones
    Reported-by: Roland McGrath
    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     
  • Impact: More consistent behaviour, avoid policy in the kernel

    Upgrade/downgrade initrd/initramfs decompression failure from
    inconsistently a panic or a KERN_ALERT message to a KERN_EMERG event.
    It is, however, possible do design a system which can recover from
    this (using the kernel builtin code and/or the internal initramfs),
    which means this is policy, not a technical necessity.

    A good way to handle this would be to have a panic-level=X option, to
    force a panic on a printk above a certain level. That is a separate
    patch, however.

    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     

13 Jan, 2009

1 commit


10 Jan, 2009

4 commits

  • Impact: build fix

    flush_buffer() is used unconditionally:

    init/initramfs.c:456: error: 'flush_buffer' undeclared (first use in this function)
    init/initramfs.c:456: error: (Each undeclared identifier is reported only once
    init/initramfs.c:456: error: for each function it appears in.)

    So remove the decompressor #ifdefs from around it.

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • Conflicts:
    init/do_mounts_rd.c

    Ingo Molnar
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:
    MAINTAINERS: squashfs entry
    Squashfs: documentation
    Squashfs: initrd support
    Squashfs: Kconfig entry
    Squashfs: Makefiles
    Squashfs: header files
    Squashfs: block operations
    Squashfs: cache operations
    Squashfs: uid/gid lookup operations
    Squashfs: fragment block operations
    Squashfs: export operations
    Squashfs: super block operations
    Squashfs: symlink operations
    Squashfs: regular file operations
    Squashfs: directory readdir operations
    Squashfs: directory lookup operations
    Squashfs: inode operations

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-nommu:
    NOMMU: Support XIP on initramfs
    NOMMU: Teach kobjsize() about VMA regions.
    FLAT: Don't attempt to expand the userspace stack to fill the space allocated
    FDPIC: Don't attempt to expand the userspace stack to fill the space allocated
    NOMMU: Improve procfs output using per-MM VMAs
    NOMMU: Make mmap allocation page trimming behaviour configurable.
    NOMMU: Make VMAs per MM as for MMU-mode linux
    NOMMU: Delete askedalloc and realalloc variables
    NOMMU: Rename ARM's struct vm_region
    NOMMU: Fix cleanup handling in ramfs_nommu_get_umapped_area()

    Linus Torvalds
     

09 Jan, 2009

4 commits

  • Centralize the compression format detection to a common routine in the
    lib directory, and use it for both initramfs and initrd.

    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • Config and control variable for mem+swap controller.

    This patch adds CONFIG_CGROUP_MEM_RES_CTLR_SWAP
    (memory resource controller swap extension.)

    For accounting swap, it's obvious that we have to use additional memory to
    remember "who uses swap". This adds more overhead. So, it's better to
    offer "choice" to users. This patch adds 2 choices.

    This patch adds 2 parameters to enable swap extension or not.
    - CONFIG
    - boot option

    Reviewed-by: Daisuke Nishimura
    Signed-off-by: KAMEZAWA Hiroyuki
    Cc: Li Zefan
    Cc: Balbir Singh
    Cc: Pavel Emelyanov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KAMEZAWA Hiroyuki
     
  • s/contoller/controller/

    Signed-of-by: Li Zefan
    Cc: Paul Menage
    Acked-by: KAMEZAWA Hiroyuki
    Cc: Balbir Singh
    Cc: Pavel Emelyanov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Li Zefan
     
  • Making CGROUP related configs be a sub-menu.

    This patch make CGROUP related configs be a sub-menu and makes 1st level
    configs of "General Setup" shorter.

    including following additional changes
    - add help comment about CGROUPS and GROUP_SCHED.
    - moved MM_OWNER config to the bottom.
    (for good indent in menuconfig)

    Signed-off-by: KAMEZAWA Hiroyuki
    Reviewed-by: Daisuke Nishimura
    Cc: Balbir Singh
    Cc: Paul Menage
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KAMEZAWA Hiroyuki
     

08 Jan, 2009

3 commits

  • Support XIP on files unpacked from the initramfs image on NOMMU systems. This
    simply requires the length of the file to be preset so that the ramfs fs can
    attempt to garner sufficient contiguous storage to store the file (NOMMU mmap
    can only map contiguous RAM).

    All the other bits to do XIP on initramfs files are present:

    (1) ramfs's truncate attempts to allocate a contiguous run of pages when a
    file is truncated upwards from nothing.

    (2) ramfs sets BDI on its files to indicate direct mapping is possible, and
    that its files can be mapped for read, write and exec.

    (3) NOMMU mmap() will use the above bits to determine that it can do XIP.
    Possibly this needs better controls, because it will _always_ try and do
    XIP.

    One disadvantage of this very simplistic approach is that sufficient space
    will be allocated to store the whole file, and not just the bit that would be
    XIP'd. To deal with this, though, the initramfs unpacker would have to be
    able to parse the file contents.

    Signed-off-by: David Howells
    Acked-by: Paul Mundt

    David Howells
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async:
    async: don't do the initcall stuff post boot
    bootchart: improve output based on Dave Jones' feedback
    async: make the final inode deletion an asynchronous event
    fastboot: Make libata initialization even more async
    fastboot: make the libata port scan asynchronous
    fastboot: make scsi probes asynchronous
    async: Asynchronous function calls to speed up kernel boot

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (24 commits)
    trivial: chack -> check typo fix in main Makefile
    trivial: Add a space (and a comma) to a printk in 8250 driver
    trivial: Fix misspelling of "firmware" in docs for ncr53c8xx/sym53c8xx
    trivial: Fix misspelling of "firmware" in powerpc Makefile
    trivial: Fix misspelling of "firmware" in usb.c
    trivial: Fix misspelling of "firmware" in qla1280.c
    trivial: Fix misspelling of "firmware" in a100u2w.c
    trivial: Fix misspelling of "firmware" in megaraid.c
    trivial: Fix misspelling of "firmware" in ql4_mbx.c
    trivial: Fix misspelling of "firmware" in acpi_memhotplug.c
    trivial: Fix misspelling of "firmware" in ipw2100.c
    trivial: Fix misspelling of "firmware" in atmel.c
    trivial: Fix misspelled firmware in Kconfig
    trivial: fix an -> a typos in documentation and comments
    trivial: fix then -> than typos in comments and documentation
    trivial: update Jesper Juhl CREDITS entry with new email
    trivial: fix singal -> signal typo
    trivial: Fix incorrect use of "loose" in event.c
    trivial: printk: fix indentation of new_text_line declaration
    trivial: rtc-stk17ta8: fix sparse warning
    ...

    Linus Torvalds