10 May, 2013

9 commits

  • Pull MIPS updates from Ralf Baechle:

    - More work on DT support for various platforms

    - Various fixes that were to late to make it straight into 3.9

    - Improved platform support, in particular the Netlogic XLR and
    BCM63xx, and the SEAD3 and Malta eval boards.

    - Support for several Ralink SOC families.

    - Complete support for the microMIPS ASE which basically reencodes the
    existing MIPS32/MIPS64 ISA to use non-constant size instructions.

    - Some fallout from LTO work which remove old cruft and will generally
    make the MIPS kernel easier to maintain and resistant to compiler
    optimization, even in absence of LTO.

    - KVM support. While MIPS has announced hardware virtualization
    extensions this KVM extension uses trap and emulate mode for
    virtualization of MIPS32. More KVM work to add support for VZ
    hardware virtualizaiton extensions and MIPS64 will probably already
    be merged for 3.11.

    Most of this has been sitting in -next for a long time. All defconfigs
    have been build or run time tested except three for which fixes are being
    sent by other maintainers.

    Semantic conflict with kvm updates done as per Ralf

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (118 commits)
    MIPS: Add new GIC clockevent driver.
    MIPS: Formatting clean-ups for clocksources.
    MIPS: Refactor GIC clocksource code.
    MIPS: Move 'gic_frequency' to common location.
    MIPS: Move 'gic_present' to common location.
    MIPS: MIPS16e: Add unaligned access support.
    MIPS: MIPS16e: Support handling of delay slots.
    MIPS: MIPS16e: Add instruction formats.
    MIPS: microMIPS: Optimise 'strnlen' core library function.
    MIPS: microMIPS: Optimise 'strlen' core library function.
    MIPS: microMIPS: Optimise 'strncpy' core library function.
    MIPS: microMIPS: Optimise 'memset' core library function.
    MIPS: microMIPS: Add configuration option for microMIPS kernel.
    MIPS: microMIPS: Disable LL/SC and fix linker bug.
    MIPS: microMIPS: Add vdso support.
    MIPS: microMIPS: Add unaligned access support.
    MIPS: microMIPS: Support handling of delay slots.
    MIPS: microMIPS: Add support for exception handling.
    MIPS: microMIPS: Floating point support.
    MIPS: microMIPS: Fix macro naming in micro-assembler.
    ...

    Linus Torvalds
     
  • Pull ARM SoC fixes and straggler patches from Olof Johansson:
    "A collection of fixes for fall out from 3.10 merge window, some build
    fixes and warning cleanups and a small handful of patches that were
    small and contained and made sense to still include in 3.10 (some of
    these have also been in -next since the merge window opened).

    Largest continous series is for OMAP, but there's a handful for other
    platforms.

    For i.MX, one of the patches are framebuffer fixups due to fallout
    during the merge window, and the other removes some stale and broken
    code."

    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (34 commits)
    ARM: exynos: dts: Fixed vbus-gpios
    ARM: EXYNOS5: Fix kernel dump in AFTR idle mode
    ARM: ux500: Rid ignored return value of regulator_enable() compiler warning
    ARM: ux500: read the correct soc_id number
    ARM: exynos: dts: cros5250: add cyapa trackpad
    video: mxsfb: Adapt to new videomode API
    ARM: imx: Select GENERIC_ALLOCATOR
    ARM: imx: compile fix for hotplug.c
    ARM: dts: don't assume boards are using twl4030 for omap3
    ARM: OMAP2+: Remove bogus IS_ERR_OR_NULL checking from id.c
    ARM: dts: Configure and fix the McSPI pins for 4430sdp
    ARM: dts: AM33XX: Add GPMC node
    ARM: dts: OMAP4460: Fix CPU OPP voltages
    ARM: dts: OMAP36xx: Fix CPU OPP voltages
    ARM: OMAP4+: omap2plus_defconfig: Enable audio via TWL6040 as module
    ARM: OMAP2: AM33XX: id: Add support for new AM335x PG2.1 Si
    omap: mux: add AM/DM37x gpios
    ARM: OMAP1: DMA: fix error handling in omap1_system_dma_init()
    ARM: OMAP2+: omap_device: use late_initcall_sync
    ARM: OMAP: RX-51: change probe order of touchscreen and panel SPI devices
    ...

    Linus Torvalds
     
  • Pull xtensa updates from Chris Zankel:
    "Support for the latest MMU architecture that allows for a larger
    accessible memory region, and various bug-fixes"

    * tag 'xtensa-next-20130508' of git://github.com/czankel/xtensa-linux:
    xtensa: Switch to asm-generic/linkage.h
    xtensa: fix redboot load address
    xtensa: ISS: fix timer_lock usage in rs_open
    xtensa: disable IRQs while IRQ handler is running
    xtensa: enable lockdep support
    xtensa: fix arch_irqs_disabled_flags implementation
    xtensa: add irq flags trace support
    xtensa: provide custom CALLER_ADDR* implementations
    xtensa: add stacktrace support
    xtensa: clean up stpill_registers
    xtensa: don't use a7 in simcalls
    xtensa: don't attempt to use unconfigured timers
    xtensa: provide default platform_pcibios_init implementation
    xtensa: remove KCORE_ELF again
    xtensa: document MMUv3 setup sequence
    xtensa: add MMU v3 support
    xtensa: fix ibreakenable register update
    xtensa: fix oprofile building as module

    Linus Torvalds
     
  • …pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

    From Tony Lindgren:
    Omap fixes for things that were discovered during the merge window:

    - Few GPMC fixes and binding doc updates noted after sending
    pull requests for the GPMC branch.
    - Board fixes for beagle usb host and rx51 spi probe order
    - SoC fixes dt earlyprintk, omap1 dma and omap2+ id.c error
    handling fixes

    Then few minor things that are not strictly fixes but are good
    to get out of the way:

    - Add missing legacy mux registers for am/dm73x gpio
    - Add detection for am33xx pg2.1 silicon
    - Enable twl4030 audio modules in defconfig

    * tag 'omap-for-v3.10/fixes-for-merge-window-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    ARM: OMAP2+: Remove bogus IS_ERR_OR_NULL checking from id.c
    ARM: OMAP4+: omap2plus_defconfig: Enable audio via TWL6040 as module
    ARM: OMAP2: AM33XX: id: Add support for new AM335x PG2.1 Si
    omap: mux: add AM/DM37x gpios
    ARM: OMAP1: DMA: fix error handling in omap1_system_dma_init()
    ARM: OMAP2+: omap_device: use late_initcall_sync
    ARM: OMAP: RX-51: change probe order of touchscreen and panel SPI devices
    ARM: OMAP3: Beagle: Fix USB Host on beagle xM Ax/Bx
    ARM: OMAP2+: only WARN if a GPMC child probe function fail
    ARM: OMAP2+: only search for GPMC DT child nodes on probe
    Documentation: dt: update properties in TI GPMC NAND example
    Documentation: dt: update TI GPMC ethernet binding properties

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     
  • Pull btrfs update from Chris Mason:
    "These are mostly fixes. The biggest exceptions are Josef's skinny
    extents and Jan Schmidt's code to rebuild our quota indexes if they
    get out of sync (or you enable quotas on an existing filesystem).

    The skinny extents are off by default because they are a new variation
    on the extent allocation tree format. btrfstune -x enables them, and
    the new format makes the extent allocation tree about 30% smaller.

    I rebased this a few days ago to rework Dave Sterba's crc checks on
    the super block, but almost all of these go back to rc6, since I
    though 3.9 was due any minute.

    The biggest missing fix is the tracepoint bug that was hit late in
    3.9. I ran into problems with that in overnight testing and I'm still
    tracking it down. I'll definitely have that fixed for rc2."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (101 commits)
    Btrfs: allow superblock mismatch from older mkfs
    btrfs: enhance superblock checks
    btrfs: fix misleading variable name for flags
    btrfs: use unsigned long type for extent state bits
    Btrfs: improve the loop of scrub_stripe
    btrfs: read entire device info under lock
    btrfs: remove unused gfp mask parameter from release_extent_buffer callchain
    btrfs: handle errors returned from get_tree_block_key
    btrfs: make static code static & remove dead code
    Btrfs: deal with errors in write_dev_supers
    Btrfs: remove almost all of the BUG()'s from tree-log.c
    Btrfs: deal with free space cache errors while replaying log
    Btrfs: automatic rescan after "quota enable" command
    Btrfs: rescan for qgroups
    Btrfs: split btrfs_qgroup_account_ref into four functions
    Btrfs: allocate new chunks if the space is not enough for global rsv
    Btrfs: separate sequence numbers for delayed ref tracking and tree mod log
    btrfs: move leak debug code to functions
    Btrfs: return free space in cow error path
    Btrfs: set UUID in root_item for created trees
    ...

    Linus Torvalds
     
  • Pull MTD update from David Woodhouse:

    - Lots of cleanups from Artem, including deletion of some obsolete
    drivers

    - Support partitions larger than 4GiB in device tree

    - Support for new SPI chips

    * tag 'for-linus-20130509' of git://git.infradead.org/linux-mtd: (83 commits)
    mtd: omap2: Use module_platform_driver()
    mtd: bf5xx_nand: Use module_platform_driver()
    mtd: denali_dt: Remove redundant use of of_match_ptr
    mtd: denali_dt: Change return value to fix smatch warning
    mtd: denali_dt: Use module_platform_driver()
    mtd: denali_dt: Fix incorrect error check
    mtd: nand: subpage write support for hardware based ECC schemes
    mtd: omap2: use msecs_to_jiffies()
    mtd: nand_ids: use size macros
    mtd: nand_ids: improve LEGACY_ID_NAND macro a bit
    mtd: add 4 Toshiba nand chips for the full-id case
    mtd: add the support to parse out the full-id nand type
    mtd: add new fields to nand_flash_dev{}
    mtd: sh_flctl: Use of_match_ptr() macro
    mtd: gpio: Use of_match_ptr() macro
    mtd: gpio: Use devm_kzalloc()
    mtd: davinci_nand: Use of_match_ptr()
    mtd: dataflash: Use of_match_ptr() macro
    mtd: remove h720x flash support
    mtd: onenand: remove OneNAND simulator
    ...

    Linus Torvalds
     
  • Pull removal of GENERIC_GPIO from Grant Likely:
    "GENERIC_GPIO now synonymous with GPIOLIB. There are no longer any
    valid cases for enableing GENERIC_GPIO without GPIOLIB, even though it
    is possible to do so which has been causing confusion and breakage.
    This branch does the work to completely eliminate GENERIC_GPIO."

    * tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux:
    gpio: update gpio Chinese documentation
    Remove GENERIC_GPIO config option
    Convert selectors of GENERIC_GPIO to GPIOLIB
    blackfin: force use of gpiolib
    m68k: coldfire: use gpiolib
    mips: pnx833x: remove requirement for GENERIC_GPIO
    openrisc: default GENERIC_GPIO to false
    avr32: default GENERIC_GPIO to false
    xtensa: remove explicit selection of GENERIC_GPIO
    sh: replace CONFIG_GENERIC_GPIO by CONFIG_GPIOLIB
    powerpc: remove redundant GENERIC_GPIO selection
    unicore32: default GENERIC_GPIO to false
    unicore32: remove unneeded select GENERIC_GPIO
    arm: plat-orion: use GPIO driver on CONFIG_GPIOLIB
    arm: remove redundant GENERIC_GPIO selection
    mips: alchemy: require gpiolib
    mips: txx9: change GENERIC_GPIO to GPIOLIB
    mips: loongson: use GPIO driver on CONFIG_GPIOLIB
    mips: remove redundant GENERIC_GPIO select

    Linus Torvalds
     
  • Pull slave-dmaengine updates from Vinod Koul:
    "This time we have dmatest improvements from Andy along with dw_dmac
    fixes. He has also done support for acpi for dmanegine.

    Also we have bunch of fixes going in DT support for dmanegine for
    various folks. Then Haswell and other ioat changes from Dave and
    SUDMAC support from Shimoda."

    * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (53 commits)
    dma: tegra: implement suspend/resume callbacks
    dma:of: Use a mutex to protect the of_dma_list
    dma: of: Fix of_node reference leak
    dmaengine: sirf: move driver init from module_init to subsys_initcall
    sudmac: add support for SUDMAC
    dma: sh: add Kconfig
    at_hdmac: move to generic DMA binding
    ioatdma: ioat3_alloc_sed can be static
    ioatdma: Adding write back descriptor error status support for ioatdma 3.3
    ioatdma: S1200 platforms ioatdma channel 2 and 3 falsely advertise RAID cap
    ioatdma: Adding support for 16 src PQ ops and super extended descriptors
    ioatdma: Removing hw bug workaround for CB3.x .2 and earlier
    dw_dmac: add ACPI support
    dmaengine: call acpi_dma_request_slave_channel as well
    dma: acpi-dma: introduce ACPI DMA helpers
    dma: of: Remove unnecessary list_empty check
    DMA: OF: Check properties value before running be32_to_cpup() on it
    DMA: of: Constant names
    ioatdma: skip silicon bug workaround for pq_align for cb3.3
    ioatdma: Removing PQ val disable for cb3.3
    ...

    Linus Torvalds
     
  • Pull thermal management update from Zhang Rui:
    "The most important one is to build thermal core and governor and cpu
    cooling code into one module. This fixes a regression that thermal
    core does not work if it is built as module, since 3.7. I'll backport
    them to stable kernel once those changes are in upstream.

    The largest batch is the thermal kernel-doc & coding style
    updates/cleanups from Eduardo.

    Highlights:

    - build all thermal framework code into one module to fix a
    regression that thermal does not work if it is built as module.

    - Marvell Armada 370/XP thermal sensor driver

    - thermal core/cpu cooling kernel-doc & coding style updates and
    cleanups.

    - Add Eduardo Valentin as thermal sub-maintainer, both in mailing
    list and patchwork. He will help me on arm thermal drivers."

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (68 commits)
    thermal: db8500_cpufreq_cooling: remove usage of IS_ERR_OR_NULL()
    thermal: thermal_core: remove usage of IS_ERR_OR_NULL
    thermal: cpu_cooling: improve line breaking
    thermal: cpu_cooling: alignment improvements
    thermal: cpu_cooling: remove checkpatch.pl warning
    thermal: cpu_cooling: remove trailing blank line
    thermal: cpu_cooling: align on open parenthesis
    thermal: cpu_cooling: standardize comment style
    thermal: cpu_cooling: standardize end of function
    thermal: cpu_cooling: remove trailing white spaces
    Thermal: update documentation for thermal_zone_device_register
    thermal: update kernel-doc for thermal_zone_device_register
    thermal: update kernel-doc for create_trip_attrs
    thermal: update kernel-doc for thermal_cooling_device_register
    thermal: update kernel-doc for thermal_zone_unbind_cooling_device
    thermal: update kernel-doc for thermal_zone_bind_cooling_device
    thermal: use EXPORT_SYMBOL_GPL
    thermal: rename notify_thermal_framework to thermal_notify_framework
    thermal: update driver license
    thermal: use strlcpy instead of strcpy
    ...

    Linus Torvalds
     

