28 May, 2010

6 commits

  • The Blackfin/FRV/SuperH guys all have the same exact FDPIC ptrace code in
    their arch handlers (since they were probably copied & pasted). Since
    these ptrace interfaces are an arch independent aspect of the FDPIC code,
    unify them in the common ptrace code so new FDPIC ports don't need to copy
    and paste this fundamental stuff yet again.

    Signed-off-by: Mike Frysinger
    Acked-by: Roland McGrath
    Acked-by: David Howells
    Acked-by: Paul Mundt
    Cc: Oleg Nesterov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mike Frysinger
     
  • Some workloads that create a large number of small files tend to assign
    too many pages to node 0 (multi-node systems). Part of the reason is that
    the rotor (in cpuset_mem_spread_node()) used to assign nodes starts at
    node 0 for newly created tasks.

    This patch changes the rotor to be initialized to a random node number of
    the cpuset.

    [akpm@linux-foundation.org: fix layout]
    [Lee.Schermerhorn@hp.com: Define stub numa_random() for !NUMA configuration]
    Signed-off-by: Jack Steiner
    Signed-off-by: Lee Schermerhorn
    Cc: Christoph Lameter
    Cc: Pekka Enberg
    Cc: Paul Menage
    Cc: Jack Steiner
    Cc: Robin Holt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jack Steiner
     
  • Nobody uses that anymore, so remove and expect drivers to use the gpiolib
    implementation.

    Signed-off-by: Felipe Balbi
    Cc: Tony Lindgren
    Cc: David Brownell
    Cc: Mark Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Felipe Balbi
     
  • Stop using the omap-specific implementations for gpio debouncing now that
    gpiolib provides its own support.

    Signed-off-by: Felipe Balbi
    Cc: Tony Lindgren
    Cc: David Brownell
    Cc: Mark Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Felipe Balbi
     
  • OMAP supports debouncing of gpio lines, implement the method using
    gpiolib.

    Signed-off-by: Felipe Balbi
    Cc: Tony Lindgren
    Cc: David Brownell
    Cc: Mark Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Felipe Balbi
     
  • On some platforms like DM355, the number of EDMA parameter slots available
    for EDMA_SLOT_ANY usage are few. In such cases, if MMC/SD uses 16 slots
    for each instance of MMC controller, then the number of slots available
    for other modules will be very few.

    By passing the number of EDMA slots to be used in MMC driver from platform
    data, EDMA slots available for other purposes can be controlled.

    Most of the platforms will not use this platform data variable. But on
    DM355, as the number of EDMA resources available is limited, the number of
    scatter- gather segments used inside the MMC driver can be 8 (passed as
    platform data) instead of 16. On DM355, when the number of scatter-gather
    segments was reduced to 8, I saw a performance difference of about
    0.25-0.4 Mbytes/sec during write. Read performance variations were
    negligible.

    Signed-off-by: Sudhakar Rajashekhara
    Acked-by: Kevin Hilman
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sudhakar Rajashekhara
     

26 May, 2010

