22 Feb, 2013

28 commits

  • Pull x86 mm changes from Peter Anvin:
    "This is a huge set of several partly interrelated (and concurrently
    developed) changes, which is why the branch history is messier than
    one would like.

    The *really* big items are two humonguous patchsets mostly developed
    by Yinghai Lu at my request, which completely revamps the way we
    create initial page tables. In particular, rather than estimating how
    much memory we will need for page tables and then build them into that
    memory -- a calculation that has shown to be incredibly fragile -- we
    now build them (on 64 bits) with the aid of a "pseudo-linear mode" --
    a #PF handler which creates temporary page tables on demand.

    This has several advantages:

    1. It makes it much easier to support things that need access to data
    very early (a followon patchset uses this to load microcode way
    early in the kernel startup).

    2. It allows the kernel and all the kernel data objects to be invoked
    from above the 4 GB limit. This allows kdump to work on very large
    systems.

    3. It greatly reduces the difference between Xen and native (Xen's
    equivalent of the #PF handler are the temporary page tables created
    by the domain builder), eliminating a bunch of fragile hooks.

    The patch series also gets us a bit closer to W^X.

    Additional work in this pull is the 64-bit get_user() work which you
    were also involved with, and a bunch of cleanups/speedups to
    __phys_addr()/__pa()."

    * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (105 commits)
    x86, mm: Move reserving low memory later in initialization
    x86, doc: Clarify the use of asm("%edx") in uaccess.h
    x86, mm: Redesign get_user with a __builtin_choose_expr hack
    x86: Be consistent with data size in getuser.S
    x86, mm: Use a bitfield to mask nuisance get_user() warnings
    x86/kvm: Fix compile warning in kvm_register_steal_time()
    x86-32: Add support for 64bit get_user()
    x86-32, mm: Remove reference to alloc_remap()
    x86-32, mm: Remove reference to resume_map_numa_kva()
    x86-32, mm: Rip out x86_32 NUMA remapping code
    x86/numa: Use __pa_nodebug() instead
    x86: Don't panic if can not alloc buffer for swiotlb
    mm: Add alloc_bootmem_low_pages_nopanic()
    x86, 64bit, mm: hibernate use generic mapping_init
    x86, 64bit, mm: Mark data/bss/brk to nx
    x86: Merge early kernel reserve for 32bit and 64bit
    x86: Add Crash kernel low reservation
    x86, kdump: Remove crashkernel range find limit for 64bit
    memblock: Add memblock_mem_size()
    x86, boot: Not need to check setup_header version for setup_data
    ...

    Linus Torvalds
     
  • Pull x86 cpu updates from Peter Anvin:
    "This is a corrected attempt at the x86/cpu branch, this time with the
    fixes in that makes it not break on KVM (current or past), or any
    other virtualizer which traps on this configuration.

    Again, the biggest change here is enabling the WC+ memory type on AMD
    processors, if the BIOS doesn't."

    * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86, kvm: Add MSR_AMD64_BU_CFG2 to the list of ignored MSRs
    x86, cpu, amd: Fix WC+ workaround for older virtual hosts
    x86, AMD: Enable WC+ memory type on family 10 processors
    x86, AMD: Clean up init_amd()
    x86/process: Change %8s to %s for pr_warn() in release_thread()
    x86/cpu/hotplug: Remove CONFIG_EXPERIMENTAL dependency

    Linus Torvalds
     
  • Pull misc ia64 bits from Tony Luck.

    * tag 'please-pull-misc-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
    MAINTAINERS: update SGI & ia64 Altix stuff
    sysctl: Enable IA64 "ignore-unaligned-usertrap" to be used cross-arch

    Linus Torvalds
     
  • Pull s390 update from Martin Schwidefsky:
    "The most prominent change in this patch set is the software dirty bit
    patch for s390. It removes __HAVE_ARCH_PAGE_TEST_AND_CLEAR_DIRTY and
    the page_test_and_clear_dirty primitive which makes the common memory
    management code a bit less obscure.

    Heiko fixed most of the PCI related fallout, more often than not
    missing GENERIC_HARDIRQS dependencies. Notable is one of the 3270
    patches which adds an export to tty_io to be able to resize a tty.

    The rest is the usual bunch of cleanups and bug fixes."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (42 commits)
    s390/module: Add missing R_390_NONE relocation type
    drivers/gpio: add missing GENERIC_HARDIRQ dependency
    drivers/input: add couple of missing GENERIC_HARDIRQS dependencies
    s390/cleanup: rename SPP to LPP
    s390/mm: implement software dirty bits
    s390/mm: Fix crst upgrade of mmap with MAP_FIXED
    s390/linker skript: discard exit.data at runtime
    drivers/media: add missing GENERIC_HARDIRQS dependency
    s390/bpf,jit: add vlan tag support
    drivers/net,AT91RM9200: add missing GENERIC_HARDIRQS dependency
    iucv: fix kernel panic at reboot
    s390/Kconfig: sort list of arch selected config options
    phylib: remove !S390 dependeny from Kconfig
    uio: remove !S390 dependency from Kconfig
    dasd: fix sysfs cleanup in dasd_generic_remove
    s390/pci: fix hotplug module init
    s390/pci: cleanup clp page allocation
    s390/pci: cleanup clp inline assembly
    s390/perf: cpum_cf: fallback to software sampling events
    s390/mm: provide PAGE_SHARED define
    ...

    Linus Torvalds
     
  • Pull trivial tree from Jiri Kosina:
    "Assorted tiny fixes queued in trivial tree"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (22 commits)
    DocBook: update EXPORT_SYMBOL entry to point at export.h
    Documentation: update top level 00-INDEX file with new additions
    ARM: at91/ide: remove unsused at91-ide Kconfig entry
    percpu_counter.h: comment code for better readability
    x86, efi: fix comment typo in head_32.S
    IB: cxgb3: delay freeing mem untill entirely done with it
    net: mvneta: remove unneeded version.h include
    time: x86: report_lost_ticks doesn't exist any more
    pcmcia: avoid static analysis complaint about use-after-free
    fs/jfs: Fix typo in comment : 'how may' -> 'how many'
    of: add missing documentation for of_platform_populate()
    btrfs: remove unnecessary cur_trans set before goto loop in join_transaction
    sound: soc: Fix typo in sound/codecs
    treewide: Fix typo in various drivers
    btrfs: fix comment typos
    Update ibmvscsi module name in Kconfig.
    powerpc: fix typo (utilties -> utilities)
    of: fix spelling mistake in comment
    h8300: Fix home page URL in h8300/README
    xtensa: Fix home page URL in Kconfig
    ...

    Linus Torvalds
     
  • Merge misc patches from Andrew Morton:

    - Florian has vanished so I appear to have become fbdev maintainer
    again :(

    - Joel and Mark are distracted to welcome to the new OCFS2 maintainer

    - The backlight queue

    - Small core kernel changes

    - lib/ updates

    - The rtc queue

    - Various random bits

    * akpm: (164 commits)
    rtc: rtc-davinci: use devm_*() functions
    rtc: rtc-max8997: use devm_request_threaded_irq()
    rtc: rtc-max8907: use devm_request_threaded_irq()
    rtc: rtc-da9052: use devm_request_threaded_irq()
    rtc: rtc-wm831x: use devm_request_threaded_irq()
    rtc: rtc-tps80031: use devm_request_threaded_irq()
    rtc: rtc-lp8788: use devm_request_threaded_irq()
    rtc: rtc-coh901331: use devm_clk_get()
    rtc: rtc-vt8500: use devm_*() functions
    rtc: rtc-tps6586x: use devm_request_threaded_irq()
    rtc: rtc-imxdi: use devm_clk_get()
    rtc: rtc-cmos: use dev_warn()/dev_dbg() instead of printk()/pr_debug()
    rtc: rtc-pcf8583: use dev_warn() instead of printk()
    rtc: rtc-sun4v: use pr_warn() instead of printk()
    rtc: rtc-vr41xx: use dev_info() instead of printk()
    rtc: rtc-rs5c313: use pr_err() instead of printk()
    rtc: rtc-at91rm9200: use dev_dbg()/dev_err() instead of printk()/pr_debug()
    rtc: rtc-rs5c372: use dev_dbg()/dev_warn() instead of printk()/pr_debug()
    rtc: rtc-ds2404: use dev_err() instead of printk()
    rtc: rtc-efi: use dev_err()/dev_warn()/pr_err() instead of printk()
    ...

    Linus Torvalds
     
  • The Armada 370 and Armada XP Socs have the same controller that the one
    used in the orion platforms. This patch updates the device tree for
    these SoCs.

    Signed-off-by: Gregory CLEMENT
    Acked-by: Andrew Lunn
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Gregory CLEMENT
     
  • Update the alpha arch_get_unmapped_area function to make use of
    vm_unmapped_area() instead of implementing a brute force search.

    Signed-off-by: Michel Lespinasse
    Acked-by: Rik van Riel
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Matt Turner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michel Lespinasse
     
  • This provides a band-aid to provide stable page writes on jbd without
    needing to backport the fixed locking and page writeback bit handling
    schemes of jbd2. The band-aid works by using bounce buffers to snapshot
    page contents instead of waiting.

    For those wondering about the ext3 bandage -- fixing the jbd locking
    (which was done as part of ext4dev years ago) is a lot of surgery, and
    setting PG_writeback on data pages when we actually hold the page lock
    dropped ext3 performance by nearly an order of magnitude. If we're
    going to migrate iscsi and raid to use stable page writes, the
    complaints about high latency will likely return. We might as well
    centralize their page snapshotting thing to one place.

    Signed-off-by: Darrick J. Wong
    Tested-by: Andy Lutomirski
    Cc: Adrian Hunter
    Cc: Artem Bityutskiy
    Reviewed-by: Jan Kara
    Cc: Joel Becker
    Cc: Mark Fasheh
    Cc: Steven Whitehouse
    Cc: Jens Axboe
    Cc: Eric Van Hensbergen
    Cc: Ron Minnich
    Cc: Latchesar Ionkov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Darrick J. Wong
     
  • Add display and fb support in pxa910 defconfig.
    Add tpohvga panel, spi support.
    Add logo support.

    Signed-off-by: Zhou Zhu
    Acked-by: Haojian Zhuang
    Cc: Lisa Du
    Cc: Guoqing Li
    Cc: Florian Tobias Schandinat
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Zhou Zhu
     
  • Enable display in ttc_dkb.

    Signed-off-by: Zhou Zhu
    Acked-by: Haojian Zhuang
    Cc: Lisa Du
    Cc: Guoqing Li
    Cc: Florian Tobias Schandinat
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Zhou Zhu
     
  • Add device for display controller and fb support

    Signed-off-by: Zhou Zhu
    Acked-by: Haojian Zhuang
    Cc: Lisa Du
    Cc: Guoqing Li
    Cc: Florian Tobias Schandinat
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Zhou Zhu
     
  • On cris-linux-gcc, __SIZE_TYPE__ expands to "unsigned int", as
    gcc-4.6.3-nolibc/cris-linux/lib/gcc/cris-linux/4.6.3/plugin/include/config/cris/linux.h
    has

    #define SIZE_TYPE "unsigned int"

    Hence __kernel_size_t is also "unsigned int". But __kernel_ssize_t is
    "long", which has a different base type, causing compiler warnings like:

    fs/quota/quota_tree.c:372:4: warning: format '%zd' expects argument of type 'signed size_t', but argument 4 has type 'ssize_t' [-Wformat]

    To fix this, __kernel_ssize_t should be changed to "int". Hence cris can
    just use the generic 32-bit versions from include/asm-generic/posix_types.h
    for all size-related types.

    Signed-off-by: Geert Uytterhoeven
    Cc: Mikael Starvik
    Acked-by: Jesper Nilsson
    Cc: Hans-Peter Nilsson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Signed-off-by: Wei Yongjun
    Cc: David Howells
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Wei Yongjun
     
  • Pull ARM virtualization changes:
    "This contains parts of the ARM KVM support that have dependencies on
    other patches merged through the arm-soc tree. In combination with
    patches coming through Russell's tree, this will finally add full
    support for the kernel based virtual machine on ARM, which has been
    awaited for some time now.

    Further, we now have a separate platform for virtual machines and qemu
    booting that is used by both Xen and KVM, separating these from the
    Versatile Express reference implementation. Obviously, this new
    platform is multiplatform capable so it can be combined with existing
    machines in the same kernel."

    * tag 'virt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (38 commits)
    ARM: arch_timer: include linux/errno.h
    arm: arch_timer: add missing inline in stub function
    ARM: KVM: arch_timers: Wire the init code and config option
    ARM: KVM: arch_timers: Add timer world switch
    ARM: KVM: arch_timers: Add guest timer core support
    ARM: KVM: Add VGIC configuration option
    ARM: KVM: VGIC initialisation code
    ARM: KVM: VGIC control interface world switch
    ARM: KVM: VGIC interrupt injection
    ARM: KVM: vgic: retire queued, disabled interrupts
    ARM: KVM: VGIC virtual CPU interface management
    ARM: KVM: VGIC distributor handling
    ARM: KVM: VGIC accept vcpu and dist base addresses from user space
    ARM: KVM: Initial VGIC infrastructure code
    ARM: KVM: Keep track of currently running vcpus
    KVM: ARM: Introduce KVM_ARM_SET_DEVICE_ADDR ioctl
    ARM: gic: add __ASSEMBLY__ guard to C definitions
    ARM: gic: define GICH offsets for VGIC support
    ARM: gic: add missing distributor defintions
    ARM: mach-virt: fixup machine descriptor after removal of sys_timer
    ...

    Linus Torvalds
     
  • Pull ARM SoC device tree conversions from Arnd Bergmann:
    "These are device tree conversions for a number of platforms, with the
    intention of turning code from board files into device tree
    descriptions. Notable changes are:

    - davinci bindings for pinctrl, MTD, RTC, watchdog and i2c

    - nomadik bindings for all devices, removing the board files

    - bcm2835 bindings for mmc and i2c

    - tegra bindings for hdmi, keyboard, audio, as well as some updates

    - at91 bindings for hardware ecc and for devices on RM9200

    - mxs bindings for cfa100xx

    - sunxi support for Miniand Hackberry board"

    * tag 'dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (72 commits)
    Revert "sunxi: a10-cubieboard: Add user LEDs to the device tree"
    Revert "sunxi: a13-olinuxino: Add user LED to the device tree"
    clk: tegra: initialise parent of uart clocks
    ARM: tegra: remove clock-frequency properties from serial nodes
    clk: tegra: fix driver to match DT binding
    clk: tegra: local arrays should be static
    clk: tegra: Add missing spinlock for hclk and pclk
    clk: tegra: Implement locking for super clock
    clk: tegra: fix wrong clock index between se to sata_cold
    sunxi: a13-olinuxino: Add user LED to the device tree
    ARM: davinci: da850 DT: add support for machine reboot
    ARM: davinci: da850: add wdt DT node
    ARM: davinci: da850: add DT node for I2C0
    ARM: at91: at91sam9n12: add DT parameters to enable PMECC
    ARM: at91: at91sam9x5: add DT parameters to enable PMECC
    ARM: at91: add EMAC bindings to RM9200 DT
    ARM: at91: add SSC bindings to RM9200 DT
    ARM: at91: add MMC bindings to RM9200 DT
    ARM: at91: Animeo IP: enable watchdog support
    ARM: nomadik: fix OF compilation regression
    ...

    Linus Torvalds
     
  • Pull ARM SoC board specific changes from Arnd Bergmann:
    "These updates are all for board specific code, including

    - defconfig updates for shmobile, davinci, bcm2835, imx, omap and
    tegra

    - SD/MMC and I2C support on bcm2835 (Raspberry PI)

    - minor updates for PXA

    - shmobile updates to GPIO usage in board files

    - More things in OMAP board files are moved over to device tree
    probing

    - Better support for audio devices on some OMAP platforms"

    * tag 'boards' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (55 commits)
    ARM: imx_v4_v5_defconfig: Add VPU support
    ARM: imx: configs: enable netfilter support
    ARM: OMAP2+: Fix twl section warnings related to omap_twl4030_audio_init
    ARM: OMAP2+: omap2plus_defconfig: enable omap1 rtc
    RX-51: Register twl4030-madc device
    RX-51: Add leds lp5523 names from Maemo 5 2.6.28 kernel
    ARM: OMAP2+: AM33XX: omap2plus_defconfig: Add support for few drivers
    ARM: OMAP1: nokia770: enable CBUS/Retu
    ARM: OMAP2+: omap2plus_defconfig: enable CMA allocator
    ARM: OMAP2+: omap2plus_defconfig: enable TFP410 chip support
    ARM: OMAP3: igep0020: simplify GPIO LEDs dependencies
    ARM: OMAP2+: craneboard: support the TPS65910 PMU
    ARM: OMAP2+: craneboard: support NAND device
    ARM: OMAP3: cm-t3517: add MMC support
    ARM: OMAP2+: Remove apollon board support
    ARM: shmobile: armadillo800eva: set clock rates before timer init
    ARM: tegra: defconfig updates
    ARM: shmobile: mackerel: Use gpio_request_one()
    ARM: shmobile: kzm9g: Use gpio_request_one()
    ARM: shmobile: bonito: Use gpio_request_one()
    ...

    Linus Torvalds
     
  • Pull ARM SoC-specific updates from Arnd Bergmann:
    "This is a larger set of new functionality for the existing SoC
    families, including:

    - vt8500 gains support for new CPU cores, notably the Cortex-A9 based
    wm8850

    - prima2 gains support for the "marco" SoC family, its SMP based
    cousin

    - tegra gains support for the new Tegra4 (Tegra114) family

    - socfpga now supports a newer version of the hardware including SMP

    - i.mx31 and bcm2835 are now using DT probing for their clocks

    - lots of updates for sh-mobile

    - OMAP updates for clocks, power management and USB

    - i.mx6q and tegra now support cpuidle

    - kirkwood now supports PCIe hot plugging

    - tegra clock support is updated

    - tegra USB PHY probing gets implemented diffently"

    * tag 'soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (148 commits)
    ARM: prima2: remove duplicate v7_invalidate_l1
    ARM: shmobile: r8a7779: Correct TMU clock support again
    ARM: prima2: fix __init section for cpu hotplug
    ARM: OMAP: Consolidate OMAP USB-HS platform data (part 3/3)
    ARM: OMAP: Consolidate OMAP USB-HS platform data (part 1/3)
    arm: socfpga: Add SMP support for actual socfpga harware
    arm: Add v7_invalidate_l1 to cache-v7.S
    arm: socfpga: Add entries to enable make dtbs socfpga
    arm: socfpga: Add new device tree source for actual socfpga HW
    ARM: tegra: sort Kconfig selects for Tegra114
    ARM: tegra: enable ARCH_REQUIRE_GPIOLIB for Tegra114
    ARM: tegra: Fix build error w/ ARCH_TEGRA_114_SOC w/o ARCH_TEGRA_3x_SOC
    ARM: tegra: Fix build error for gic update
    ARM: tegra: remove empty tegra_smp_init_cpus()
    ARM: shmobile: Register ARM architected timer
    ARM: MARCO: fix the build issue due to gic-vic-to-irqchip move
    ARM: shmobile: r8a7779: Correct TMU clock support
    ARM: mxs_defconfig: Select CONFIG_DEVTMPFS_MOUNT
    ARM: mxs: decrease mxs_clockevent_device.min_delta_ns to 2 clock cycles
    ARM: mxs: use apbx bus clock to drive the timers on timrotv2
    ...

    Linus Torvalds
     
  • Pull ARM SoC multiplatform support from Arnd Bergmann:
    "Converting more ARM platforms to multiplatform support. This time,
    OMAP gets converted, which is a major step since this is by far the
    largest platform in terms of code size. The same thing happens to the
    vt8500 platform."

    * tag 'multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    net: cwdavinci_cpdma: export symbols for cpsw
    remoteproc: omap: depend on OMAP_MBOX_FWK
    [media] davinci: do not include mach/hardware.h
    ARM: OMAP2+: Make sure files with omap initcalls include soc.h
    ARM: OMAP2+: Include soc.h to drm.c to fix compiling
    ARM: OMAP2+: Fix warning for hwspinlock omap_postcore_initcall
    ARM: multi_v7_defconfig: add ARCH_ZYNQ
    ARM: multi_v7_defconfig: remove unnecessary CONFIG_GPIOLIB
    arm: vt8500: Remove remaining mach includes
    arm: vt8500: Convert debug-macro.S to be multiplatform friendly
    arm: vt8500: Remove single platform Kconfig options
    ARM: OMAP2+: Remove now obsolete uncompress.h and debug-macro.S
    ARM: OMAP2+: Add minimal support for booting vexpress
    ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support
    ARM: OMAP2+: Disable code that currently does not work with multiplaform
    ARM: OMAP2+: Add multiplatform debug_ll support
    ARM: OMAP: Fix dmaengine init for multiplatform
    ARM: OMAP: Fix i2c cmdline initcall for multiplatform
    ARM: OMAP2+: Use omap initcalls
    ARM: OMAP2+: Limit omap initcalls to omap only on multiplatform kernels

    Linus Torvalds
     
  • Pull ARM SoC driver specific changes from Arnd Bergmann:

    - Updates to the ux500 cpufreq code

    - Moving the u300 DMA controller driver to drivers/dma

    - Moving versatile express drivers out of arch/arm for sharing with arch/arm64

    - Device tree bindings for the OMAP General Purpose Memory Controller

    * tag 'drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (27 commits)
    ARM: OMAP2+: gpmc: Add device tree documentation for elm handle
    ARM: OMAP2+: gpmc: add DT bindings for OneNAND
    ARM: OMAP2+: gpmc-onenand: drop __init annotation
    mtd: omap-onenand: pass device_node in platform data
    ARM: OMAP2+: Prevent potential crash if GPMC probe fails
    ARM: OMAP2+: gpmc: Remove unneeded of_node_put()
    arm: Move sp810.h to include/linux/amba/
    ARM: OMAP: gpmc: add DT bindings for GPMC timings and NAND
    ARM: OMAP: gpmc: enable hwecc for AM33xx SoCs
    ARM: OMAP: gpmc-nand: drop __init annotation
    mtd: omap-nand: pass device_node in platform data
    ARM: OMAP: gpmc: don't create devices from initcall on DT
    dma: coh901318: cut down on platform data abstraction
    dma: coh901318: merge header files
    dma: coh901318: push definitions into driver
    dma: coh901318: push header down into the DMA subsystem
    dma: coh901318: skip hard-coded addresses
    dma: coh901318: remove hardcoded target addresses
    dma: coh901318: push platform data into driver
    dma: coh901318: create a proper platform data file
    ...

    Linus Torvalds
     
  • Pull sh-mobile pinctrl conversion from Arnd Bergmann:
    "This is another cleanup series, containing the move of the Renesas
    SH-Mobile pin controller code from arch/arm/mach-shmobile over to the
    generic pinctrl subsystem, changing it over to the common interfaces
    in the process.

    Based on agreement between Olof, Paul Mundt, Linus Walleij and Simon,
    we're merging this large branch of pinctrl conversion through arm-soc,
    even though it contains the corresponding conversions for arch/sh.
    Main reason for this is tight dependencies (that will now mostly be
    broken) between the arch/sh and mach-shmobile implementations.

    There will be more of this in 3.10 to do device-tree bindings, but
    this is the initial conversion."

    * tag 'sh-pinmux' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (81 commits)
    sh-pfc: sh_pfc_probe() sizeof() fix
    sh-pfc: Move sh_pfc.h from include/linux/ to driver directory
    sh-pfc: Remove pinmux_info definition
    sh: Remove unused sh_pfc_register_info() function
    sh: shx3: pinmux: Use driver-provided pinmux info
    sh: sh7786: pinmux: Use driver-provided pinmux info
    sh: sh7785: pinmux: Use driver-provided pinmux info
    sh: sh7757: pinmux: Use driver-provided pinmux info
    sh: sh7734: pinmux: Use driver-provided pinmux info
    sh: sh7724: pinmux: Use driver-provided pinmux info
    sh: sh7723: pinmux: Use driver-provided pinmux info
    sh: sh7722: pinmux: Use driver-provided pinmux info
    sh: sh7720: pinmux: Use driver-provided pinmux info
    sh: sh7269: pinmux: Use driver-provided pinmux info
    sh: sh7264: pinmux: Use driver-provided pinmux info
    sh: sh7203: pinmux: Use driver-provided pinmux info
    ARM: shmobile: sh73a0: Use driver-provided pinmux info
    ARM: shmobile: sh7372: Use driver-provided pinmux info
    ARM: shmobile: r8a7779: Use driver-provided pinmux info
    ARM: shmobile: r8a7740: Use driver-provided pinmux info
    ...

    Linus Torvalds
     
  • Pull ARM SoC cleanups from Arnd Bergmann:
    "A large number of cleanups, all over the platforms. This is dominated
    largely by the Samsung platforms (s3c, s5p, exynos) and a few of the
    others moving code out of arch/arm into more appropriate subsystems.

    The clocksource and irqchip drivers are now abstracted to the point
    where platforms that are already cleaned up do not need to even
    specify the driver they use, it can all get configured from the device
    tree as we do for normal device drivers. The clocksource changes
    basically touch every single platform in the process.

    We further clean up the use of platform specific header files here,
    with the goal of turning more of the platforms over to being
    "multiplatform" enabled, which implies that they cannot expose their
    headers to architecture independent code any more.

    It is expected that no functional changes are part of the cleanup.
    The overall reduction in total code lines is mostly the result of
    removing broken and obsolete code."

    * tag 'cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (133 commits)
    ARM: mvebu: correct gated clock documentation
    ARM: kirkwood: add missing include for nsa310
    ARM: exynos: move exynos4210-combiner to drivers/irqchip
    mfd: db8500-prcmu: update resource passing
    drivers/db8500-cpufreq: delete dangling include
    ARM: at91: remove NEOCORE 926 board
    sunxi: Cleanup the reset code and add meaningful registers defines
    ARM: S3C24XX: header mach/regs-mem.h local
    ARM: S3C24XX: header mach/regs-power.h local
    ARM: S3C24XX: header mach/regs-s3c2412-mem.h local
    ARM: S3C24XX: Remove plat-s3c24xx directory in arch/arm/
    ARM: S3C24XX: transform s3c2443 subirqs into new structure
    ARM: S3C24XX: modify s3c2443 irq init to initialize all irqs
    ARM: S3C24XX: move s3c2443 irq code to irq.c
    ARM: S3C24XX: transform s3c2416 irqs into new structure
    ARM: S3C24XX: modify s3c2416 irq init to initialize all irqs
    ARM: S3C24XX: move s3c2416 irq init to common irq code
    ARM: S3C24XX: Modify s3c_irq_wake to use the hwirq property
    ARM: S3C24XX: Move irq syscore-ops to irq-pm
    clocksource: always define CLOCKSOURCE_OF_DECLARE
    ...

    Linus Torvalds
     
  • Pull non-critical ARM SoC bug fixes from Arnd Bergmann:
    "Bug fixes that did not make it into v3.8, mostly because they were not
    considered important enough, and in some cases because bugs only show
    up in combination with other patches destined for 3.9. This includes
    a few larger patches for GPIO on the Marvell PXA platform and a lot of
    Samsung specific bug fixes, as well as a series from Arnd to fix older
    build warnings."

    * tag 'fixes-non-critical' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (54 commits)
    ARM: SPEAr13xx: Enable CONFIG_ARCH_HAS_CPUFREQ
    ARM: imx: MACH_MX31ADS_WM1133_EV1 needs REGULATOR_WM8350
    scripts/sortextable: silence script output
    ARM: s3c: i2c: add platform_device forward declaration
    ARM: mvebu: allow selecting mvebu without Armada XP
    ARM: pick Versatile by default for !MMU
    ARM: integrator: fix build with INTEGRATOR_AP off
    ARM: integrator/versatile: fix NOMMU warnings
    ARM: sa1100: don't warn about mach/ide.h
    ARM: shmobile: fix defconfig warning on CONFIG_USB
    ARM: w90x900: fix legacy assembly syntax
    ARM: samsung: fix assembly syntax for new gas
    ARM: disable virt_to_bus/virt_to_bus almost everywhere
    ARM: dts: Correct pin configuration of SD 4 for exynos4x12-pinctrl
    ARM: SAMSUNG: Silence empty switch warning in fimc-core.h
    ARM: SAMSUNG: Silence empty switch warning in sdhci.h
    ARM: msm: proc_comm_boot_wait should not be __init
    arm: vt8500: Update MAINTAINERS entry for arch-vt8500
    ARM: integrator: ensure ap_syscon_base is initialised when !CONFIG_MMU
    ARM: S5PV210: Fix early uart output in fifo mode
    ...

    Linus Torvalds
     
  • Pull tty/serial patches from Greg Kroah-Hartman:
    "Here's the big tty/serial driver patches for 3.9-rc1.

    More tty port rework and fixes from Jiri here, as well as lots of
    individual serial driver updates and fixes.

    All of these have been in the linux-next tree for a while."

    * tag 'tty-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (140 commits)
    tty: mxser: improve error handling in mxser_probe() and mxser_module_init()
    serial: imx: fix uninitialized variable warning
    serial: tegra: assume CONFIG_OF
    TTY: do not update atime/mtime on read/write
    lguest: select CONFIG_TTY to build properly.
    ARM defconfigs: add missing inclusions of linux/platform_device.h
    fb/exynos: include platform_device.h
    ARM: sa1100/assabet: include platform_device.h directly
    serial: imx: Fix recursive locking bug
    pps: Fix build breakage from decoupling pps from tty
    tty: Remove ancient hardpps()
    pps: Additional cleanups in uart_handle_dcd_change
    pps: Move timestamp read into PPS code proper
    pps: Don't crash the machine when exiting will do
    pps: Fix a use-after free bug when unregistering a source.
    pps: Use pps_lookup_dev to reduce ldisc coupling
    pps: Add pps_lookup_dev() function
    tty: serial: uartlite: Support uartlite on big and little endian systems
    tty: serial: uartlite: Fix sparse and checkpatch warnings
    serial/arc-uart: Miscll DT related updates (Grant's review comments)
    ...

    Fix up trivial conflicts, mostly just due to the TTY config option
    clashing with the EXPERIMENTAL removal.

    Linus Torvalds
     
  • Pull USB patches from Greg Kroah-Hartman:
    "Here's the big USB merge for 3.9-rc1

    Nothing major, lots of gadget fixes, and of course, xhci stuff.

    All of this has been in linux-next for a while, with the exception of
    the last 3 patches, which were reverts of patches in the tree that
    caused problems, they went in yesterday."

    * tag 'usb-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (190 commits)
    Revert "USB: EHCI: make ehci-vt8500 a separate driver"
    Revert "USB: EHCI: make ehci-orion a separate driver"
    Revert "USB: update host controller Kconfig entries"
    USB: update host controller Kconfig entries
    USB: EHCI: make ehci-orion a separate driver
    USB: EHCI: make ehci-vt8500 a separate driver
    USB: usb-storage: unusual_devs update for Super TOP SATA bridge
    USB: ehci-omap: Fix autoloading of module
    USB: ehci-omap: Don't free gpios that we didn't request
    USB: option: add Huawei "ACM" devices using protocol = vendor
    USB: serial: fix null-pointer dereferences on disconnect
    USB: option: add Yota / Megafon M100-1 4g modem
    drivers/usb: add missing GENERIC_HARDIRQS dependencies
    USB: storage: properly handle the endian issues of idProduct
    testusb: remove all mentions of 'usbfs'
    usb: gadget: imx_udc: make it depend on BROKEN
    usb: omap_control_usb: fix compile warning
    ARM: OMAP: USB: Add phy binding information
    ARM: OMAP2: MUSB: Specify omap4 has mailbox
    ARM: OMAP: devices: create device for usb part of control module
    ...

    Linus Torvalds
     
  • Pull staging tree update from Greg Kroah-Hartman:
    "Here's the big staging tree merge for 3.9-rc1

    Lots of cleanups and updates for drivers all through the staging tree.
    We are pretty much "code neutral" here, adding just about as many
    lines as we removed.

    All of these have been in linux-next for a while."

    * tag 'staging-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (804 commits)
    staging: comedi: vmk80xx: wait for URBs to complete
    staging: comedi: drivers: addi-data: hwdrv_apci3200.c: Add a missing semicolon
    staging: et131x: Update TODO list
    staging: et131x: Remove assignment of skb->dev
    staging: wlan-ng: hfa384x.h: fix for error reported by smatch
    staging/zache checkpatch ERROR: spaces prohibited around that
    staging/ozwpan: Mark read only parameters and structs as const
    staging/ozwpan: Remove empty and unused function oz_cdev_heartbeat
    staging/ozwpan: Mark local functions as static (fix sparse warnings)
    staging/ozwpan: Add missing header includes
    staging/usbip: Mark local functions as static (fix sparse warnings)
    staging/xgifb: Remove duplicated code in loops.
    staging/xgifb: Consolidate return paths
    staging/xgifb: Remove code without effect
    staging/xgifb: Remove unnecessary casts
    staging/xgifb: Consolidate if/else if with identical code branches
    staging: vt6656: replaced custom TRUE definition with true
    staging: vt6656: replaced custom FALSE definition with false
    staging: vt6656: replace custom BOOL definition with bool
    staging/rtl8187se: Mark functions as static to silence sparse
    ...

    Linus Torvalds
     
  • Pull driver core patches from Greg Kroah-Hartman:
    "Here is the big driver core merge for 3.9-rc1

    There are two major series here, both of which touch lots of drivers
    all over the kernel, and will cause you some merge conflicts:

    - add a new function called devm_ioremap_resource() to properly be
    able to check return values.

    - remove CONFIG_EXPERIMENTAL

    Other than those patches, there's not much here, some minor fixes and
    updates"

    Fix up trivial conflicts

    * tag 'driver-core-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (221 commits)
    base: memory: fix soft/hard_offline_page permissions
    drivercore: Fix ordering between deferred_probe and exiting initcalls
    backlight: fix class_find_device() arguments
    TTY: mark tty_get_device call with the proper const values
    driver-core: constify data for class_find_device()
    firmware: Ignore abort check when no user-helper is used
    firmware: Reduce ifdef CONFIG_FW_LOADER_USER_HELPER
    firmware: Make user-mode helper optional
    firmware: Refactoring for splitting user-mode helper code
    Driver core: treat unregistered bus_types as having no devices
    watchdog: Convert to devm_ioremap_resource()
    thermal: Convert to devm_ioremap_resource()
    spi: Convert to devm_ioremap_resource()
    power: Convert to devm_ioremap_resource()
    mtd: Convert to devm_ioremap_resource()
    mmc: Convert to devm_ioremap_resource()
    mfd: Convert to devm_ioremap_resource()
    media: Convert to devm_ioremap_resource()
    iommu: Convert to devm_ioremap_resource()
    drm: Convert to devm_ioremap_resource()
    ...

    Linus Torvalds
     
  • Pull sound updates from Takashi Iwai:
    "The biggest change in this update is the unification of HD-audio codec
    parsers. Now the HD-audio codec is parsed in a generic parser code
    which is invoked by each HD-audio codec driver.

    Some background information is found in David Henningsson's blog
    entry:

    http://voices.canonical.com/david.henningsson/2013/01/18/upcoming-changes-to-the-intel-hda-drivers/

    Other than that, some random updates/fixes like USB-audio and a bunch
    of small AoC updates as usual.

    Highlights:

    - Unification of HD-audio parser code (aka generic parser)

    - Support of new Intel HD-audio controller, new IDT codecs

    - Fixes for HD-audio HDMI audio hotplug

    - Haswell HDMI audio fixup

    - Support of Creative CA0132 DSP code

    - A few fixes of HDSP driver

    - USB-audio fix for Roland A-PRO, M-Audio FT C600

    - Support PM for aloop driver (and fixes Oops)

    - Compress API updates for gapless playback support

    For ASoC part:

    - Support for a wider range of hardware in the compressed stream code

    - The ability to mute capture streams as well as playback streams
    while inactive

    - DT support for AK4642, FSI, Samsung I2S and WM8962

    - AC'97 support for Tegra

    - New driver for max98090, replacing the stub which was there

    - A new driver from Dialog

    Note that due to dependencies, DTification of DMA support for Samsung
    platforms (used only by the and I2S driver and SPI) is merged here as
    well."

    Fix up trivial conflict in drivers/spi/spi-s3c64xx.c due to removed code
    being changed.

    * tag 'sound-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (453 commits)
    ALSA: usb: Fix Processing Unit Descriptor parsers
    ALSA: hda - hdmi: Notify userspace when ELD control changes
    ALSA: hda - hdmi: Protect ELD buffer
    ALSA: hda - hdmi: Refactor hdmi_eld into parsed_hdmi_eld
    ALSA: hda - hdmi: Do not expose eld data when eld is invalid
    ALSA: hda - hdmi: ELD shouldn't be valid after unplug
    ALSA: hda - Fix the silent speaker output on Fujitsu S7020 laptop
    ALSA: hda - add quirks for mute LED on two HP machines
    ALSA: usb/quirks, fix out-of-bounds access
    ASoC: codecs: Add da7213 codec
    ALSA: au88x0 - Define channel map for au88x0
    ALSA: compress: add support for gapless playback
    ALSA: hda - Remove speaker clicks on CX20549
    ALSA: hda - Disable runtime PM for Intel 5 Series/3400
    ALSA: hda - Increase badness for missing multi-io
    ASoC: arizona: Automatically manage input mutes
    ALSA: hda - Fix broken workaround for HDMI/SPDIF conflicts
    ALSA: hda/ca0132 - Add missing \n to debug prints
    ALSA: hda/ca0132 - Fix type of INVALID_CHIP_ADDRESS
    ALSA: hda - update documentation for no-primary-hp fixup
    ...

    Linus Torvalds
     

21 Feb, 2013

12 commits

  • Pull networking update from David Miller:

    1) Checkpoint/restarted TCP sockets now can properly propagate the TCP
    timestamp offset. From Andrey Vagin.

    2) VMWARE VM VSOCK layer, from Andy King.

    3) Much improved support for virtual functions and SR-IOV in bnx2x,
    from Ariel ELior.

    4) All protocols on ipv4 and ipv6 are now network namespace aware, and
    all the compatability checks for initial-namespace-only protocols is
    removed. Thanks to Tom Parkin for helping deal with the last major
    holdout, L2TP.

    5) IPV6 support in netpoll and network namespace support in pktgen,
    from Cong Wang.

    6) Multiple Registration Protocol (MRP) and Multiple VLAN Registration
    Protocol (MVRP) support, from David Ward.

    7) Compute packet lengths more accurately in the packet scheduler, from
    Eric Dumazet.

    8) Use per-task page fragment allocator in skb_append_datato_frags(),
    also from Eric Dumazet.

    9) Add support for connection tracking labels in netfilter, from
    Florian Westphal.

    10) Fix default multicast group joining on ipv6, and add anti-spoofing
    checks to 6to4 and 6rd. From Hannes Frederic Sowa.

    11) Make ipv4/ipv6 fragmentation memory limits more reasonable in modern
    times, rearrange inet frag datastructures for better cacheline
    locality, and move more operations outside of locking. From Jesper
    Dangaard Brouer.

    12) Instead of strict master slave relationships, allow arbitrary
    scenerios with "upper device lists". From Jiri Pirko.

    13) Improve rate limiting accuracy in TBF and act_police, also from Jiri
    Pirko.

    14) Add a BPF filter netfilter match target, from Willem de Bruijn.

    15) Orphan and delete a bunch of pre-historic networking drivers from
    Paul Gortmaker.

    16) Add TSO support for GRE tunnels, from Pravin B SHelar. Although
    this still needs some minor bug fixing before it's %100 correct in
    all cases.

    17) Handle unresolved IPSEC states like ARP, with a resolution packet
    queue. From Steffen Klassert.

    18) Remove TCP Appropriate Byte Count support (ABC), from Stephen
    Hemminger. This was long overdue.

    19) Support SO_REUSEPORT, from Tom Herbert.

    20) Allow locking a socket BPF filter, so that it cannot change after a
    process drops capabilities.

    21) Add VLAN filtering to bridge, from Vlad Yasevich.

    22) Bring ipv6 on-par with ipv4 and do not cache neighbour entries in
    the ipv6 routes, from YOSHIFUJI Hideaki.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1538 commits)
    ipv6: fix race condition regarding dst->expires and dst->from.
    net: fix a wrong assignment in skb_split()
    ip_gre: remove an extra dst_release()
    ppp: set qdisc_tx_busylock to avoid LOCKDEP splat
    atl1c: restore buffer state
    net: fix a build failure when !CONFIG_PROC_FS
    net: ipv4: fix waring -Wunused-variable
    net: proc: fix build failed when procfs is not configured
    Revert "xen: netback: remove redundant xenvif_put"
    net: move procfs code to net/core/net-procfs.c
    qmi_wwan, cdc-ether: add ADU960S
    bonding: set sysfs device_type to 'bond'
    bonding: fix bond_release_all inconsistencies
    b44: use netdev_alloc_skb_ip_align()
    xen: netback: remove redundant xenvif_put
    net: fec: Do a sanity check on the gpio number
    ip_gre: propogate target device GSO capability to the tunnel device
    ip_gre: allow CSUM capable devices to handle packets
    bonding: Fix initialize after use for 3ad machine state spinlock
    bonding: Fix race condition between bond_enslave() and bond_3ad_update_lacp_rate()
    ...

    Linus Torvalds
     
  • Pull sparc updates from David Miller:
    "Mostly more sparc64 THP bug fixes, and a refactoring of SMP bootup on
    sparc32 from Sam Ravnborg."

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
    sparc32: refactor smp boot
    sparc64: Fix huge PMD to PTE translation for sun4u in TLB miss handler.
    sparc64: Fix tsb_grow() in atomic context.
    sparc64: Handle hugepage TSB being NULL.
    sparc64: Fix gfp_flags setting in tsb_grow().

    Linus Torvalds
     
  • Pull arm64 patches from Catalin Marinas:

    - SMP support for the PSCI booting protocol (power state coordination
    interface).

    - Simple earlyprintk support.

    - Platform devices populated by default from the DT (SoC-agnostic).

    - CONTEXTIDR support (used by external trace tools).

    * tag 'arm64-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64:
    arm64: mm: update CONTEXTIDR register to contain PID of current process
    arm64: atomics: fix grossly inconsistent asm constraints for exclusives
    arm64: compat: use compat_uptr_t type for compat_ucontext.uc_link
    arm64: Select ARCH_WANT_FRAME_POINTERS
    arm64: Add kvm_para.h and xor.h generic headers
    arm64: SMP: enable PSCI boot method
    arm64: psci: add support for PSCI invocations from the kernel
    arm64: SMP: rework the SMP code to be enabling method agnostic
    arm64: perf: add guest vs host discrimination
    arm64: add COMPAT_PSR_*_BIT flags
    arm64: Add simple earlyprintk support
    arm64: Populate the platform devices

    Linus Torvalds
     
  • Pull ARM updates (part two) from Russell King:

    - breakpoint and perf updates from Will Deacon.

    - hypervisor boot mode updates from Will.

    - support for Power State Coordination Interface via the Hypervisor

    - core ARM support for KVM

    * 'for-linus-2' of git://git.linaro.org/people/rmk/linux-arm: (32 commits)
    KVM: ARM: Add maintainer entry for KVM/ARM
    KVM: ARM: Power State Coordination Interface implementation
    KVM: ARM: Handle I/O aborts
    KVM: ARM: Handle guest faults in KVM
    KVM: ARM: VFP userspace interface
    KVM: ARM: Demux CCSIDR in the userspace API
    KVM: ARM: User space API for getting/setting co-proc registers
    KVM: ARM: Emulation framework and CP15 emulation
    KVM: ARM: World-switch implementation
    KVM: ARM: Inject IRQs and FIQs from userspace
    KVM: ARM: Memory virtualization setup
    KVM: ARM: Hypervisor initialization
    KVM: ARM: Initial skeleton to compile KVM support
    ARM: Section based HYP idmap
    ARM: Add page table and page defines needed by KVM
    ARM: perf: simplify __hw_perf_event_init err handling
    ARM: perf: remove unnecessary checks for idx < 0
    ARM: perf: handle armpmu_register failing
    ARM: perf: don't pretend to support counting of L1I writes
    ARM: perf: remove redundant NULL check on cpu_pmu
    ...

    Linus Torvalds
     
  • Pull ARM updates (part one) from Russell King:

    - MMC patches from Ulf Hansson and Pawel Moll. These add support for
    DDR mode and the latest variant found on ARM Versatile Express, as
    well as a number of cleanups.

    - A fix for to improve the behaviour of ARMs sched_clock()

    - Changes to the ARM ioremap() code. I'm not convinced with the
    primary arguments for this, but it's been around for a while, and
    people seem happy with it - and the "other" justification for this is
    at

    http://lkml.org/lkml/2012/12/6/184

    - Add SCHED_HRTICK to ARMs Kconfig

    - Making the ARM SHA/AES code Thumb-2 compatible

    - A collection of other small updates.

    * 'for-linus' of git://git.linaro.org/people/rmk/linux-arm: (26 commits)
    ARM: add SCHED_HRTICK config option
    ARM: 7650/1: mm: replace direct access to mm->context.id with new macro
    ARM: 7649/1: mm: mm->context.id fix for big-endian
    ARM: 7648/1: pci: Allow passing per-controller private data
    ARM: 7647/1: pci: Keep pci_common_init() around after init
    ARM: fix warnings introduced by previous patch
    ARM: 7646/1: mm: use static_vm for managing static mapped areas
    ARM: 7645/1: ioremap: introduce an infrastructure for static mapped area
    ARM: 7644/1: vmregion: remove vmregion code entirely
    MAINTAINERS: Re-assert MMCI driver maintainer status
    MAINTAINERS: add additional file for MMCI driver
    MAINTAINERS: add maintainer entry for AMBA serial drivers
    ARM: 7637/1: memory: use SZ_ constants for defining the virtual memory layout
    ARM: 7643/1: sched: correct update_sched_clock()
    ARM: 7635/1: versatile: fix the PCI IRQ regression
    ARM: 7639/1: cache-l2x0: add missed dummy outer_resume entry
    ARM: 7630/1: mmc: mmci: Fixup and cleanup code for DMA handling
    ARM: 7632/1: spinlock: avoid exclusive accesses on unlock() path
    ARM: 7631/1: mmc: mmci: Add new VE MMCI variant
    ARM: 7623/1: mmc: mmci: Fixup clock gating when freq is 0 for ST-variants
    ...

    Linus Torvalds
     
  • Pull m68k update from Geert Uytterhoeven.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
    m68k: Sort out !CONFIG_MMU_SUN3 vs. CONFIG_HAS_DMA
    swim: Add missing spinlock init

    Linus Torvalds
     
  • Introduce a common smp_callin() function to call
    from trampoline_32.S.
    Add platform specific functions to handle the
    platform details.

    This is in preparation for a patch that will
    unify the smp boot stuff for all architectures.
    sparc32 was significantly different to warrant
    this patch in preparation.

    Signed-off-by: Sam Ravnborg
    Acked-by: David S. Miller
    Cc: "Srivatsa S. Bhat"
    Acked-by: Srivatsa S. Bhat
    Signed-off-by: David S. Miller

    Sam Ravnborg
     
  • When we set the sun4u version of the PTE execute bit, it's:

    or REG, _PAGE_EXEC_4U, REG

    _PAGE_EXEC_4U is 0x1000, unfortunately the immedate field of the
    'or' instruction is a signed 13-bit value. So the above actually
    assembles into:

    or REG, -4096, REG

    completely corrupting the final PTE value.

    Set it with a:

    sethi %hi(_PAGE_EXEC_4U), TMP
    or REG, TMP, REG

    sequence instead.

    This fixes "git gc" crashes on sun4u machines.

    Reported-by: Meelis Roos
    Signed-off-by: David S. Miller

    David S. Miller
     
  • Pull ACPI and power management updates from Rafael Wysocki:

    - Rework of the ACPI namespace scanning code from Rafael J. Wysocki
    with contributions from Bjorn Helgaas, Jiang Liu, Mika Westerberg,
    Toshi Kani, and Yinghai Lu.

    - ACPI power resources handling and ACPI device PM update from Rafael
    J Wysocki.

    - ACPICA update to version 20130117 from Bob Moore and Lv Zheng with
    contributions from Aaron Lu, Chao Guan, Jesper Juhl, and Tim Gardner.

    - Support for Intel Lynxpoint LPSS from Mika Westerberg.

    - cpuidle update from Len Brown including Intel Haswell support, C1
    state for intel_idle, removal of global pm_idle.

    - cpuidle fixes and cleanups from Daniel Lezcano.

    - cpufreq fixes and cleanups from Viresh Kumar and Fabio Baltieri with
    contributions from Stratos Karafotis and Rickard Andersson.

    - Intel P-states driver for Sandy Bridge processors from Dirk
    Brandewie.

    - cpufreq driver for Marvell Kirkwood SoCs from Andrew Lunn.

    - cpufreq fixes related to ordering issues between acpi-cpufreq and
    powernow-k8 from Borislav Petkov and Matthew Garrett.

    - cpufreq support for Calxeda Highbank processors from Mark Langsdorf
    and Rob Herring.

    - cpufreq driver for the Freescale i.MX6Q SoC and cpufreq-cpu0 update
    from Shawn Guo.

    - cpufreq Exynos fixes and cleanups from Jonghwan Choi, Sachin Kamat,
    and Inderpal Singh.

    - Support for "lightweight suspend" from Zhang Rui.

    - Removal of the deprecated power trace API from Paul Gortmaker.

    - Assorted updates from Andreas Fleig, Colin Ian King, Davidlohr Bueso,
    Joseph Salisbury, Kees Cook, Li Fei, Nishanth Menon, ShuoX Liu,
    Srinivas Pandruvada, Tejun Heo, Thomas Renninger, and Yasuaki
    Ishimatsu.

    * tag 'pm+acpi-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (267 commits)
    PM idle: remove global declaration of pm_idle
    unicore32 idle: delete stray pm_idle comment
    openrisc idle: delete pm_idle
    mn10300 idle: delete pm_idle
    microblaze idle: delete pm_idle
    m32r idle: delete pm_idle, and other dead idle code
    ia64 idle: delete pm_idle
    cris idle: delete idle and pm_idle
    ARM64 idle: delete pm_idle
    ARM idle: delete pm_idle
    blackfin idle: delete pm_idle
    sparc idle: rename pm_idle to sparc_idle
    sh idle: rename global pm_idle to static sh_idle
    x86 idle: rename global pm_idle to static x86_idle
    APM idle: register apm_cpu_idle via cpuidle
    cpufreq / intel_pstate: Add kernel command line option disable intel_pstate.
    cpufreq / intel_pstate: Change to disallow module build
    tools/power turbostat: display SMI count by default
    intel_idle: export both C1 and C1E
    ACPI / hotplug: Fix concurrency issues and memory leaks
    ...

    Linus Torvalds
     
  • Pull device tree changes from Grant Likely:
    "All around device tree changes destined for v3.8. Aside from the
    documentation updates the highlights in this branch include:

    - Kbuild changes for using CPP with .dts files
    - locking fix from preempt_rt patchset
    - include DT alias names in device uevent
    - Selftest bugfixes and improvements
    - New function for counting phandles stanzas in a property
    - constify argument to of_node_full_name()
    - Various bug fixes

    This tree did also contain a commit to use platform_device_add instead
    of open-coding the device add code, but it caused problems with amba
    devices and needed to be reverted."

    * tag 'dt-for-linus' of git://git.secretlab.ca/git/linux: (23 commits)
    Revert "of: use platform_device_add"
    kbuild: limit dtc+cpp include path
    gpio: Make of_count_named_gpios() use new of_count_phandle_with_args()
    of: Create function for counting number of phandles in a property
    of/base: Clean up exit paths for of_parse_phandle_with_args()
    of/selftest: Use selftest() macro throughout
    of/selftest: Fix GPIOs selftest to cover the 7th case
    of: fix recursive locking in of_get_next_available_child()
    documentation/devicetree: Fix a typo in exynos-dw-mshc.txt
    OF: convert devtree lock from rw_lock to raw spinlock
    of/exynos_g2d: Add Bindings for exynos G2D driver
    kbuild: create a rule to run the pre-processor on *.dts files
    input: Extend matrix-keypad device tree binding
    devicetree: Move NS2 LEDs binding into LEDs directory
    of: use platform_device_add
    powerpc/5200: Fix size to request_mem_region() call
    documentation/devicetree: Fix typos
    of: add 'const' to of_node_full_name parameter
    of: Output devicetree alias names in uevent
    DT: add vendor prefixes for Renesas and Toshiba
    ...

    Linus Torvalds
     
  • Pull clock framework update from Michael Turquette:
    "The common clock framework changes for 3.9 are almost entirely fixes.

    None are dire enough to be Cc'd to stable which may be interpreted to
    mean that users of the framework are reaching stability. Lots of new
    adoption of this framework is via DeviceTree data and that comes
    through the respective architecture and platform trees instead of
    through the clk framework tree.

    Two new features are improved debugfs output and an improvement to how
    DT clocks are initialized by reusing a common method."

    * tag 'clk-for-linus' of git://git.linaro.org/people/mturquette/linux: (25 commits)
    clk: sunxi: remove stale Makefile entry
    clk: vexpress: Use common of_clk_init() function
    clk: zynq: Use common of_clk_init() function
    clk: vt8500: Use common of_clk_init() function
    clk: highbank: Use common of_clk_init() function
    clk: sunxi: Use common of_clk_init() function
    clk: add common of_clk_init() function
    clk: Deduplicate exit code in clk_set_rate
    clk: beautify Makefile
    clk-divider: fix macros
    clk: prima2: enable dt-binding clkdev mapping
    clk: mxs: Index is always positive
    clk: max77686: Avoid double free at remove time
    clk: remove exported function from __init section
    clk: vt8500: Add support for WM8750/WM8850 PLL clocks
    clk: vt8500: Fix division-by-0 when requested rate=0
    clk: vt8500: Fix device clock divisor calculations
    clk: vt8500: Fix error in PLL calculations on non-exact match.
    clk: max77686: Remove unnecessary NULL checking for container_of()
    clk: JSON debugfs clock tree summary
    ...

    Linus Torvalds
     
  • If our first THP installation for an MM is via the set_pmd_at() done
    during khugepaged's collapsing we'll end up in tsb_grow() trying to do
    a GFP_KERNEL allocation with several locks held.

    Simply using GFP_ATOMIC in this situation is not the best option
    because we really can't have this fail, so we'd really like to keep
    this an order 0 GFP_KERNEL allocation if possible.

    Also, doing the TSB allocation from khugepaged is a really bad idea
    because we'll allocate it potentially from the wrong NUMA node in that
    context.

    So what we do is defer the hugepage TSB allocation until the first TLB
    miss we take on a hugepage. This is slightly tricky because we have
    to handle two unusual cases:

    1) Taking the first hugepage TLB miss in the window trap handler.
    We'll call the winfix_trampoline when that is detected.

    2) An initial TSB allocation via TLB miss races with a hugetlb
    fault on another cpu running the same MM. We handle this by
    unconditionally loading the TSB we see into the current cpu
    even if it's non-NULL at hugetlb_setup time.

    Reported-by: Meelis Roos
    Signed-off-by: David S. Miller

    David S. Miller