09 May, 2013

5 commits

  • Signed-off-by: Max Filippov
    Signed-off-by: Chris Zankel

    Max Filippov
     
  • Tony Lindgren
     
  • Pull f2fs updates from Jaegeuk Kim:
    "This patch-set includes the following major enhancement patches.
    - introduce a new gloabl lock scheme
    - add tracepoints on several major functions
    - fix the overall cleaning process focused on victim selection
    - apply the block plugging to merge IOs as much as possible
    - enhance management of free nids and its list
    - enhance the readahead mode for node pages
    - address several cretical deadlock conditions
    - reduce lock_page calls

    The other minor bug fixes and enhancements are as follows.
    - calculation mistakes: overflow
    - bio types: READ, READA, and READ_SYNC
    - fix the recovery flow, data races, and null pointer errors"

    * tag 'f2fs-for-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (68 commits)
    f2fs: cover free_nid management with spin_lock
    f2fs: optimize scan_nat_page()
    f2fs: code cleanup for scan_nat_page() and build_free_nids()
    f2fs: bugfix for alloc_nid_failed()
    f2fs: recover when journal contains deleted files
    f2fs: continue to mount after failing recovery
    f2fs: avoid deadlock during evict after f2fs_gc
    f2fs: modify the number of issued pages to merge IOs
    f2fs: remove useless #include as we're now using sysfs as debug entry.
    f2fs: fix inconsistent using of NM_WOUT_THRESHOLD
    f2fs: check truncation of mapping after lock_page
    f2fs: enhance alloc_nid and build_free_nids flows
    f2fs: add a tracepoint on f2fs_new_inode
    f2fs: check nid == 0 in add_free_nid
    f2fs: add REQ_META about metadata requests for submit
    f2fs: give a chance to merge IOs by IO scheduler
    f2fs: avoid frequent background GC
    f2fs: add tracepoints to debug checkpoint request
    f2fs: add tracepoints for write page operations
    f2fs: add tracepoints to debug the block allocation
    ...

    Linus Torvalds
     
  • Pull block driver updates from Jens Axboe:
    "It might look big in volume, but when categorized, not a lot of
    drivers are touched. The pull request contains:

    - mtip32xx fixes from Micron.

    - A slew of drbd updates, this time in a nicer series.

    - bcache, a flash/ssd caching framework from Kent.

    - Fixes for cciss"

    * 'for-3.10/drivers' of git://git.kernel.dk/linux-block: (66 commits)
    bcache: Use bd_link_disk_holder()
    bcache: Allocator cleanup/fixes
    cciss: bug fix to prevent cciss from loading in kdump crash kernel
    cciss: add cciss_allow_hpsa module parameter
    drivers/block/mg_disk.c: add CONFIG_PM_SLEEP to suspend/resume functions
    mtip32xx: Workaround for unaligned writes
    bcache: Make sure blocksize isn't smaller than device blocksize
    bcache: Fix merge_bvec_fn usage for when it modifies the bvm
    bcache: Correctly check against BIO_MAX_PAGES
    bcache: Hack around stuff that clones up to bi_max_vecs
    bcache: Set ra_pages based on backing device's ra_pages
    bcache: Take data offset from the bdev superblock.
    mtip32xx: mtip32xx: Disable TRIM support
    mtip32xx: fix a smatch warning
    bcache: Disable broken btree fuzz tester
    bcache: Fix a format string overflow
    bcache: Fix a minor memory leak on device teardown
    bcache: Documentation updates
    bcache: Use WARN_ONCE() instead of __WARN()
    bcache: Add missing #include
    ...

    Linus Torvalds
     
  • Pull block core updates from Jens Axboe:

    - Major bit is Kents prep work for immutable bio vecs.

    - Stable candidate fix for a scheduling-while-atomic in the queue
    bypass operation.

    - Fix for the hang on exceeded rq->datalen 32-bit unsigned when merging
    discard bios.

    - Tejuns changes to convert the writeback thread pool to the generic
    workqueue mechanism.

    - Runtime PM framework, SCSI patches exists on top of these in James'
    tree.

    - A few random fixes.

    * 'for-3.10/core' of git://git.kernel.dk/linux-block: (40 commits)
    relay: move remove_buf_file inside relay_close_buf
    partitions/efi.c: replace useless kzalloc's by kmalloc's
    fs/block_dev.c: fix iov_shorten() criteria in blkdev_aio_read()
    block: fix max discard sectors limit
    blkcg: fix "scheduling while atomic" in blk_queue_bypass_start
    Documentation: cfq-iosched: update documentation help for cfq tunables
    writeback: expose the bdi_wq workqueue
    writeback: replace custom worker pool implementation with unbound workqueue
    writeback: remove unused bdi_pending_list
    aoe: Fix unitialized var usage
    bio-integrity: Add explicit field for owner of bip_buf
    block: Add an explicit bio flag for bios that own their bvec
    block: Add bio_alloc_pages()
    block: Convert some code to bio_for_each_segment_all()
    block: Add bio_for_each_segment_all()
    bounce: Refactor __blk_queue_bounce to not use bi_io_vec
    raid1: use bio_copy_data()
    pktcdvd: Use bio_reset() in disabled code to kill bi_idx usage
    pktcdvd: use bio_copy_data()
    block: Add bio_copy_data()
    ...

    Linus Torvalds
     

