20 Oct, 2007

1 commit

  • is_init() is an ambiguous name for the pid==1 check. Split it into
    is_global_init() and is_container_init().

    A cgroup init has it's tsk->pid == 1.

    A global init also has it's tsk->pid == 1 and it's active pid namespace
    is the init_pid_ns. But rather than check the active pid namespace,
    compare the task structure with 'init_pid_ns.child_reaper', which is
    initialized during boot to the /sbin/init process and never changes.

    Changelog:

    2.6.22-rc4-mm2-pidns1:
    - Use 'init_pid_ns.child_reaper' to determine if a given task is the
    global init (/sbin/init) process. This would improve performance
    and remove dependence on the task_pid().

    2.6.21-mm2-pidns2:

    - [Sukadev Bhattiprolu] Changed is_container_init() calls in {powerpc,
    ppc,avr32}/traps.c for the _exception() call to is_global_init().
    This way, we kill only the cgroup if the cgroup's init has a
    bug rather than force a kernel panic.

    [akpm@linux-foundation.org: fix comment]
    [sukadev@us.ibm.com: Use is_global_init() in arch/m32r/mm/fault.c]
    [bunk@stusta.de: kernel/pid.c: remove unused exports]
    [sukadev@us.ibm.com: Fix capability.c to work with threaded init]
    Signed-off-by: Serge E. Hallyn
    Signed-off-by: Sukadev Bhattiprolu
    Acked-by: Pavel Emelianov
    Cc: Eric W. Biederman
    Cc: Cedric Le Goater
    Cc: Dave Hansen
    Cc: Herbert Poetzel
    Cc: Kirill Korotaev
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Serge E. Hallyn
     

17 Oct, 2007

6 commits

  • All asm/ipc.h files do only #include .

    This patch therefore removes all include/asm-*/ipc.h files and moves the
    contents of include/asm-generic/ipc.h to include/linux/ipc.h.

    Signed-off-by: Adrian Bunk
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • * 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.

    Linus Torvalds
     
  • Convert m32r to the generic sys_ptrace. The conversion requires an
    architecture hook after ptrace_attach which this patch adds. The hook
    will also be needed for a conersion of ia64 to the generic ptrace code.

    Thanks to Hirokazu Takata for fixing a bug in the first version of this
    code.

    Signed-off-by: Christoph Hellwig
    Cc: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Hellwig
     
  • Signed-off-by: Thomas Gleixner
    Cc: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Gleixner
     
  • We have had complaints where a threaded application is left in a bad state
    after one of it's threads is killed when we hit a VM: out_of_memory
    condition.

    Killing just one of the process threads can leave the application in a bad
    state, whereas killing the entire process group would allow for the
    application to restart, or be otherwise handled, and makes it very obvious
    that something has gone wrong.

    This change allows the entire process group to be taken down, rather
    than just the one thread.

    Signed-off-by: Will Schmidt
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Russell King
    Cc: Ian Molton
    Cc: Haavard Skinnemoen
    Cc: Mikael Starvik
    Cc: David Howells
    Cc: Andi Kleen
    Cc: "Luck, Tony"
    Cc: Hirokazu Takata
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Cc: Ralf Baechle
    Cc: Kyle McMartin
    Cc: Matthew Wilcox
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: Heiko Carstens
    Cc: Martin Schwidefsky
    Cc: Paul Mundt
    Cc: Kazumoto Kojima
    Cc: Richard Curnow
    Cc: William Lee Irwin III
    Cc: "David S. Miller"
    Cc: Chris Zankel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Will Schmidt
     
  • Identical handlers of PTRACE_DETACH go into ptrace_request().
    Not touching compat code.
    Not touching archs that don't call ptrace_request.

    Signed-off-by: Alexey Dobriyan
    Acked-by: Christoph Hellwig
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     

16 Oct, 2007

1 commit

  • 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, s390

    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     

15 Oct, 2007

1 commit

  • 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, m68k

    Test was simple to do a defconfig build, apply the patch and check
    that nothing got rebuild.

    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     

06 Sep, 2007

