16 Feb, 2014

1 commit

  • System Power Management Interface (SPMI) is a specification
    developed by the MIPI (Mobile Industry Process Interface) Alliance
    optimized for the real time control of Power Management ICs (PMIC).

    SPMI is a two-wire serial interface that supports up to 4 master
    devices and up to 16 logical slaves.

    The framework supports message APIs, multiple busses (1 controller
    per bus) and multiple clients/slave devices per controller.

    Signed-off-by: Kenneth Heitke
    Signed-off-by: Michael Bohan
    Signed-off-by: Josh Cartwright
    Signed-off-by: Greg Kroah-Hartman

    Kenneth Heitke
     

08 Feb, 2014

5 commits

  • This allows replying only to the requestor portid while still
    supporting broadcasting. Pass 0 to portid for the previous behavior.

    Signed-off-by: David Fries
    Acked-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    David Fries
     
  • As we implement Virtual Receive Side Scaling on the networking side
    (the VRSS patches are currently under review), it will be useful to have
    per-channel state that vmbus drivers can manage. Add support for
    managing per-channel state.

    Signed-off-by: K. Y. Srinivasan
    Signed-off-by: Greg Kroah-Hartman

    K. Y. Srinivasan
     
  • The current channel code is using scatterlist abstraction to pass data to the
    ringbuffer API on the send path. This causes unnecessary translations
    between virtual and physical addresses. Fix this.

    Signed-off-by: K. Y. Srinivasan
    Signed-off-by: Greg Kroah-Hartman

    K. Y. Srinivasan
     
  • On Gen2 firmware, Hyper-V does not emulate the PCI bus. However, the MMIO
    information is packaged up in DSDT. Extract this information and export it
    for use by the synthetic framebuffer driver. This is the only driver that
    needs this currently.

    In this version of the patch mmio, I have updated the hyperv header file
    (linux/hyperv.h) with mmio definitions.

    Signed-off-by: K. Y. Srinivasan
    Signed-off-by: Greg Kroah-Hartman

    K. Y. Srinivasan
     
  • This patch adds the hyperv.h header to the uapi folder, and adds it to the Kbuild file.
    Doing this enables compiling userspace Hyper-V tools using the installed headers.

    Version 2: Split UAPI parts into new header, instead of duplicating.

    Signed-off-by: Bjarke Istrup Pedersen
    Signed-off-by: Greg Kroah-Hartman

    Bjarke Istrup Pedersen
     

03 Feb, 2014

1 commit

  • Pull SLAB changes from Pekka Enberg:
    "Random bug fixes that have accumulated in my inbox over the past few
    months"

    * 'slab/next' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux:
    mm: Fix warning on make htmldocs caused by slab.c
    mm: slub: work around unneeded lockdep warning
    mm: sl[uo]b: fix misleading comments
    slub: Fix possible format string bug.
    slub: use lockdep_assert_held
    slub: Fix calculation of cpu slabs
    slab.h: remove duplicate kmalloc declaration and fix kernel-doc warnings

    Linus Torvalds
     

02 Feb, 2014

1 commit


01 Feb, 2014