08 May, 2013

8 commits

  • Merge more incoming from Andrew Morton:

    - Various fixes which were stalled or which I picked up recently

    - A large rotorooting of the AIO code. Allegedly to improve
    performance but I don't really have good performance numbers (I might
    have lost the email) and I can't raise Kent today. I held this out
    of 3.9 and we could give it another cycle if it's all too late/scary.

    I ended up taking only the first two thirds of the AIO rotorooting. I
    left the percpu parts and the batch completion for later. - Linus

    * emailed patches from Andrew Morton : (33 commits)
    aio: don't include aio.h in sched.h
    aio: kill ki_retry
    aio: kill ki_key
    aio: give shared kioctx fields their own cachelines
    aio: kill struct aio_ring_info
    aio: kill batch allocation
    aio: change reqs_active to include unreaped completions
    aio: use cancellation list lazily
    aio: use flush_dcache_page()
    aio: make aio_read_evt() more efficient, convert to hrtimers
    wait: add wait_event_hrtimeout()
    aio: refcounting cleanup
    aio: make aio_put_req() lockless
    aio: do fget() after aio_get_req()
    aio: dprintk() -> pr_debug()
    aio: move private stuff out of aio.h
    aio: add kiocb_cancel()
    aio: kill return value of aio_complete()
    char: add aio_{read,write} to /dev/{null,zero}
    aio: remove retry-based AIO
    ...

    Linus Torvalds
     
  • This exports the amount of anonymous transparent hugepages for each
    memcg via the new "rss_huge" stat in memory.stat. The units are in
    bytes.

    This is helpful to determine the hugepage utilization for individual
    jobs on the system in comparison to rss and opportunities where
    MADV_HUGEPAGE may be helpful.

    The amount of anonymous transparent hugepages is also included in "rss"
    for backwards compatibility.

    Signed-off-by: David Rientjes
    Acked-by: Michal Hocko
    Acked-by: Johannes Weiner
    Cc: KAMEZAWA Hiroyuki
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Rientjes
     
  • This patch adds binding documentation for the
    compatible values of the Ralink MIPS SoCs.

    Signed-off-by: Gabor Juhos
    Signed-off-by: John Crispin
    Acked-by: Grant Likely
    Patchwork: http://patchwork.linux-mips.org/patch/5187/

    Gabor Juhos
     
  • Signed-off-by: John Crispin
    Acked-by: Grant Likely

    John Crispin
     
  • Pull late ARM Exynos multiplatform changes from Arnd Bergmann:
    "These continue the multiplatform support for exynos, adding support
    for building most of the essential drivers (clocksource, clk, irqchip)
    when combined with other platforms. As a result, it should become
    really easy to add full multiplatform exynos support in 3.11, although
    we don't yet enable it for 3.10.

    The changes were not included in the earlier multiplatform series in
    order to avoid clashes with the other Exynos updates.

    This also includes work from Tomasz Figa to fix the pwm clocksource
    code on Exynos, which is not strictly required for multiplatform, but
    related to the other patches in this set and needed as a bug fix for
    at least one board."

    * tag 'multiplatform-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (22 commits)
    ARM: dts: exynops4210: really add universal_c210 dts
    ARM: dts: exynos4210: Add basic dts file for universal_c210 board
    ARM: dts: exynos4: Add node for PWM device
    ARM: SAMSUNG: Do not register legacy timer interrupts on Exynos
    clocksource: samsung_pwm_timer: Work around rounding errors in clockevents core
    clocksource: samsung_pwm_timer: Correct programming of clock events
    clocksource: samsung_pwm_timer: Use proper clockevents max_delta
    clocksource: samsung_pwm_timer: Add support for non-DT platforms
    clocksource: samsung_pwm_timer: Drop unused samsung_pwm struct
    clocksource: samsung_pwm_timer: Keep all driver data in a structure
    clocksource: samsung_pwm_timer: Make PWM spinlock global
    clocksource: samsung_pwm_timer: Let platforms select the driver
    Documentation: Add device tree bindings for Samsung PWM timers
    clocksource: add samsung pwm timer driver
    irqchip: exynos: look up irq using irq_find_mapping
    irqchip: exynos: pass irq_base from platform
    irqchip: exynos: localize irq lookup for ATAGS
    irqchip: exynos: allocate combiner_data dynamically
    irqchip: exynos: pass max combiner number to combiner_init
    ARM: exynos: add missing properties for combiner IRQs
    ...

    Linus Torvalds
     
  • Pull ARM SoC late cleanups from Arnd Bergmann:
    "These are cleanups and smaller changes that either depend on earlier
    feature branches or came in late during the development cycle. We
    normally try to get all cleanups early, so these are the exceptions:

    - A follow-up on the clocksource reworks, hopefully the last time we
    need to merge clocksource subsystem changes through arm-soc.

    A first set of patches was part of the original 3.10 arm-soc
    cleanup series because of interdependencies with timer drivers now
    moved out of arch/arm.

    - Migrating the SPEAr13xx platform away from using auxdata for DMA
    channel descriptions towards using information in device tree,
    based on the earlier SPEAr multiplatform series

    - A few follow-ups on the Atmel SAMA5 support and other changes for
    Atmel at91 based on the larger at91 reworks.

    - Moving the armada irqchip implementation to drivers/irqchip

    - Several OMAP cleanups following up on the larger series already
    merged in 3.10."

    * tag 'cleanup-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (50 commits)
    ARM: OMAP4: change the device names in usb_bind_phy
    ARM: OMAP2+: Fix mismerge for timer.c between ff931c82 and da4a686a
    ARM: SPEAr: conditionalize SMP code
    ARM: arch_timer: Silence debug preempt warnings
    ARM: OMAP: remove unused variable
    serial: amba-pl011: fix !CONFIG_DMA_ENGINE case
    ata: arasan: remove the need for platform_data
    ARM: at91/sama5d34ek.dts: remove not needed compatibility string
    ARM: at91: dts: add MCI DMA support
    ARM: at91: dts: add i2c dma support
    ARM: at91: dts: set #dma-cells to the correct value
    ARM: at91: suspend both memory controllers on at91sam9263
    irqchip: armada-370-xp: slightly cleanup irq controller driver
    irqchip: armada-370-xp: move IRQ handler to avoid forward declaration
    irqchip: move IRQ driver for Armada 370/XP
    ARM: mvebu: move L2 cache initialization in init_early()
    devtree: add binding documentation for sp804
    ARM: integrator-cp: convert use CLKSRC_OF for timer init
    ARM: versatile: use OF init for sp804 timer
    ARM: versatile: add versatile dtbs to dtbs target
    ...

    Linus Torvalds
     
  • Pull ARM SoC device tree updates (part 2) from Arnd Bergmann:
    "These are mostly new device tree bindings for existing drivers, as
    well as changes to the device tree source files to add support for
    those devices, and a couple of new boards, most notably Samsung's
    Exynos5 based Chromebook.

    The changes depend on earlier platform specific updates and touch the
    usual platforms: omap, exynos, tegra, mxs, mvebu and davinci."

    * tag 'dt-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (169 commits)
    ARM: exynos: dts: cros5250: add EC device
    ARM: dts: Add sbs-battery for exynos5250-snow
    ARM: dts: Add i2c-arbitrator bus for exynos5250-snow
    ARM: dts: add mshc controller node for Exynos4x12 SoCs
    ARM: dts: Add chip-id controller node on Exynos4/5 SoC
    ARM: EXYNOS: Create virtual I/O mapping for Chip-ID controller using device tree
    ARM: davinci: da850-evm: add SPI flash support
    ARM: davinci: da850: override SPI DT node device name
    ARM: davinci: da850: add SPI1 DT node
    spi/davinci: add DT binding documentation
    spi/davinci: no wildcards in DT compatible property
    ARM: dts: mvebu: Convert mvebu device tree files to 64 bits
    ARM: dts: mvebu: introduce internal-regs node
    ARM: dts: mvebu: Convert all the mvebu files to use the range property
    ARM: dts: mvebu: move all peripherals inside soc
    ARM: dts: mvebu: fix cpus section indentation
    ARM: davinci: da850: add EHRPWM & ECAP DT node
    ARM/dts: OMAP3: fix pinctrl-single configuration
    ARM: dts: Add OMAP3430 SDP NOR flash memory binding
    ARM: dts: Add NOR flash bindings for OMAP2420 H4
    ...

    Linus Torvalds
     
  • Pull ARM SoC platform updates (part 3) from Arnd Bergmann:
    "This is the third and smallest of the SoC specific updates. Changes
    include:

    - SMP support for the Xilinx zynq platform
    - Smaller imx changes
    - LPAE support for mvebu
    - Moving the orion5x, kirkwood, dove and mvebu platforms to a common
    "mbus" driver for their internal devices.

    It would be good to get feedback on the location of the "mbus" driver.
    Since this is used on multiple platforms may potentially get shared
    with other architectures (powerpc and arm64), it was moved to
    drivers/bus/. We expect other similar drivers to get moved to the
    same place in order to avoid creating more top-level directories under
    drivers/ or cluttering up the messy drivers/misc/ even more."

    * tag 'soc-for-linus-3' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (50 commits)
    ARM: imx: reset_controller may be disabled
    ARM: mvebu: Align the internal registers virtual base to support LPAE
    ARM: mvebu: Limit the DMA zone when LPAE is selected
    arm: plat-orion: remove addr-map code
    arm: mach-mv78xx0: convert to use the mvebu-mbus driver
    arm: mach-orion5x: convert to use mvebu-mbus driver
    arm: mach-dove: convert to use mvebu-mbus driver
    arm: mach-kirkwood: convert to use mvebu-mbus driver
    arm: mach-mvebu: convert to use mvebu-mbus driver
    ARM i.MX53: set CLK_SET_RATE_PARENT flag on the tve_ext_sel clock
    ARM i.MX53: tve_di clock is not part of the CCM, but of TVE
    ARM i.MX53: make tve_ext_sel propagate rate change to PLL
    ARM i.MX53: Remove unused tve_gate clkdev entry
    ARM i.MX5: Remove tve_sel clock from i.MX53 clock tree
    ARM: i.MX5: Add PATA and SRTC clocks
    ARM: imx: do not bring up unavailable cores
    ARM: imx: add initial imx6dl support
    ARM: imx1: mm: add call to mxc_device_init
    ARM: imx_v4_v5_defconfig: Add CONFIG_GPIO_SYSFS
    ARM: imx_v6_v7_defconfig: Select CONFIG_PERF_EVENTS
    ...

    Linus Torvalds
     