2 commits

  • The names of STI and CLI macros were derived from i386 arch historically,
    but their name are incomprehensible.
    So, for easy to understand, rename these macros to ENABLE_INTERRUPTS
    and DISABLE_INTERRUPTS, respectively.

    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • This patch fixes the following compile error:

    ...
    AS arch/m32r/kernel/entry.o
    /home/bunk/linux/kernel-2.6/linux-2.6.23-rc3-mm1/arch/m32r/kernel/entry.S: Assembler messages:
    /home/bunk/linux/kernel-2.6/linux-2.6.23-rc3-mm1/arch/m32r/kernel/entry.S:358: Error: bad instruction `addi r0,#(((((0)+(64))+(32))+(32)))'
    make[2]: *** [arch/m32r/kernel/entry.o] Error 1

    Signed-off-by: Hirokazu Takata
    Cc: Adrian Bunk

    Hirokazu Takata
     

03 Sep, 2007

10 commits

  • - Separate sys_call_table from arch/m32r/kernel/entry.S and
    move it to arch/m32r/kernel/system_call.S.
    - Change sys_call_table section from .data to .rodata.

    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • - Remove unused symbols *_MASK
    - Change indentation of comments, etc.

    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • If no IRQ request is found in the IRQ check of ei_handler,
    we can exit directly by jumping "restore_all", instead of via
    "ret_from_intr".

    This modification is also likely effective for IPI operations,
    because scheduler call never happen at the exit of IPIs.

    Signed-off-by: Hitoshi Yamamoto
    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • Simplify and clean up messy ei_handler code in arch/m32r/kernel/entry.S.
    - Remove ifdef's for CONFIG_CHIP_* configulations.
    - Rearrange the M32700 workaround code.
    - Remove the messy platform-dependent interrupt check routines and
    consolidate them to common INT0/INT1/INT2 check routines for all
    platforms with cascaded interrupt controllers.

    Signed-off-by: Hitoshi Yamamoto
    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • On some m32r platforms, cascaded ICUs are used.
    This patch is required to simplify ei_handler and consolidate platform-
    dependent ICU check routines.

    platform ICU/INT1 ICU/INT0 ICU/INT2
    -------------- -------- -------- --------
    m32104ut o - -
    m32700ut o o o
    opsput o o o
    usrv o - -
    (others) - - -

    Signed-off-by: Hitoshi Yamamoto
    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • Move dot.gdbinit files from arch/m32r/{platforms}/dot.gdbinit*
    to arch/m32r/platforms/{platform}/.

    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • Rearrange platform-dependent codes from arch/m32r/kernel/*.c
    to arch/m32r/platforms/{platform}/.

    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • Add usrv_defcofig file for the usrv (M32R MicroServer) platform.

    platform defconfig Note
    ---------- ---------------------- ---------------------------
    usrv usrv_defconfig SMP

    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • Update defconfig files for 2.6.23-rc1 in arch/m32r/configs/.

    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     
  • Change defconfig file's location from arch/m32r/{platform}/defconfig*
    to arch/m32r/configs/{platform}_defconfig.

    Applying this patch, we can use defconfig file for each m32r platform
    easily, like other architectures.

    ex. Setup defconfig for cross-building
    $ make ARCH=m32r CROSS_COMPILE=m32r-linux-gnu- {platform}_defconfig.

    platform defconfig Note
    ---------- ---------------------- ---------------------------
    m32104ut m32104ut_defconfig MMU-less
    m32700ut m32700ut.smp_defconfig SMP
    m32700ut m32700ut.up_defconfig UP
    mappi mappi.smp_defconfig SMP
    mappi mappi.up_defconfig UP
    mappi mappi.nommu_defconfig MMU-less
    mappi2 mappi2.opsp_defconfig FPGA env. (CPU Core: OPSP)
    mappi2 mappi2.vdec2_defconfig FPGA env. (CPU Core: VDEC2)
    mappi3 imappi3.smp_defconfig SMP
    oaks32r oaks32r_defconfig MMU-less
    opsput opsput_defconfig UP

    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     

31 Jul, 2007

1 commit


27 Jul, 2007

1 commit

  • Change INT0 trigger mode from edge-sense mode to level-sense mode,
    in order to fix the following timeout error:
    'NETDEV WATCHDOG: eth0: transmit timed out'.

    This patch is required only for the Mappi platform.

    Signed-off-by: Hirokazu Takata
    Cc: Hitoshi Yamamoto
    Cc: Jeff Garzik
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hirokazu Takata
     

20 Jul, 2007

4 commits

  • * 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6: (44 commits)
    i2c: Delete the i2c-isa pseudo bus driver
    hwmon: refuse to load abituguru driver on non-Abit boards
    hwmon: fix Abit Uguru3 driver detection on some motherboards
    hwmon/w83627ehf: Be quiet when no chip is found
    hwmon/w83627ehf: No need to initialize fan_min
    hwmon/w83627ehf: Export the thermal sensor types
    hwmon/w83627ehf: Enable VBAT monitoring
    hwmon/w83627ehf: Add support for the VID inputs
    hwmon/w83627ehf: Fix timing issues
    hwmon/w83627ehf: Add error messages for two error cases
    hwmon/w83627ehf: Convert to a platform driver
    hwmon/w83627ehf: Update the Kconfig entry
    make coretemp_device_remove() static
    hwmon: Add LM93 support
    hwmon: Improve the pwmN_enable documentation
    hwmon/smsc47b397: Don't report missing fans as spinning at 82 RPM
    hwmon: Add support for newer uGuru's
    hwmon/f71805f: Add temperature-tracking fan control mode
    hwmon/w83627ehf: Preserve speed reading when changing fan min
    hwmon: fix detection of abituguru volt inputs
    ...

    Manual fixup of trivial conflict in MAINTAINERS file

    Linus Torvalds
     
  • There are no users of i2c-isa left, so we can finally get rid of it.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • per cpu data section contains two types of data. One set which is
    exclusively accessed by the local cpu and the other set which is per cpu,
    but also shared by remote cpus. In the current kernel, these two sets are
    not clearely separated out. This can potentially cause the same data
    cacheline shared between the two sets of data, which will result in
    unnecessary bouncing of the cacheline between cpus.

    One way to fix the problem is to cacheline align the remotely accessed per
    cpu data, both at the beginning and at the end. Because of the padding at
    both ends, this will likely cause some memory wastage and also the
    interface to achieve this is not clean.

    This patch:

    Moves the remotely accessed per cpu data (which is currently marked
    as ____cacheline_aligned_in_smp) into a different section, where all the data
    elements are cacheline aligned. And as such, this differentiates the local
    only data and remotely accessed data cleanly.

    Signed-off-by: Fenghua Yu
    Acked-by: Suresh Siddha
    Cc: Rusty Russell
    Cc: Christoph Lameter
    Cc:
    Cc: "Luck, Tony"
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fenghua Yu
     
  • This patch completes Linus's wish that the fault return codes be made into
    bit flags, which I agree makes everything nicer. This requires requires
    all handle_mm_fault callers to be modified (possibly the modifications
    should go further and do things like fault accounting in handle_mm_fault --
    however that would be for another patch).

    [akpm@linux-foundation.org: fix alpha build]
    [akpm@linux-foundation.org: fix s390 build]
    [akpm@linux-foundation.org: fix sparc build]
    [akpm@linux-foundation.org: fix sparc64 build]
    [akpm@linux-foundation.org: fix ia64 build]
    Signed-off-by: Nick Piggin
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Russell King
    Cc: Ian Molton
    Cc: Bryan Wu
    Cc: Mikael Starvik
    Cc: David Howells
    Cc: Yoshinori Sato
    Cc: "Luck, Tony"
    Cc: Hirokazu Takata
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Cc: Greg Ungerer
    Cc: Matthew Wilcox
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: Heiko Carstens
    Cc: Martin Schwidefsky
    Cc: Paul Mundt
    Cc: Kazumoto Kojima
    Cc: Richard Curnow
    Cc: William Lee Irwin III
    Cc: "David S. Miller"
    Cc: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Cc: Miles Bader
    Cc: Chris Zankel
    Acked-by: Kyle McMartin
    Acked-by: Haavard Skinnemoen
    Acked-by: Ralf Baechle
    Acked-by: Andi Kleen
    Signed-off-by: Andrew Morton
    [ Still apparently needs some ARM and PPC loving - Linus ]
    Signed-off-by: Linus Torvalds

    Nick Piggin
     

18 Jul, 2007

2 commits

  • Identical implementations of PTRACE_POKEDATA go into generic_ptrace_pokedata()
    function.

    AFAICS, fix bug on xtensa where successful PTRACE_POKEDATA will nevertheless
    return EPERM.

    Signed-off-by: Alexey Dobriyan
    Cc: Christoph Hellwig
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • Identical implementations of PTRACE_PEEKDATA go into generic_ptrace_peekdata()
    function.

    Signed-off-by: Alexey Dobriyan
    Cc: Christoph Hellwig
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     

17 Jul, 2007

1 commit

  • Continuing the work started in 411f0f3edc141a582190d3605cadd1d993abb6df ...

    This enables code with a dma path, that compiles away, to build without
    requiring additional code factoring. It also prevents code that calls
    dma_alloc_coherent and dma_free_coherent from linking whereas previously
    the code would hit a BUG() at run time. Finally, it allows archs that set
    !HAS_DMA to delete their asm/dma-mapping.h file.

    Cc: Cornelia Huck
    Cc: Martin Schwidefsky
    Cc: Heiko Carstens
    Cc: John W. Linville
    Cc: Kyle McMartin
    Cc: James Bottomley
    Cc: Tejun Heo
    Cc: Jeff Garzik
    Cc:
    Cc:
    Cc:
    Cc:
    Signed-off-by: Dan Williams
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dan Williams
     

19 May, 2007

2 commits


11 May, 2007

2 commits

  • Fix the tlb-miss handler (tme_handler) to check _PAGE_PRESENT bit
    in order to handle file-mapped or swapped-out pages correctly.

    This patch is required to fix unexpected page errors for m32r.

    Signed-off-by: Hitoshi Yamamoto
    Signed-off-by: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hirokazu Takata
     
  • This patch fixes a rarely-happened but severe scheduling problem of
    the recent m32r kernel of 2.6.17-rc3 or later.

    In the following previous m32r patch, the switch_to macro was
    modified not to do unnecessary push/pop operations for tuning.
    > [PATCH] m32r: update switch_to macro for tuning
    > 4127272c38619c56f0c1aa01d01c7bd757db70a1

    In this modification, only 'lr' and 'sp' registers are push/pop'ed,
    assuming that the m32r kernel is always compiled with
    -fomit-frame-pointer option.

    However, in 2.6 kernel, kernel/sched.c is irregularly compiled
    with -fno-omit-frame-pointer if CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER
    is not defined.

    -- kernel/Makefile --
    :
    ifneq ($(CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER),y)
    # According to Alan Modra , the -fno-omit-frame-pointer is
    # needed for x86 only. Why this used to be enabled for all architectures is beyond
    # me. I suspect most platforms don't need this, but until we know that for sure
    # I turn this off for IA-64 only. Andreas Schwab says it's also needed on m68k
    # to get a correct value for the wait-channel (WCHAN in ps). --davidm
    CFLAGS_sched.o := $(PROFILING) -fno-omit-frame-pointer
    endif
    :
    ---

    Therefore, for the recent m32r kernel, we have to push/pop 'fp'
    (frame pointer) if CONFIG_FRAME_POINTER is defined or
    CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER is not defined.

    Signed-off-by: Hitoshi Yamamoto
    Signed-off-by: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hirokazu Takata
     

09 May, 2007

1 commit


03 May, 2007

1 commit

  • Let's allow page-alignment in general for per-cpu data (wanted by Xen, and
    Ingo suggested KVM as well).

    Because larger alignments can use more room, we increase the max per-cpu
    memory to 64k rather than 32k: it's getting a little tight.

    Signed-off-by: Rusty Russell
    Signed-off-by: Jeremy Fitzhardinge
    Signed-off-by: Andi Kleen
    Acked-by: Ingo Molnar
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton

    Jeremy Fitzhardinge
     

18 Feb, 2007

1 commit


13 Feb, 2007

1 commit


12 Feb, 2007

2 commits

  • * Split the implementation-agnostic stuff in separate files.
    * Make sure that targets using non-default request_irq() pull
    kernel/irq/devres.o
    * Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;
    allow architectures to turn them off (we needed these symbols anyway for
    dependencies of quite a few drivers).
    * protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • Part of long forgotten patch
    http://groups.google.com/group/fa.linux.kernel/msg/e98e941ce1cf29f6?dmode=source
    Since then, m32r grabbed two copies.

    Leave s390 copy because of important absence of CONFIG_VT, but remove
    references to non-existent timerlist_lock. ia64 also loses timerlist_lock.

    Signed-off-by: Alexey Dobriyan
    Acked-by: Martin Schwidefsky
    Cc: Andi Kleen
    Cc: "Luck, Tony"
    Cc: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kirill Korotaev