8 commits

  • Pull NFS client bugfixes from Trond Myklebust:
    "Highlights:

    - Fix several races in nfs_revalidate_mapping
    - NFSv4.1 slot leakage in the pNFS files driver
    - Stable fix for a slot leak in nfs40_sequence_done
    - Don't reject NFSv4 servers that support ACLs with only ALLOW aces"

    * tag 'nfs-for-3.14-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
    nfs: initialize the ACL support bits to zero.
    NFSv4.1: Cleanup
    NFSv4.1: Clean up nfs41_sequence_done
    NFSv4: Fix a slot leak in nfs40_sequence_done
    NFSv4.1 free slot before resending I/O to MDS
    nfs: add memory barriers around NFS_INO_INVALID_DATA and NFS_INO_INVALIDATING
    NFS: Fix races in nfs_revalidate_mapping
    sunrpc: turn warn_gssd() log message into a dprintk()
    NFS: fix the handling of NFS_INO_INVALID_DATA flag in nfs_revalidate_mapping
    nfs: handle servers that support only ALLOW ACE type.

    Linus Torvalds
     
  • Pull SCSI target updates from Nicholas Bellinger:
    "The highlights this round include:

    - add support for SCSI Referrals (Hannes)
    - add support for T10 DIF into target core (nab + mkp)
    - add support for T10 DIF emulation in FILEIO + RAMDISK backends (Sagi + nab)
    - add support for T10 DIF -> bio_integrity passthrough in IBLOCK backend (nab)
    - prep changes to iser-target for >= v3.15 T10 DIF support (Sagi)
    - add support for qla2xxx N_Port ID Virtualization - NPIV (Saurav + Quinn)
    - allow percpu_ida_alloc() to receive task state bitmask (Kent)
    - fix >= v3.12 iscsi-target session reset hung task regression (nab)
    - fix >= v3.13 percpu_ref se_lun->lun_ref_active race (nab)
    - fix a long-standing network portal creation race (Andy)"

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (51 commits)
    target: Fix percpu_ref_put race in transport_lun_remove_cmd
    target/iscsi: Fix network portal creation race
    target: Report bad sector in sense data for DIF errors
    iscsi-target: Convert gfp_t parameter to task state bitmask
    iscsi-target: Fix connection reset hang with percpu_ida_alloc
    percpu_ida: Make percpu_ida_alloc + callers accept task state bitmask
    iscsi-target: Pre-allocate more tags to avoid ack starvation
    qla2xxx: Configure NPIV fc_vport via tcm_qla2xxx_npiv_make_lport
    qla2xxx: Enhancements to enable NPIV support for QLOGIC ISPs with TCM/LIO.
    qla2xxx: Fix scsi_host leak on qlt_lport_register callback failure
    IB/isert: pass scatterlist instead of cmd to fast_reg_mr routine
    IB/isert: Move fastreg descriptor creation to a function
    IB/isert: Avoid frwr notation, user fastreg
    IB/isert: seperate connection protection domains and dma MRs
    tcm_loop: Enable DIF/DIX modes in SCSI host LLD
    target/rd: Add DIF protection into rd_execute_rw
    target/rd: Add support for protection SGL setup + release
    target/rd: Refactor rd_build_device_space + rd_release_device_space
    target/file: Add DIF protection support to fd_execute_rw
    target/file: Add DIF protection init/format support
    ...

    Linus Torvalds
     
  • Signed-off-by: Al Viro

    Stephan Springl
     
  • Pull media updates from Mauro Carvalho Chehab:
    - a new jpeg codec driver for Samsung Exynos (jpeg-hw-exynos4)
    - a new dvb frontend for ds2103 chipset (m88ds2103)
    - a new sensor driver for Samsung S5K5BAF UXGA (s5k5baf)
    - new drivers for R-Car VSP1
    - a new radio driver: radio-raremono
    - a new tuner driver for ts2022 chipset (m88ts2022)
    - the analog part of em28xx is now a separate module that only
    load/runs if the device is not a pure digital TV device
    - added a staging driver for bcm2048 radio devices
    - the omap 2 video driver (omap24xx) was moved to staging. This driver
    is for an old hardware and uses a deprecated Kernel internal API. If
    nobody cares enough to fix it, it would be removed on a couple Kernel
    releases
    - the sn9c102 driver was moved to staging. This driver was replaced by
    gspca, and disabled on some distros, as almost all devices are known
    to work properly with gspca. It should be removed from kernel on a
    couple Kernel releases
    - lots of driver fixes, improvements and cleanups

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (421 commits)
    [media] media: v4l2-dev: fix video device index assignment
    [media] rc-core: reuse device numbers
    [media] em28xx-cards: properly initialize the device bitmap
    [media] Staging: media: Fix line length exceeding 80 characters in as102_drv.c
    [media] Staging: media: Fix line length exceeding 80 characters in as102_fe.c
    [media] Staging: media: Fix quoted string split across line in as102_fe.c
    [media] media: st-rc: Add reset support
    [media] m2m-deinterlace: fix allocated struct type
    [media] radio-usb-si4713: fix sparse non static symbol warnings
    [media] em28xx-audio: remove needless check before usb_free_coherent()
    [media] au0828: Fix sparse non static symbol warning
    Revert "[media] go7007-usb: only use go->dev after allocated"
    [media] em28xx-audio: provide an error code when URB submit fails
    [media] em28xx: fix check for audio only usb interfaces when changing the usb alternate setting
    [media] em28xx: fix usb alternate setting for analog and digital video endpoints > 0
    [media] em28xx: make 'em28xx_ctrl_ops' static
    em28xx-alsa: Fix error patch for init/fini
    [media] em28xx-audio: flush work at .fini
    [media] drxk: remove the option to load firmware asynchronously
    [media] em28xx: adjust period size at runtime
    ...

    Linus Torvalds
     
  • Pull ACPI and power management fixes and cleanups from Rafael Wysocki:

    - ACPI device hotplug fix preventing ACPI drivers from binding to device
    objects that acpi_bus_trim() has been called for and the devices
    represented by them may not be operational.

    - Recent cpufreq changes related to the "boost" (turbo) feature broke
    the acpi-cpufreq error code path causing a NULL pointer dereference
    to occur on some systems. Fix from Konrad Rzeszutek Wilk.

    - The log level of a CPU initialization error message added recently
    needs to be reduced, because the particular BIOS issue indicated by
    it turns out to be widespread and doesn't really matter for the
    majority of systems having it. From Jiang Liu.

    - The regulator API needs to be told to stay away from things on systems
    with ACPI BIOSes or it may conflict with the BIOS' own handling of
    voltage regulators. Fix from Mark Brown that works around a 3.13
    regression in lm90 on PCs occuring if the regulator API is enabled.

    - Prevent the Exynos4 devfreq driver from being built on multiplatform,
    because it depends on things that aren't available during such builds.
    From Sachin Kamat.

    - Upstream ACPICA doesn't use the bool type as defined in the kernel,
    so modify the kernel's ACPICA code to follow the upstream in that
    respect (only one variable definition is affected) to reduce
    divergences between the two. From Lv Zheng.

    - Make the ACPI device PM code use ACPI_COMPANION() instead of its own
    routine doing the same thing (and invokng ACPI_COMPANION() in the
    process).

    - Modify some routines in the ACPI processor driver to follow the
    common convention and return negative integers on errors. From
    Hanjun Guo.

    * tag 'pm+acpi-3.14-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    ACPI / scan: Clear match_driver flag in acpi_bus_trim()
    ACPI / init: Flag use of ACPI and ACPI idioms for power supplies to regulator API
    acpi-cpufreq: De-register CPU notifier and free struct msr on error.
    ACPICA: Remove bool usage from ACPICA.
    PM / devfreq: Disable Exynos4 driver build on multiplatform
    ACPI / PM: Use ACPI_COMPANION() to get ACPI companions of devices
    ACPI / scan: reduce log level of "ACPI: \_PR_.CPU4: failed to get CPU APIC ID"
    ACPI / processor: Return specific error value when mapping lapic id

    Linus Torvalds
     
  • Pull timer/dynticks updates from Ingo Molnar:
    "This tree contains misc dynticks updates: a fix and three cleanups"

    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    sched/nohz: Fix overflow error in scheduler_tick_max_deferment()
    nohz_full: fix code style issue of tick_nohz_full_stop_tick
    nohz: Get timekeeping max deferment outside jiffies_lock
    tick: Rename tick_check_idle() to tick_irq_enter()

    Linus Torvalds
     
  • Pull core debug changes from Ingo Molnar:
    "This contains mostly kernel debugging related updates:

    - make hung_task detection more configurable to distros
    - add final bits for x86 UV NMI debugging, with related KGDB changes
    - update the mailing-list of MAINTAINERS entries I'm involved with"

    * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    hung_task: Display every hung task warning
    sysctl: Add neg_one as a standard constraint
    x86/uv/nmi, kgdb/kdb: Fix UV NMI handler when KDB not configured
    x86/uv/nmi: Fix Sparse warnings
    kgdb/kdb: Fix no KDB config problem
    MAINTAINERS: Restore "L: linux-kernel@vger.kernel.org" entries

    Linus Torvalds
     
  • …inux/kernel/git/xen/tip

    Pull Xen bugfixes from Konrad Rzeszutek Wilk:
    "Bug-fixes for the new features that were added during this cycle.

    There are also two fixes for long-standing issues for which we have a
    solution: grant-table operations extra work that was not needed
    causing performance issues and the self balloon code was too
    aggressive causing OOMs.

    Details:
    - Xen ARM couldn't use the new FIFO events
    - Xen ARM couldn't use the SWIOTLB if compiled as 32-bit with 64-bit PCIe devices.
    - Grant table were doing needless M2P operations.
    - Ratchet down the self-balloon code so it won't OOM.
    - Fix misplaced kfree in Xen PVH error code paths"

    * tag 'stable/for-linus-3.14-rc0-late-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
    xen/pvh: Fix misplaced kfree from xlated_setup_gnttab_pages
    drivers: xen: deaggressive selfballoon driver
    xen/grant-table: Avoid m2p_override during mapping
    xen/gnttab: Use phys_addr_t to describe the grant frame base address
    xen: swiotlb: handle sizeof(dma_addr_t) != sizeof(phys_addr_t)
    arm/xen: Initialize event channels earlier

    Linus Torvalds
     