07 May, 2013

13 commits

  • Pull misc kbuild updates from Michal Marek:
    "Non-critical kbuild changes:

    - make coccicheck improvements, but no new semantic patches this time

    - make rpm improvements

    - make tar-pkg change to include the architecture in the filename.

    This is a deliberate incompatibility, but nobody has complained so
    far and it is useful if you build for different architectures. It
    also matches what the deb-pkg and rpm-pkg targets produce.

    - kbuild documentation fix"

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    rpm-pkg: Remove pointless set -e statements
    rpm-pkg: Always regenerate the specfile
    rpm-pkg: Do not write to the parent directory
    rpm-pkg: Do not package the whole source directory
    buildtar: Add ARCH to the archive name
    Coccinelle: Fix patch output when coccicheck is used with M= and C=
    Coccinelle: Add support to the SPFLAGS variable
    Coccinelle: Cleanup the setting of the FLAGS and OPTIONS variables
    Coccinelle: Restore coccicheck verbosity in ONLINE mode (C=1 or C=2)
    scripts/package/Makefile: compare objtree with srctree instead of test KBUILD_OUTPUT
    doc: change example to existing Makefile fragment
    scripts/tags.sh: Add magic for OFFSET and DEFINE

    Linus Torvalds
     
  • Pull kconfig updates from Michal Marek:
    - use pkg-config to detect curses libraries
    - clean up the way curses headers are searched
    - Some randconfig fixes, of which one had to be reverted
    - KCONFIG_SEED for randconfig debugging
    - memuconfig memory leak plugged
    - menuconfig > breadcrumbs > navigation
    - xconfig compilation fix
    - Other minor fixes

    * 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    kconfig: fix lists definition for C++
    Revert "kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG"
    kconfig: implement KCONFIG_PROBABILITY for randconfig
    kconfig: allow specifying the seed for randconfig
    kconfig: fix randomising choice entries in presence of KCONFIG_ALLCONFIG
    kconfig: do not override symbols already set
    kconfig: fix randconfig tristate detection
    kconfig/lxdialog: rationalise the include paths where to find {.n}curses{,w}.h
    menuconfig: Add "breadcrumbs" navigation aid
    menuconfig: Fix memory leak introduced by jump keys feature
    merge_config.sh: Avoid creating unnessary source softlinks
    kconfig: optionally use pkg-config to detect ncurses libs
    menuconfig: optionally use pkg-config to detect ncurses libs

    Linus Torvalds
     
  • Pull kbuild changes from Michal Marek:
    "Kbuild commits for v3.10-rc1:

    - Fix make mrproper after mod/file2alias rework
    - Fix ld-option Makefile function
    - Rewrite headers_install to shell to drop Perl dependency.

    There are some more patches I have to look at, so I might send another
    pull request later. Or just queue them for 3.11."

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    Fix cleaning in scripts/mod
    headers_install.pl: convert to headers_install.sh
    kbuild: fix ld-option function

    Linus Torvalds
     
  • Pull LED subsystem updates from Bryan Wu:
    - move LED trigger drivers into a new directory
    - lp55xx common driver updates
    - other led drivers updates and bug fixing

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds:
    leds: leds-asic3: switch to using SIMPLE_DEV_PM_OPS
    leds: leds-bd2802: add CONFIG_PM_SLEEP to suspend/resume functions
    leds: lp55xx: configure the clock detection
    leds: lp55xx: use common clock framework when external clock is used
    leds: leds-ns2: fix oops at module removal
    leds: leds-pwm: Defer led_pwm_set() if PWM can sleep
    leds: lp55xx: fix the sysfs read operation
    leds: lm355x, lm3642: support camera LED triggers for flash and torch
    leds: add camera LED triggers
    leds: trigger: use inline functions instead of macros
    leds: tca6507: Use of_match_ptr() macro
    leds: wm8350: Complain if we fail to reenable DCDC
    leds: renesas: set gpio_request_one() flags param correctly
    leds: leds-ns2: set devm_gpio_request_one() flags param correctly
    leds: leds-lt3593: set devm_gpio_request_one() flags param correctly
    leds: leds-bd2802: remove erroneous __exit annotation
    leds: atmel-pwm: remove erroneous __exit annotation
    leds: move LED trigger drivers into new subdirectory
    leds: add new LP5562 LED driver

    Linus Torvalds
     
  • Pull GPIO changes from Grant Likely:
    "The usual selection of bug fixes and driver updates for GPIO. Nothing
    really stands out except the addition of the GRGPIO driver and some
    enhacements to ACPI support"

    I'm pulling this despite the earlier mess. Let's hope it compiles these
    days.

    * tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux: (46 commits)
    gpio: grgpio: Add irq support
    gpio: grgpio: Add device driver for GRGPIO cores
    gpiolib-acpi: introduce acpi_get_gpio_by_index() helper
    GPIO: gpio-generic: remove kfree() from bgpio_remove call
    gpio / ACPI: Handle ACPI events in accordance with the spec
    gpio: lpc32xx: Fix off-by-one valid range checking for bank
    gpio: mcp23s08: convert driver to DT
    gpio/omap: force restore if context loss is not detectable
    gpio/omap: optimise interrupt service routine
    gpio/omap: remove extra context restores in *_runtime_resume()
    gpio/omap: free irq domain in probe() failure paths
    gpio: gpio-generic: Add 16 and 32 bit big endian byte order support
    gpio: samsung: Add terminating entry for exynos_pinctrl_ids
    gpio: mvebu: add dbg_show function
    MAX7301 GPIO: Do not force SPI speed when using OF Platform
    gpio: gpio-tps65910.c: fix checkpatch error
    gpio: gpio-timberdale.c: fix checkpatch error
    gpio: gpio-tc3589x.c: fix checkpatch errors
    gpio: gpio-stp-xway.c: fix checkpatch error
    gpio: gpio-sch.c: fix checkpatch error
    ...

    Linus Torvalds
     
  • Pull pwm changes from Thierry Reding:
    "Nothing very exciting this time around. A couple of bug fixes and a
    lot of cleanup across the board. The DaVinci 8xx family of SoCs now
    use the same driver as the AM33xx family.

    Many thanks to Axel Lin and Jingoo Han who have done a great job
    fixing various bugs and inconsistencies."

    * tag 'for-3.10-rc1' of git://gitorious.org/linux-pwm/linux-pwm: (27 commits)
    pwm: lpc32xx: Don't change PWM_ENABLE bit in lpc32xx_pwm_config
    pwm: lpc32xx: Properly set PWM_ENABLE bit in lpc32xx_pwm_[enable|disable]
    pwm: Constify OF match tables
    pwm: pwm-tiehrpwm: Update device-tree binding document
    pwm: pwm-tiecap: Update device-tree binding document
    pwm: puv3: Remove unused enabled filed from struct puv3_pwm_chip
    pwm: pxa: Remove PWM_ID_BASE macro
    pwm: spear: Remove unused *dev from struct spear_pwm_chip
    pwm: mxs: Remove unused *dev from struct mxs_pwm_chip
    pwm: twl: Return proper error if twl6030_pwm_enable() fails
    pwm: pxa: Remove clk_enabled field from struct pxa_pwm_chip
    pwm: imx: Remove enabled field from struct imx_chip
    pwm: twl: Add .owner to struct pwm_ops
    pwm: twl-led: Add .owner to struct pwm_ops
    pwm: atmel-tcb: Add .owner to struct pwm_ops
    pwm: ab8500: Add .owner to struct pwm_ops
    pwm: spear: Fix checking return value of clk_enable() and clk_prepare()
    pwm: tiehrpwm: Staticize non-exported symbols
    pwm: tiecap: Staticize non-exported symbols
    pwm: ab8500: Fix trivial typo in dev_err message
    ...

    Linus Torvalds
     
  • Pull IOMMU updates from Joerg Roedel:
    "The updates are mostly about the x86 IOMMUs this time.

    Exceptions are the groundwork for the PAMU IOMMU from Freescale (for a
    PPC platform) and an extension to the IOMMU group interface.

    On the x86 side this includes a workaround for VT-d to disable
    interrupt remapping on broken chipsets. On the AMD-Vi side the most
    important new feature is a kernel command-line interface to override
    broken information in IVRS ACPI tables and get interrupt remapping
    working this way.

    Besides that there are small fixes all over the place."

    * tag 'iommu-updates-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (24 commits)
    iommu/tegra: Fix printk formats for dma_addr_t
    iommu: Add a function to find an iommu group by id
    iommu/vt-d: Remove warning for HPET scope type
    iommu: Move swap_pci_ref function to drivers/iommu/pci.h.
    iommu/vt-d: Disable translation if already enabled
    iommu/amd: fix error return code in early_amd_iommu_init()
    iommu/AMD: Per-thread IOMMU Interrupt Handling
    iommu: Include linux/err.h
    iommu/amd: Workaround for ERBT1312
    iommu/amd: Document ivrs_ioapic and ivrs_hpet parameters
    iommu/amd: Don't report firmware bugs with cmd-line ivrs overrides
    iommu/amd: Add ioapic and hpet ivrs override
    iommu/amd: Add early maps for ioapic and hpet
    iommu/amd: Extend IVRS special device data structure
    iommu/amd: Move add_special_device() to __init
    iommu: Fix compile warnings with forward declarations
    iommu/amd: Properly initialize irq-table lock
    iommu/amd: Use AMD specific data structure for irq remapping
    iommu/amd: Remove map_sg_no_iommu()
    iommu/vt-d: add quirk for broken interrupt remapping on 55XX chipsets
    ...

    Linus Torvalds
     
  • This series from Tomasz Figa restores support for the pwm clocksource
    in Exynos, which was broken during the conversion of the platform
    to the common clk framework. The clocksource is only used in one
    board in the mainline kernel (universal_c210), and this makes it
    work for DT based probing as well as restoring the non-DT based
    case.

    * exynos/pwm-clocksource:
    ARM: dts: exynops4210: really add universal_c210 dts
    ARM: dts: exynos4210: Add basic dts file for universal_c210 board
    ARM: dts: exynos4: Add node for PWM device
    ARM: SAMSUNG: Do not register legacy timer interrupts on Exynos
    clocksource: samsung_pwm_timer: Work around rounding errors in clockevents core
    clocksource: samsung_pwm_timer: Correct programming of clock events
    clocksource: samsung_pwm_timer: Use proper clockevents max_delta
    clocksource: samsung_pwm_timer: Add support for non-DT platforms
    clocksource: samsung_pwm_timer: Drop unused samsung_pwm struct
    clocksource: samsung_pwm_timer: Keep all driver data in a structure
    clocksource: samsung_pwm_timer: Make PWM spinlock global
    clocksource: samsung_pwm_timer: Let platforms select the driver
    Documentation: Add device tree bindings for Samsung PWM timers
    clocksource: add samsung pwm timer driver

    Conflicts:
    arch/arm/boot/dts/Makefile
    arch/arm/mach-exynos/common.c
    drivers/clocksource/Kconfig
    drivers/clocksource/Makefile

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • There is no reason to keep the clksrc cleanups separate from the
    other cleanups, and this resolves some merge conflicts.

    Conflicts:
    arch/arm/mach-spear/spear13xx.c
    drivers/irqchip/Makefile

    Arnd Bergmann
     
  • This is support for the ARM Chromebook, originally scheduled
    as a "late" pull request. Since it's already late now, we
    can combine this into the existing next/dt2 branch.

    * late/dt:
    ARM: exynos: dts: cros5250: add EC device
    ARM: dts: Add sbs-battery for exynos5250-snow
    ARM: dts: Add i2c-arbitrator bus for exynos5250-snow
    ARM: dts: Add chip-id controller node on Exynos4/5 SoC
    ARM: EXYNOS: Create virtual I/O mapping for Chip-ID controller using device tree

    Arnd Bergmann
     
  • Pull Ceph changes from Alex Elder:
    "This is a big pull.

    Most of it is culmination of Alex's work to implement RBD image
    layering, which is now complete (yay!).

    There is also some work from Yan to fix i_mutex behavior surrounding
    writes in cephfs, a sync write fix, a fix for RBD images that get
    resized while they are mapped, and a few patches from me that resolve
    annoying auth warnings and fix several bugs in the ceph auth code."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (254 commits)
    rbd: fix image request leak on parent read
    libceph: use slab cache for osd client requests
    libceph: allocate ceph message data with a slab allocator
    libceph: allocate ceph messages with a slab allocator
    rbd: allocate image object names with a slab allocator
    rbd: allocate object requests with a slab allocator
    rbd: allocate name separate from obj_request
    rbd: allocate image requests with a slab allocator
    rbd: use binary search for snapshot lookup
    rbd: clear EXISTS flag if mapped snapshot disappears
    rbd: kill off the snapshot list
    rbd: define rbd_snap_size() and rbd_snap_features()
    rbd: use snap_id not index to look up snap info
    rbd: look up snapshot name in names buffer
    rbd: drop obj_request->version
    rbd: drop rbd_obj_method_sync() version parameter
    rbd: more version parameter removal
    rbd: get rid of some version parameters
    rbd: stop tracking header object version
    rbd: snap names are pointer to constant data
    ...

    Linus Torvalds
     
  • Document all current btrfs mount options.

    Signed-off-by: Eric Sandeen
    Signed-off-by: Josef Bacik

    Eric Sandeen
     
  • Pull more s390 updates from Martin Schwidefsky:
    "This is the second batch of s390 patches for the 3.10 merge window.

    Heiko improved the memory detection, this fixes kdump for large memory
    sizes. Some kvm related memory management work, new ipldev/condev
    keywords in cio and bug fixes."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
    s390/mem_detect: remove artificial kdump memory types
    s390/mm: add pte invalidation notifier for kvm
    s390/zcrypt: ap bus rescan problem when toggle crypto adapters on/off
    s390/memory hotplug,sclp: get rid of per memory increment usecount
    s390/memory hotplug: provide memory_block_size_bytes() function
    s390/mem_detect: limit memory detection loop to "mem=" parameter
    s390/kdump,bootmem: fix bootmem allocator bitmap size
    s390: get rid of odd global real_memory_size
    s390/kvm: Change the virtual memory mapping location for Virtio devices
    s390/zcore: calculate real memory size using own get_mem_size function
    s390/mem_detect: add DAT sanity check
    s390/mem_detect: fix lockdep irq tracing
    s390/mem_detect: move memory detection code to mm folder
    s390/zfcpdump: exploit new cio_ignore keywords
    s390/cio: add condev keyword to cio_ignore
    s390/cio: add ipldev keyword to cio_ignore
    s390/uaccess: add "fallthrough" comments

    Linus Torvalds
     