9 commits

  • This reverts commit b3b77c8caef1750ebeea1054e39e358550ea9f55, which was
    also totally broken (see commit 0d2daf5cc858 that reverted the crc32
    version of it). As reported by Stephen Rothwell, it causes problems on
    big-endian machines:

    > In file included from fs/jfs/jfs_types.h:33,
    > from fs/jfs/jfs_incore.h:26,
    > from fs/jfs/file.c:22:
    > fs/jfs/endian24.h:36:101: warning: "__LITTLE_ENDIAN" is not defined

    The kernel has never had that crazy "__BYTE_ORDER == __LITTLE_ENDIAN"
    model. It's not how we do things, and it isn't how we _should_ do
    things. So don't go there.

    Requested-by: Stephen Rothwell
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * 'alpha-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha-2.6:
    alpha: simplify and optimize sched_find_first_bit
    alpha: invoke oom-killer from page fault
    Convert alpha to use clocksources instead of arch_gettimeoffset

    Linus Torvalds
     
  • Search only the first 100 bits instead of 140, saving a couple
    instructions. The resulting code is about 1/3 faster (40K ticks/1000
    iterations down to 30K ticks/1000 iterations).

    Cc: Peter Zijlstra
    Cc: Ingo Molnar
    Cc: Ivan Kokshaysky
    Cc: linux-alpha@vger.kernel.org
    Acked-by: Richard Henderson
    Signed-off-by: Matt Turner

    Matt Turner
     
  • As explained in commit 1c0fe6e3bd, we want to call the architecture
    independent oom killer when getting an unexplained OOM from
    handle_mm_fault, rather than simply killing current.

    [mattst88: kill now unused 'survive' label]
    Cc: linux-alpha@vger.kernel.org
    Cc: Richard Henderson
    Cc: linux-arch@vger.kernel.org
    Acked-by: David Rientjes
    Signed-off-by: Matt Turner
    Signed-off-by: Nick Piggin

    Nick Piggin
     
  • Alpha has a tsc like rpcc counter that it uses to manage time.
    This can be converted to an actual clocksource instead of utilizing
    the arch_gettimeoffset method that is really only there for legacy
    systems with no continuous counter.

    Further cleanups could be made if alpha converted to the clockevent
    model.

    CC: Thomas Gleixner
    CC: Richard Henderson
    Acked-by: Ivan Kokshaysky
    Tested-by: Ivan Kokshaysky
    Signed-off-by: Matt Turner
    Signed-off-by: John Stultz

    John Stultz
     
  • This adds:
    alias: devname:
    to some common kernel modules, which will allow the on-demand loading
    of the kernel module when the device node is accessed.

    Ideally all these modules would be compiled-in, but distros seems too
    much in love with their modularization that we need to cover the common
    cases with this new facility. It will allow us to remove a bunch of pretty
    useless init scripts and modprobes from init scripts.

    The static device node aliases will be carried in the module itself. The
    program depmod will extract this information to a file in the module directory:
    $ cat /lib/modules/2.6.34-00650-g537b60d-dirty/modules.devname
    # Device nodes to trigger on-demand module loading.
    microcode cpu/microcode c10:184
    fuse fuse c10:229
    ppp_generic ppp c108:0
    tun net/tun c10:200
    dm_mod mapper/control c10:235

    Udev will pick up the depmod created file on startup and create all the
    static device nodes which the kernel modules specify, so that these modules
    get automatically loaded when the device node is accessed:
    $ /sbin/udevd --debug
    ...
    static_dev_create_from_modules: mknod '/dev/cpu/microcode' c10:184
    static_dev_create_from_modules: mknod '/dev/fuse' c10:229
    static_dev_create_from_modules: mknod '/dev/ppp' c108:0
    static_dev_create_from_modules: mknod '/dev/net/tun' c10:200
    static_dev_create_from_modules: mknod '/dev/mapper/control' c10:235
    udev_rules_apply_static_dev_perms: chmod '/dev/net/tun' 0666
    udev_rules_apply_static_dev_perms: chmod '/dev/fuse' 0666

    A few device nodes are switched to statically allocated numbers, to allow
    the static nodes to work. This might also useful for systems which still run
    a plain static /dev, which is completely unsafe to use with any dynamic minor
    numbers.

    Note:
    The devname aliases must be limited to the *common* and *single*instance*
    device nodes, like the misc devices, and never be used for conceptually limited
    systems like the loop devices, which should rather get fixed properly and get a
    control node for losetup to talk to, instead of creating a random number of
    device nodes in advance, regardless if they are ever used.

    This facility is to hide the mess distros are creating with too modualized
    kernels, and just to hide that these modules are not compiled-in, and not to
    paper-over broken concepts. Thanks! :)

    Cc: Greg Kroah-Hartman
    Cc: David S. Miller
    Cc: Miklos Szeredi
    Cc: Chris Mason
    Cc: Alasdair G Kergon
    Cc: Tigran Aivazian
    Cc: Ian Kent
    Signed-Off-By: Kay Sievers
    Signed-off-by: Greg Kroah-Hartman

    Kay Sievers
     
  • * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (103 commits)
    ARM: 6141/1: Add audio support part in arch/arm/mach-w90x900
    ARM: 5939/1: ARM: Add option CMDLINE_FORCE to force usage of the in-kernel cmdline
    ARM: 6140/1: silence a bogus sparse warning in unwind.c
    ARM: mach-at91: duplicated include
    ARM: arch/arm/nwfpe/fpsr.h: Checkpatch cleanup
    ARM: arch/arm/mach-shark/pci.c: Checkpatch cleanup
    ARM: arch/arm/nwfpe/ChangeLog: Checkpatch cleanup
    ARM: arch/arm/mach-sa1100/leds.c: Checkpatch cleanup
    ARM: arch/arm/mach-h720x/common.h: Checkpatch cleanup
    ARM: arch/arm/mach-footbridge/ebsa285-pci.c: Checkpatch cleanup
    ARM: arch/arm/mach-clps711x/Makefile.boot: Checkpatch cleanup
    ARM: arch/arm/boot/bootp/bootp.lds: Checkpatch cleanup
    ARM: SPEAR6xx: remove duplicated #include
    ARM: s3c6400_defconfig: Add NAND driver
    ARM: s3c6400_defconfig: enable sound as modules
    ARM: s3c6400_defconfig: enable power management
    ARM: s5pv210_defconfig: Update s5pv210_defconfig to v2.6.34
    ARM: s5pc110_defconfig: Update s5pc110_defconfig to v2.6.34
    ARM: s5p6442_defconfig: Update s5p6442_defconfig to v2.6.34
    ARM: s5p6440_defconfig: Update s5p6440_defconfig to v2.6.34
    ...

    Linus Torvalds
     
  • * 'next-spi' of git://git.secretlab.ca/git/linux-2.6:
    spi/xilinx: Fix compile error
    spi/davinci: Fix clock prescale factor computation
    spi: move bitbang txrx utility functions to private header
    spi/mpc5121: Add SPI master driver for MPC5121 PSC
    powerpc/mpc5121: move PSC FIFO memory init to platform code
    spi/ep93xx: implemented driver for Cirrus EP93xx SPI controller
    Documentation/spi/* compile warning fix
    spi/omap2_mcspi: Check params before dereference or use
    spi/omap2_mcspi: add turbo mode support
    spi/omap2_mcspi: change default DMA_MIN_BYTES value to 160
    spi/pl022: fix stop queue procedure
    spi/pl022: add support for the PL023 derivate
    spi/pl022: fix up differences between ARM and ST versions
    spi/spi_mpc8xxx: Do not use map_tx_dma to unmap rx_dma
    spi/spi_mpc8xxx: Fix QE mode Litte Endian
    spi/spi_mpc8xxx: fix potential memory corruption.

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
    arch/m68knommu/platform/68360/commproc.c: Checkpatch cleanup
    arch/m68knommu/mm/fault.c: Checkpatch cleanup
    m68knommu: improve short help of m68knommu/Kconfig/RAMSIZE for '0' case
    m68knommu: remove un-used mcfsmc.h
    m68knommu: add smc91x support for ColdFire NETtel boards
    m68knommu: add smc91x support to ColdFire 5249 platform
    m68knommu: remove size limit on non-MMU TASK_SIZE
    m68knommu: fix broken use of BUAD_TABLE_SIZE in 68328serial driver
    m68knommu: Coldfire QSPI platform support

    Linus Torvalds
     

25 May, 2010

25 commits