31 Jan, 2014

14 commits

  • The grant mapping API does m2p_override unnecessarily: only gntdev needs it,
    for blkback and future netback patches it just cause a lock contention, as
    those pages never go to userspace. Therefore this series does the following:
    - the original functions were renamed to __gnttab_[un]map_refs, with a new
    parameter m2p_override
    - based on m2p_override either they follow the original behaviour, or just set
    the private flag and call set_phys_to_machine
    - gnttab_[un]map_refs are now a wrapper to call __gnttab_[un]map_refs with
    m2p_override false
    - a new function gnttab_[un]map_refs_userspace provides the old behaviour

    It also removes a stray space from page.h and change ret to 0 if
    XENFEAT_auto_translated_physmap, as that is the only possible return value
    there.

    v2:
    - move the storing of the old mfn in page->index to gnttab_map_refs
    - move the function header update to a separate patch

    v3:
    - a new approach to retain old behaviour where it needed
    - squash the patches into one

    v4:
    - move out the common bits from m2p* functions, and pass pfn/mfn as parameter
    - clear page->private before doing anything with the page, so m2p_find_override
    won't race with this

    v5:
    - change return value handling in __gnttab_[un]map_refs
    - remove a stray space in page.h
    - add detail why ret = 0 now at some places

    v6:
    - don't pass pfn to m2p* functions, just get it locally

    Signed-off-by: Zoltan Kiss
    Suggested-by: David Vrabel
    Acked-by: David Vrabel
    Acked-by: Stefano Stabellini
    Signed-off-by: Konrad Rzeszutek Wilk

    Zoltan Kiss
     
  • On x86, SLUB creates and handles
    Cc: Andrew Morton
    Acked-by: Christoph Lameter
    Acked-by: David Rientjes
    Signed-off-by: Dave Hansen
    Signed-off-by: Pekka Enberg

    Dave Hansen
     
  • Pull btrfs updates from Chris Mason:
    "This is a pretty big pull, and most of these changes have been
    floating in btrfs-next for a long time. Filipe's properties work is a
    cool building block for inheriting attributes like compression down on
    a per inode basis.

    Jeff Mahoney kicked in code to export filesystem info into sysfs.

    Otherwise, lots of performance improvements, cleanups and bug fixes.

    Looks like there are still a few other small pending incrementals, but
    I wanted to get the bulk of this in first"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (149 commits)
    Btrfs: fix spin_unlock in check_ref_cleanup
    Btrfs: setup inode location during btrfs_init_inode_locked
    Btrfs: don't use ram_bytes for uncompressed inline items
    Btrfs: fix btrfs_search_slot_for_read backwards iteration
    Btrfs: do not export ulist functions
    Btrfs: rework ulist with list+rb_tree
    Btrfs: fix memory leaks on walking backrefs failure
    Btrfs: fix send file hole detection leading to data corruption
    Btrfs: add a reschedule point in btrfs_find_all_roots()
    Btrfs: make send's file extent item search more efficient
    Btrfs: fix to catch all errors when resolving indirect ref
    Btrfs: fix protection between walking backrefs and root deletion
    btrfs: fix warning while merging two adjacent extents
    Btrfs: fix infinite path build loops in incremental send
    btrfs: undo sysfs when open_ctree() fails
    Btrfs: fix snprintf usage by send's gen_unique_name
    btrfs: fix defrag 32-bit integer overflow
    btrfs: sysfs: list the NO_HOLES feature
    btrfs: sysfs: don't show reserved incompat feature
    btrfs: call permission checks earlier in ioctls and return EPERM
    ...

    Linus Torvalds
     
  • Merge misc fixes from Andrew Morton:
    "A few hotfixes and various leftovers which were awaiting other merges.

    Mainly movement of zram into mm/"

    * emailed patches fron Andrew Morton : (25 commits)
    memcg: fix mutex not unlocked on memcg_create_kmem_cache fail path
    Documentation/filesystems/vfs.txt: update file_operations documentation
    mm, oom: base root bonus on current usage
    mm: don't lose the SOFT_DIRTY flag on mprotect
    mm/slub.c: fix page->_count corruption (again)
    mm/mempolicy.c: fix mempolicy printing in numa_maps
    zram: remove zram->lock in read path and change it with mutex
    zram: remove workqueue for freeing removed pending slot
    zram: introduce zram->tb_lock
    zram: use atomic operation for stat
    zram: remove unnecessary free
    zram: delay pending free request in read path
    zram: fix race between reset and flushing pending work
    zsmalloc: add maintainers
    zram: add zram maintainers
    zsmalloc: add copyright
    zram: add copyright
    zram: remove old private project comment
    zram: promote zram from staging
    zsmalloc: move it under mm
    ...

    Linus Torvalds
     
  • Pull MIPS updates from Ralf Baechle:
    "The most notable new addition inside this pull request is the support
    for MIPS's latest and greatest core called "inter/proAptiv". The
    patch series describes this core as follows.

    "The interAptiv is a power-efficient multi-core microprocessor
    for use in system-on-chip (SoC) applications. The interAptiv combines
    a multi-threading pipeline with a coherence manager to deliver improved
    computational throughput and power efficiency. The interAptiv can
    contain one to four MIPS32R3 interAptiv cores, system level
    coherence manager with L2 cache, optional coherent I/O port,
    and optional floating point unit."

    The platform specific patches touch all 3 Broadcom families. It adds
    support for the new Broadcom/Netlogix XLP9xx Soc, building a common
    BCM63XX SMP kernel for all BCM63XX SoCs regardless of core type/count
    and full gpio button/led descriptions for BCM47xx.

    The rest of the series are cleanups and bug fixes that are MIPS
    generic and consist largely of changes that Imgtec/MIPS had published
    in their linux-mti-3.10.git stable tree. Random other cleanups and
    patches preparing code to be merged in 3.15"

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (139 commits)
    mips: select ARCH_MIGHT_HAVE_PC_SERIO
    mips: delete non-required instances of include
    MIPS: KVM: remove shadow_tlb code
    MIPS: KVM: use common EHINV aware UNIQUE_ENTRYHI
    mips/ide: flush dcache also if icache does not snoop dcache
    MIPS: BCM47XX: fix position of cpu_wait disabling
    MIPS: BCM63XX: select correct MIPS_L1_CACHE_SHIFT value
    MIPS: update MIPS_L1_CACHE_SHIFT based on MIPS_L1_CACHE_SHIFT_
    MIPS: introduce MIPS_L1_CACHE_SHIFT_
    MIPS: ZBOOT: gather string functions into string.c
    arch/mips/pci: don't check resource with devm_ioremap_resource
    arch/mips/lantiq/xway: don't check resource with devm_ioremap_resource
    bcma: gpio: don't cast u32 to unsigned long
    ssb: gpio: add own IRQ domain
    MIPS: BCM47XX: fix sparse warnings in board.c
    MIPS: BCM47XX: add board detection for Linksys WRT54GS V1
    MIPS: BCM47XX: fix detection for some boards
    MIPS: BCM47XX: Enable buttons support on SSB
    MIPS: BCM47XX: Convert WNDR4500 to new syntax
    MIPS: BCM47XX: Use "timer" trigger for status LEDs
    ...

    Linus Torvalds
     
  • Pull more powerpc bits from Ben Herrenschmidt:
    "Here are a few more powerpc bits for this merge window. The bulk is
    made of two pull requests from Scott and Anatolij that I had missed
    previously (they arrived while I was away). Since both their branches
    are in -next independently, and the content has been around for a
    little while, they can still go in.

    The rest is mostly bug and regression fixes, a small series of
    cleanups to our pseries cpuidle code (including moving it to the right
    place), and one new cpuidle bakend for the powernv platform. I also
    wired up the new sched_attr syscalls"

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (37 commits)
    powerpc: Wire up sched_setattr and sched_getattr syscalls
    powerpc/hugetlb: Replace __get_cpu_var with get_cpu_var
    powerpc: Make sure "cache" directory is removed when offlining cpu
    powerpc/mm: Fix mmap errno when MAP_FIXED is set and mapping exceeds the allowed address space
    powerpc/powernv/cpuidle: Back-end cpuidle driver for powernv platform.
    powerpc/pseries/cpuidle: smt-snooze-delay cleanup.
    powerpc/pseries/cpuidle: Remove MAX_IDLE_STATE macro.
    powerpc/pseries/cpuidle: Make cpuidle-pseries backend driver a non-module.
    powerpc/pseries/cpuidle: Use cpuidle_register() for initialisation.
    powerpc/pseries/cpuidle: Move processor_idle.c to drivers/cpuidle.
    powerpc: Fix 32-bit frames for signals delivered when transactional
    powerpc/iommu: Fix initialisation of DART iommu table
    powerpc/numa: Fix decimal permissions
    powerpc/mm: Fix compile error of pgtable-ppc64.h
    powerpc: Fix hw breakpoints on !HAVE_HW_BREAKPOINT configurations
    clk: corenet: Adds the clock binding
    powerpc/booke64: Guard e6500 tlb handler with CONFIG_PPC_FSL_BOOK3E
    powerpc/512x: dts: add MPC5125 clock specs
    powerpc/512x: clk: support MPC5121/5123/5125 SoC variants
    powerpc/512x: clk: enforce even SDHC divider values
    ...

    Linus Torvalds
     
  • Pull kbuild changes from Michal Marek:
    - fix make -s detection with make-4.0
    - fix for scripts/setlocalversion when the kernel repository is a
    submodule
    - do not hardcode ';' in macros that expand to assembler code, as some
    architectures' assemblers use a different character for newline
    - Fix passing --gdwarf-2 to the assembler

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    frv: Remove redundant debugging info flag
    mn10300: Remove redundant debugging info flag
    kbuild: Fix debugging info generation for .S files
    arch: use ASM_NL instead of ';' for assembler new line character in the macro
    kbuild: Fix silent builds with make-4
    Fix detectition of kernel git repository in setlocalversion script [take #2]

    Linus Torvalds
     
  • Add my copyright to the zsmalloc source code which I maintain.

    Signed-off-by: Minchan Kim
    Cc: Nitin Gupta
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Minchan Kim
     
  • This patch moves zsmalloc under mm directory.

    Before that, description will explain why we have needed custom
    allocator.

    Zsmalloc is a new slab-based memory allocator for storing compressed
    pages. It is designed for low fragmentation and high allocation success
    rate on large object, but
    Acked-by: Nitin Gupta
    Reviewed-by: Konrad Rzeszutek Wilk
    Cc: Bob Liu
    Cc: Greg Kroah-Hartman
    Cc: Hugh Dickins
    Cc: Jens Axboe
    Cc: Luigi Semenzato
    Cc: Mel Gorman
    Cc: Pekka Enberg
    Cc: Rik van Riel
    Cc: Seth Jennings
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Minchan Kim
     
  • Make smp_call_function_single and friends more efficient by using a
    lockless list.

    Signed-off-by: Christoph Hellwig
    Reviewed-by: Jan Kara
    Cc: Jens Axboe
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Hellwig
     
  • Now we have memblock_virt_alloc_low to replace original bootmem api in
    swiotlb.

    But we should not use BOOTMEM_LOW_LIMIT for arch that does not support
    CONFIG_NOBOOTMEM, as old api take 0.

    | #define alloc_bootmem_low(x) \
    | __alloc_bootmem_low(x, SMP_CACHE_BYTES, 0)
    |#define alloc_bootmem_low_pages_nopanic(x) \
    | __alloc_bootmem_low_nopanic(x, PAGE_SIZE, 0)

    and we have
    #define BOOTMEM_LOW_LIMIT __pa(MAX_DMA_ADDRESS)
    for CONFIG_NOBOOTMEM.

    Restore goal to 0 to fix ia64 crash, that Tony found.

    Signed-off-by: Yinghai Lu
    Reported-by: Tony Luck
    Tested-by: Tony Luck
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yinghai Lu
     
  • Pull block IO driver changes from Jens Axboe:

    - bcache update from Kent Overstreet.

    - two bcache fixes from Nicholas Swenson.

    - cciss pci init error fix from Andrew.

    - underflow fix in the parallel IDE pg_write code from Dan Carpenter.
    I'm sure the 1 (or 0) users of that are now happy.

    - two PCI related fixes for sx8 from Jingoo Han.

    - floppy init fix for first block read from Jiri Kosina.

    - pktcdvd error return miss fix from Julia Lawall.

    - removal of IRQF_SHARED from the SEGA Dreamcast CD-ROM code from
    Michael Opdenacker.

    - comment typo fix for the loop driver from Olaf Hering.

    - potential oops fix for null_blk from Raghavendra K T.

    - two fixes from Sam Bradshaw (Micron) for the mtip32xx driver, fixing
    an OOM problem and a problem with handling security locked conditions

    * 'for-3.14/drivers' of git://git.kernel.dk/linux-block: (47 commits)
    mg_disk: Spelling s/finised/finished/
    null_blk: Null pointer deference problem in alloc_page_buffers
    mtip32xx: Correctly handle security locked condition
    mtip32xx: Make SGL container per-command to eliminate high order dma allocation
    drivers/block/loop.c: fix comment typo in loop_config_discard
    drivers/block/cciss.c:cciss_init_one(): use proper errnos
    drivers/block/paride/pg.c: underflow bug in pg_write()
    drivers/block/sx8.c: remove unnecessary pci_set_drvdata()
    drivers/block/sx8.c: use module_pci_driver()
    floppy: bail out in open() if drive is not responding to block0 read
    bcache: Fix auxiliary search trees for key size > cacheline size
    bcache: Don't return -EINTR when insert finished
    bcache: Improve bucket_prio() calculation
    bcache: Add bch_bkey_equal_header()
    bcache: update bch_bkey_try_merge
    bcache: Move insert_fixup() to btree_keys_ops
    bcache: Convert sorting to btree_keys
    bcache: Convert debug code to btree_keys
    bcache: Convert btree_iter to struct btree_keys
    bcache: Refactor bset_tree sysfs stats
    ...

    Linus Torvalds
     
  • Pull core block IO changes from Jens Axboe:
    "The major piece in here is the immutable bio_ve series from Kent, the
    rest is fairly minor. It was supposed to go in last round, but
    various issues pushed it to this release instead. The pull request
    contains:

    - Various smaller blk-mq fixes from different folks. Nothing major
    here, just minor fixes and cleanups.

    - Fix for a memory leak in the error path in the block ioctl code
    from Christian Engelmayer.

    - Header export fix from CaiZhiyong.

    - Finally the immutable biovec changes from Kent Overstreet. This
    enables some nice future work on making arbitrarily sized bios
    possible, and splitting more efficient. Related fixes to immutable
    bio_vecs:

    - dm-cache immutable fixup from Mike Snitzer.
    - btrfs immutable fixup from Muthu Kumar.

    - bio-integrity fix from Nic Bellinger, which is also going to stable"

    * 'for-3.14/core' of git://git.kernel.dk/linux-block: (44 commits)
    xtensa: fixup simdisk driver to work with immutable bio_vecs
    block/blk-mq-cpu.c: use hotcpu_notifier()
    blk-mq: for_each_* macro correctness
    block: Fix memory leak in rw_copy_check_uvector() handling
    bio-integrity: Fix bio_integrity_verify segment start bug
    block: remove unrelated header files and export symbol
    blk-mq: uses page->list incorrectly
    blk-mq: use __smp_call_function_single directly
    btrfs: fix missing increment of bi_remaining
    Revert "block: Warn and free bio if bi_end_io is not set"
    block: Warn and free bio if bi_end_io is not set
    blk-mq: fix initializing request's start time
    block: blk-mq: don't export blk_mq_free_queue()
    block: blk-mq: make blk_sync_queue support mq
    block: blk-mq: support draining mq queue
    dm cache: increment bi_remaining when bi_end_io is restored
    block: fixup for generic bio chaining
    block: Really silence spurious compiler warnings
    block: Silence spurious compiler warnings
    block: Kill bio_pair_split()
    ...

    Linus Torvalds
     
  • Pull nfsd updates from Bruce Fields:
    - Handle some loose ends from the vfs read delegation support.
    (For example nfsd can stop breaking leases on its own in a
    fewer places where it can now depend on the vfs to.)
    - Make life a little easier for NFSv4-only configurations
    (thanks to Kinglong Mee).
    - Fix some gss-proxy problems (thanks Jeff Layton).
    - miscellaneous bug fixes and cleanup

    * 'for-3.14' of git://linux-nfs.org/~bfields/linux: (38 commits)
    nfsd: consider CLAIM_FH when handing out delegation
    nfsd4: fix delegation-unlink/rename race
    nfsd4: delay setting current_fh in open
    nfsd4: minor nfs4_setlease cleanup
    gss_krb5: use lcm from kernel lib
    nfsd4: decrease nfsd4_encode_fattr stack usage
    nfsd: fix encode_entryplus_baggage stack usage
    nfsd4: simplify xdr encoding of nfsv4 names
    nfsd4: encode_rdattr_error cleanup
    nfsd4: nfsd4_encode_fattr cleanup
    minor svcauth_gss.c cleanup
    nfsd4: better VERIFY comment
    nfsd4: break only delegations when appropriate
    NFSD: Fix a memory leak in nfsd4_create_session
    sunrpc: get rid of use_gssp_lock
    sunrpc: fix potential race between setting use_gss_proxy and the upcall rpc_clnt
    sunrpc: don't wait for write before allowing reads from use-gss-proxy file
    nfsd: get rid of unused function definition
    Define op_iattr for nfsd4_open instead using macro
    NFSD: fix compile warning without CONFIG_NFSD_V3
    ...

    Linus Torvalds
     

30 Jan, 2014

10 commits

  • On ARM, address size can be 32 bits or 64 bits (if CONFIG_ARCH_PHYS_ADDR_T_64BIT
    is enabled).
    We can't assume that the grant frame base address will always fits in an
    unsigned long. Use phys_addr_t instead of unsigned long as argument for
    gnttab_setup_auto_xlat_frames.

    Signed-off-by: Julien Grall
    Signed-off-by: Stefano Stabellini
    Acked-by: Ian Campbell
    Reviewed-by: David Vrabel

    Julien Grall
     
  • This patch fixes a percpu_ref_put race for se_lun->lun_ref in
    transport_lun_remove_cmd() where ->lun_ref could end up being
    put more than once per command via different target completion
    and fabric release contexts.

    It adds a cmpxchg() for se_cmd->lun_ref_active to ensure that
    percpu_ref_put() is only ever called once per se_cmd.

    This bug was manifesting itself as a LUN shutdown regression
    bug in >= v3.13 code, where percpu_ref_kill() would end up
    hanging indefinately due to the incorrect percpu_ref count.

    (Change se_cmd->lun_ref_active from bool -> int to force at
    least a 4-byte cmpxchg with MIPS ll/sc ins. - Fengguang)

    Reported-by: Tommy Apel
    Cc: Tommy Apel
    Cc: #3.13+
    Signed-off-by: Nicholas Bellinger

    Nicholas Bellinger
     
  • Pull drm updates from Dave Airlie:
    "Been a bit busy, first week of kids school, and waiting on other trees
    to go in before I could send this, so its a bit later than I'd
    normally like.

    Highlights:
    - core:
    timestamp fixes, lots of misc cleanups
    - new drivers:
    bochs virtual vga
    - vmwgfx:
    major overhaul for their nextgen virt gpu.
    - i915:
    runtime D3 on HSW, watermark fixes, power well work, fbc fixes,
    bdw is no longer prelim.
    - nouveau:
    gk110/208 acceleration, more pm groundwork, old overlay support
    - radeon:
    dpm rework and clockgating for CIK, pci config reset, big endian
    fixes
    - tegra:
    panel support and DSI support, build as module, prime.
    - armada, omap, gma500, rcar, exynos, mgag200, cirrus, ast:
    fixes
    - msm:
    hdmi support for mdp5"

    * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (595 commits)
    drm/nouveau: resume display if any later suspend bits fail
    drm/nouveau: fix lock unbalance in nouveau_crtc_page_flip
    drm/nouveau: implement hooks for needed for drm vblank timestamping support
    drm/nouveau/disp: add a method to fetch info needed by drm vblank timestamping
    drm/nv50: fill in crtc mode struct members from crtc_mode_fixup
    drm/radeon/dce8: workaround for atom BlankCrtc table
    drm/radeon/DCE4+: clear bios scratch dpms bit (v2)
    drm/radeon: set si_notify_smc_display_change properly
    drm/radeon: fix DAC interrupt handling on DCE5+
    drm/radeon: clean up active vram sizing
    drm/radeon: skip async dma init on r6xx
    drm/radeon/runpm: don't runtime suspend non-PX cards
    drm/radeon: add ring to fence trace functions
    drm/radeon: add missing trace point
    drm/radeon: fix VMID use tracking
    drm: ast,cirrus,mgag200: use drm_can_sleep
    drm/gma500: Lock struct_mutex around cursor updates
    drm/i915: Fix the offset issue for the stolen GEM objects
    DRM: armada: fix missing DRM_KMS_FB_HELPER select
    drm/i915: Decouple GPU error reporting from ring initialisation
    ...

    Linus Torvalds
     
  • Pull slave-dma updates from Vinod Koul:
    - new driver for BCM2835 used in R-pi
    - new driver for MOXA ART
    - dma_get_any_slave_channel API for DT based systems
    - minor fixes and updates spread acrooss driver

    [ The fsl-ssi dual fifo mode support addition clashed badly with the
    other changes to fsl-ssi that came in through the sound merge. I did
    a very rough cut at fixing up the conflict, but Nicolin Chen (author
    of both sides) will need to verify and check things ]

    * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (36 commits)
    dmaengine: mmp_pdma: fix mismerge
    dma: pl08x: Export pl08x_filter_id
    acpi-dma: align documentation with kernel-doc format
    dma: fix vchan_cookie_complete() debug print
    DMA: dmatest: extend the "device" module parameter to 32 characters
    drivers/dma: fix error return code
    dma: omap: Set debug level to debugging messages
    dmaengine: fix kernel-doc style typos for few comments
    dma: tegra: add support for Tegra148/124
    dma: dw: use %pad instead of casting dma_addr_t
    dma: dw: join split up messages
    dma: dw: fix style of multiline comment
    dmaengine: k3dma: fix sparse warnings
    dma: pl330: Use dma_get_slave_channel() in the of xlate callback
    dma: pl330: Differentiate between submitted and issued descriptors
    dmaengine: sirf: Add device_slave_caps interface
    DMA: Freescale: change BWC from 256 bytes to 1024 bytes
    dmaengine: Add MOXA ART DMA engine driver
    dmaengine: Add DMA_PRIVATE to BCM2835 driver
    dma: imx-sdma: Assign a default script number for ROM firmware cases
    ...

    Linus Torvalds
     
  • Pull IOMMU Updates from Joerg Roedel:
    "A few patches have been queued up for this merge window:

    - improvements for the ARM-SMMU driver (IOMMU_EXEC support, IOMMU
    group support)
    - updates and fixes for the shmobile IOMMU driver
    - various fixes to generic IOMMU code and the Intel IOMMU driver
    - some cleanups in IOMMU drivers (dev_is_pci() usage)"

    * tag 'iommu-updates-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (36 commits)
    iommu/vt-d: Fix signedness bug in alloc_irte()
    iommu/vt-d: free all resources if failed to initialize DMARs
    iommu/vt-d, trivial: clean sparse warnings
    iommu/vt-d: fix wrong return value of dmar_table_init()
    iommu/vt-d: release invalidation queue when destroying IOMMU unit
    iommu/vt-d: fix access after free issue in function free_dmar_iommu()
    iommu/vt-d: keep shared resources when failed to initialize iommu devices
    iommu/vt-d: fix invalid memory access when freeing DMAR irq
    iommu/vt-d, trivial: simplify code with existing macros
    iommu/vt-d, trivial: use defined macro instead of hardcoding
    iommu/vt-d: mark internal functions as static
    iommu/vt-d, trivial: clean up unused code
    iommu/vt-d, trivial: check suitable flag in function detect_intel_iommu()
    iommu/vt-d, trivial: print correct domain id of static identity domain
    iommu/vt-d, trivial: refine support of 64bit guest address
    iommu/vt-d: fix resource leakage on error recovery path in iommu_init_domains()
    iommu/vt-d: fix a race window in allocating domain ID for virtual machines
    iommu/vt-d: fix PCI device reference leakage on error recovery path
    drm/msm: Fix link error with !MSM_IOMMU
    iommu/vt-d: use dedicated bitmap to track remapping entry allocation status
    ...

    Linus Torvalds
     
  • Pull more i2c updates from Wolfram Sang:
    "Mostly bugfixes, small but wanted cleanups, and Paul's init.h removal
    applied"

    * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
    i2c: rcar: fix NACK error code
    i2c: update i2c_algorithm documentation
    i2c: rcar: use devm_clk_get to ensure clock is properly ref-counted
    i2c: rcar: do not print error if device nacks transfer
    i2c: rely on driver core when sanitizing devices
    i2c: delete non-required instances of include
    i2c: acorn: is tristate and should use module.h
    i2c: piix4: Standardize log messages
    i2c: piix4: Use different message for AMD Auxiliary SMBus Controller
    i2c: piix4: Add support for AMD ML and CZ SMBus changes

    Linus Torvalds
     
  • Pull hwmon updates from Jean Delvare:
    "This include it87 driver improvements, and a tree-wide change of my
    e-mail address"

    * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
    Update Jean Delvare's e-mail address
    hwmon: (it87) Print proper names for the IT8771E and IT8772E
    hwmon: (it87) Add support for the ITE IT8603E

    Linus Torvalds
     
  • Pull more x32 uabi type fixes from Peter Anvin:
    "Despite the branch name, **most of these changes are to generic
    code**. They change types so that they make an increasing amount of
    the exported uapi kernel headers usable for libc.

    The ARM64 people are also interested in these changes for their ILP32
    ABI"

    * 'x86-x32-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    uapi: Use __kernel_long_t in struct mq_attr
    uapi: Use __kernel_ulong_t in shmid64_ds/shminfo64/shm_info
    x86, uapi, x32: Use __kernel_ulong_t in x86 struct semid64_ds
    uapi: Use __kernel_ulong_t in struct msqid64_ds
    uapi: Use __kernel_long_t in struct msgbuf
    uapi, asm-generic: Use __kernel_ulong_t in uapi struct ipc64_perm
    uapi: Use __kernel_long_t/__kernel_ulong_t in
    uapi: Use __kernel_long_t in struct timex

    Linus Torvalds
     
  • Pull networking fixes from David Miller:
    "Several fixups, of note:

    1) Fix unlock of not held spinlock in RXRPC code, from Alexey
    Khoroshilov.

    2) Call pci_disable_device() from the correct shutdown path in bnx2x
    driver, from Yuval Mintz.

    3) Fix qeth build on s390 for some configurations, from Eugene
    Crosser.

    4) Cure locking bugs in bond_loadbalance_arp_mon(), from Ding
    Tianhong.

    5) Must do netif_napi_add() before registering netdevice in sky2
    driver, from Stanislaw Gruszka.

    6) Fix lost bug fix during merge due to code movement in ieee802154,
    noticed and fixed by the eagle eyed Stephen Rothwell.

    7) Get rid of resource leak in xen-netfront driver, from Annie Li.

    8) Bounds checks in qlcnic driver are off by one, from Manish Chopra.

    9) TPROXY can leak sockets when TCP early demux is enabled, fix from
    Holger Eitzenberger"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (32 commits)
    qeth: fix build of s390 allmodconfig
    bonding: fix locking in bond_loadbalance_arp_mon()
    tun: add device name(iff) field to proc fdinfo entry
    DT: net: davinci_emac: "ti, davinci-no-bd-ram" property is actually optional
    DT: net: davinci_emac: "ti, davinci-rmii-en" property is actually optional
    bnx2x: Fix generic option settings
    net: Fix warning on make htmldocs caused by skbuff.c
    llc: remove noisy WARN from llc_mac_hdr_init
    qlcnic: Fix loopback test failure
    qlcnic: Fix tx timeout.
    qlcnic: Fix initialization of vlan list.
    qlcnic: Correct off-by-one errors in bounds checks
    net: Document promote_secondaries
    net: gre: use icmp_hdr() to get inner ip header
    i40e: Add missing braces to i40e_dcb_need_reconfig()
    xen-netfront: fix resource leak in netfront
    net: 6lowpan: fixup for code movement
    hyperv: Add support for physically discontinuous receive buffer
    sky2: initialize napi before registering device
    net: Fix memory leak if TPROXY used with TCP early demux
    ...

    Linus Torvalds
     
  • Merge random fixes from Andrew Morton:
    "Random fixes.

    I have one batch remaining for -rc1, mainly zram changes which await a
    merge of Jens's trees"

    * emailed patches fron Andrew Morton akpm@linux-foundation.org>:
    MAINTAINERS: ADI Linux development mailing lists: change to the new server
    Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/
    dma-debug: fix overlap detection
    memblock: add limit checking to memblock_virt_alloc
    mm/readahead.c: fix do_readahead() for no readpage(s)
    mm/slub.c: do not VM_BUG_ON_PAGE() for temporary on-stack pages
    slab: fix wrong retval on kmem_cache_create_memcg error path
    s390/compat: change parameter types from unsigned long to compat_ulong_t
    fs/compat: fix lookup_dcookie() parameter handling
    fs/compat: fix parameter handling for compat readv/writev syscalls
    mm/mempolicy.c: convert to pr_foo()
    mm: numa: initialise numa balancing after jump label initialisation
    mm/page-writeback.c: do not count anon pages as dirtyable memory
    mm/page-writeback.c: fix dirty_balance_reserve subtraction from dirtyable memory
    mm: document improved handling of swappiness==0
    lib/genalloc.c: add check gen_pool_dma_alloc() if dma pointer is not NULL

    Linus Torvalds