06 May, 2013

3 commits

  • Pull MFD update from Samuel Ortiz:
    "For 3.10 we have a few new MFD drivers for:

    - The ChromeOS embedded controller which provides keyboard, battery
    and power management services. This controller is accessible
    through i2c or SPI.

    - Silicon Laboratories 476x controller, providing access to their FM
    chipset and their audio codec.

    - Realtek's RTS5249, a memory stick, MMC and SD/SDIO PCI based
    reader.

    - Nokia's Tahvo power button and watchdog device. This device is
    very similar to Retu and is thus supported by the same code base.

    - STMicroelectronics STMPE1801, a keyboard and GPIO controller
    supported by the stmpe driver.

    - ST-Ericsson AB8540 and AB8505 power management and voltage
    converter controllers through the existing ab8500 code.

    Some other drivers got cleaned up or improved. In particular:

    - The Linaro/STE guys got the ab8500 driver in sync with their
    internal code through a series of optimizations, fixes and
    improvements.

    - The AS3711 and OMAP USB drivers now have DT support.

    - The arizona clock and interrupt handling code got improved.

    - The wm5102 register patch and boot mechanism also got improved."

    * tag 'mfd-3.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-next: (104 commits)
    mfd: si476x: Don't use 0bNNN
    mfd: vexpress: Handle pending config transactions
    mfd: ab8500: Export ab8500_gpadc_sw_hw_convert properly
    mfd: si476x: Fix i2c warning
    mfd: si476x: Add header files and Kbuild plumbing
    mfd: si476x: Add chip properties handling code
    mfd: si476x: Add the bulk of the core driver
    mfd: si476x: Add commands abstraction layer
    mfd: rtsx: Support RTS5249
    mfd: retu: Add Tahvo support
    mfd: ucb1400: Pass ucb1400-gpio data through ac97 bus
    mfd: wm8994: Add some OF properties
    mfd: wm8994: Add device ID data to WM8994 OF device IDs
    input: Export matrix_keypad_parse_of_params()
    mfd: tps65090: Add compatible string for charger subnode
    mfd: db8500-prcmu: Support platform dependant device selection
    mfd: syscon: Fix warnings when printing resource_size_t
    of: Add stub of_get_parent for non-OF builds
    mfd: omap-usb-tll: Convert to devm_ioremap_resource()
    mfd: omap-usb-host: Convert to devm_ioremap_resource()
    ...

    Linus Torvalds
     
  • Pull kvm updates from Gleb Natapov:
    "Highlights of the updates are:

    general:
    - new emulated device API
    - legacy device assignment is now optional
    - irqfd interface is more generic and can be shared between arches

    x86:
    - VMCS shadow support and other nested VMX improvements
    - APIC virtualization and Posted Interrupt hardware support
    - Optimize mmio spte zapping

    ppc:
    - BookE: in-kernel MPIC emulation with irqfd support
    - Book3S: in-kernel XICS emulation (incomplete)
    - Book3S: HV: migration fixes
    - BookE: more debug support preparation
    - BookE: e6500 support

    ARM:
    - reworking of Hyp idmaps

    s390:
    - ioeventfd for virtio-ccw

    And many other bug fixes, cleanups and improvements"

    * tag 'kvm-3.10-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (204 commits)
    kvm: Add compat_ioctl for device control API
    KVM: x86: Account for failing enable_irq_window for NMI window request
    KVM: PPC: Book3S: Add API for in-kernel XICS emulation
    kvm/ppc/mpic: fix missing unlock in set_base_addr()
    kvm/ppc: Hold srcu lock when calling kvm_io_bus_read/write
    kvm/ppc/mpic: remove users
    kvm/ppc/mpic: fix mmio region lists when multiple guests used
    kvm/ppc/mpic: remove default routes from documentation
    kvm: KVM_CAP_IOMMU only available with device assignment
    ARM: KVM: iterate over all CPUs for CPU compatibility check
    KVM: ARM: Fix spelling in error message
    ARM: KVM: define KVM_ARM_MAX_VCPUS unconditionally
    KVM: ARM: Fix API documentation for ONE_REG encoding
    ARM: KVM: promote vfp_host pointer to generic host cpu context
    ARM: KVM: add architecture specific hook for capabilities
    ARM: KVM: perform HYP initilization for hotplugged CPUs
    ARM: KVM: switch to a dual-step HYP init code
    ARM: KVM: rework HYP page table freeing
    ARM: KVM: enforce maximum size for identity mapped code
    ARM: KVM: move to a KVM provided HYP idmap
    ...

    Linus Torvalds
     
  • Pull 'full dynticks' support from Ingo Molnar:
    "This tree from Frederic Weisbecker adds a new, (exciting! :-) core
    kernel feature to the timer and scheduler subsystems: 'full dynticks',
    or CONFIG_NO_HZ_FULL=y.

    This feature extends the nohz variable-size timer tick feature from
    idle to busy CPUs (running at most one task) as well, potentially
    reducing the number of timer interrupts significantly.

    This feature got motivated by real-time folks and the -rt tree, but
    the general utility and motivation of full-dynticks runs wider than
    that:

    - HPC workloads get faster: CPUs running a single task should be able
    to utilize a maximum amount of CPU power. A periodic timer tick at
    HZ=1000 can cause a constant overhead of up to 1.0%. This feature
    removes that overhead - and speeds up the system by 0.5%-1.0% on
    typical distro configs even on modern systems.

    - Real-time workload latency reduction: CPUs running critical tasks
    should experience as little jitter as possible. The last remaining
    source of kernel-related jitter was the periodic timer tick.

    - A single task executing on a CPU is a pretty common situation,
    especially with an increasing number of cores/CPUs, so this feature
    helps desktop and mobile workloads as well.

    The cost of the feature is mainly related to increased timer
    reprogramming overhead when a CPU switches its tick period, and thus
    slightly longer to-idle and from-idle latency.

    Configuration-wise a third mode of operation is added to the existing
    two NOHZ kconfig modes:

    - CONFIG_HZ_PERIODIC: [formerly !CONFIG_NO_HZ], now explicitly named
    as a config option. This is the traditional Linux periodic tick
    design: there's a HZ tick going on all the time, regardless of
    whether a CPU is idle or not.

    - CONFIG_NO_HZ_IDLE: [formerly CONFIG_NO_HZ=y], this turns off the
    periodic tick when a CPU enters idle mode.

    - CONFIG_NO_HZ_FULL: this new mode, in addition to turning off the
    tick when a CPU is idle, also slows the tick down to 1 Hz (one
    timer interrupt per second) when only a single task is running on a
    CPU.

    The .config behavior is compatible: existing !CONFIG_NO_HZ and
    CONFIG_NO_HZ=y settings get translated to the new values, without the
    user having to configure anything. CONFIG_NO_HZ_FULL is turned off by
    default.

    This feature is based on a lot of infrastructure work that has been
    steadily going upstream in the last 2-3 cycles: related RCU support
    and non-periodic cputime support in particular is upstream already.

    This tree adds the final pieces and activates the feature. The pull
    request is marked RFC because:

    - it's marked 64-bit only at the moment - the 32-bit support patch is
    small but did not get ready in time.

    - it has a number of fresh commits that came in after the merge
    window. The overwhelming majority of commits are from before the
    merge window, but still some aspects of the tree are fresh and so I
    marked it RFC.

    - it's a pretty wide-reaching feature with lots of effects - and
    while the components have been in testing for some time, the full
    combination is still not very widely used. That it's default-off
    should reduce its regression abilities and obviously there are no
    known regressions with CONFIG_NO_HZ_FULL=y enabled either.

    - the feature is not completely idempotent: there is no 100%
    equivalent replacement for a periodic scheduler/timer tick. In
    particular there's ongoing work to map out and reduce its effects
    on scheduler load-balancing and statistics. This should not impact
    correctness though, there are no known regressions related to this
    feature at this point.

    - it's a pretty ambitious feature that with time will likely be
    enabled by most Linux distros, and we'd like you to make input on
    its design/implementation, if you dislike some aspect we missed.
    Without flaming us to crisp! :-)

    Future plans:

    - there's ongoing work to reduce 1Hz to 0Hz, to essentially shut off
    the periodic tick altogether when there's a single busy task on a
    CPU. We'd first like 1 Hz to be exposed more widely before we go
    for the 0 Hz target though.

    - once we reach 0 Hz we can remove the periodic tick assumption from
    nr_running>=2 as well, by essentially interrupting busy tasks only
    as frequently as the sched_latency constraints require us to do -
    once every 4-40 msecs, depending on nr_running.

    I am personally leaning towards biting the bullet and doing this in
    v3.10, like the -rt tree this effort has been going on for too long -
    but the final word is up to you as usual.

    More technical details can be found in Documentation/timers/NO_HZ.txt"

    * 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (39 commits)
    sched: Keep at least 1 tick per second for active dynticks tasks
    rcu: Fix full dynticks' dependency on wide RCU nocb mode
    nohz: Protect smp_processor_id() in tick_nohz_task_switch()
    nohz_full: Add documentation.
    cputime_nsecs: use math64.h for nsec resolution conversion helpers
    nohz: Select VIRT_CPU_ACCOUNTING_GEN from full dynticks config
    nohz: Reduce overhead under high-freq idling patterns
    nohz: Remove full dynticks' superfluous dependency on RCU tree
    nohz: Fix unavailable tick_stop tracepoint in dynticks idle
    nohz: Add basic tracing
    nohz: Select wide RCU nocb for full dynticks
    nohz: Disable the tick when irq resume in full dynticks CPU
    nohz: Re-evaluate the tick for the new task after a context switch
    nohz: Prepare to stop the tick on irq exit
    nohz: Implement full dynticks kick
    nohz: Re-evaluate the tick from the scheduler IPI
    sched: New helper to prevent from stopping the tick in full dynticks
    sched: Kick full dynticks CPU that have more than one task enqueued.
    perf: New helper to prevent full dynticks CPUs from stopping tick
    perf: Kick full dynticks CPU if events rotation is needed
    ...

    Linus Torvalds
     

05 May, 2013

2 commits

  • Pull MMC update from Chris Ball:
    "MMC highlights for 3.10:

    Core:
    - Introduce MMC_CAP2_NO_PRESCAN_POWERUP to allow skipping
    mmc_power_up() at boot/initialization time if it's already
    happened, for performance (faster boot time) reasons.
    - Fix a bit width test failure that resulted in old eMMC cards being
    put into 1-bit mode when 4-bit mode was available.
    - Expose fwrev/hwrev for MMCv4 parts.
    - Improve card removal logic in the case where the card's removed
    slowly; we were missing card removal events if the card retained
    contact with the slot pads for long enough to reply to a CMD13
    while being removed.

    Drivers:
    - davinci_mmc: Support using PIO instead of DMA.
    - dw_mmc: Add support for Exynos4412.
    - mxcmmc: DT support, use slot-gpio API.
    - mxs-mmc: Add broken-cd/cd-inverted/non-removable DT property
    support.
    - sdhci-sirf: New sdhci-pltfm driver for CSR SiRF SoCs:
    SiRFprimaII: unicore ARM Cortex-A9
    SiRFatlas6: unicore ARM Cortex-A9
    SiRFmarco: dual core ARM Cortex-A9 SMP
    - sdhci-tegra: Add support for Tegra114 platforms, use
    mmc_of_parse()"

    * tag 'mmc-updates-for-3.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (66 commits)
    mmc: sdhci-tegra: fix MODULE_DEVICE_TABLE
    mmc: core: fix init controller performance regression, updated patch
    mmc: mxcmmc: enable DMA support on mpc512x
    mmc: mxcmmc: constify mxcmci_devtype
    mmc: mxcmmc: use slot-gpio API for write-protect detection
    mmc: mxcmmc: add mpc512x SDHC support
    mmc: mxcmmc: fix race conditions for host->req and host->data access
    mmc: mxcmmc: DT support
    mmc: dw_mmc: let device core setup the default pin configuration
    mmc: mxs-mmc: add broken-cd property
    mmc: mxs-mmc: add non-removable property
    mmc: mxs-mmc: add cd-inverted property
    mmc: core: call pm_runtime_put_noidle in pm_runtime_get_sync failed case
    mmc: mxcmmc: Fix bug when card is present during boot
    mmc: core: fix performance regression initializing MMC host controllers
    Revert "mmc: core: wait while adding MMC host to ensure root mounts successfully"
    mmc: atmel-mci: pio hang on block errors
    mmc: core: Fix bit width test failing on old eMMC cards
    mmc: dw_mmc: Use pr_info instead of printk
    mmc: dw_mmc: Check return value of regulator_enable
    ...

    Linus Torvalds
     
  • Pull hwmon update from Jean Delvare:
    "Only lm75 driver updates this time"

    * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
    hwmon: (lm75) Add support for the Dallas/Maxim DS7505
    hwmon: (lm75) Tune resolution and sample time per chip
    hwmon: (lm75) Prepare to support per-chip resolution and sample time
    hwmon: (lm75) Per-chip configuration register initialization

    Linus Torvalds