05 Jul, 2015

7 commits

  • Pull more vfs updates from Al Viro:
    "Assorted VFS fixes and related cleanups (IMO the most interesting in
    that part are f_path-related things and Eric's descriptor-related
    stuff). UFS regression fixes (it got broken last cycle). 9P fixes.
    fs-cache series, DAX patches, Jan's file_remove_suid() work"

    [ I'd say this is much more than "fixes and related cleanups". The
    file_table locking rule change by Eric Dumazet is a rather big and
    fundamental update even if the patch isn't huge. - Linus ]

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (49 commits)
    9p: cope with bogus responses from server in p9_client_{read,write}
    p9_client_write(): avoid double p9_free_req()
    9p: forgetting to cancel request on interrupted zero-copy RPC
    dax: bdev_direct_access() may sleep
    block: Add support for DAX reads/writes to block devices
    dax: Use copy_from_iter_nocache
    dax: Add block size note to documentation
    fs/file.c: __fget() and dup2() atomicity rules
    fs/file.c: don't acquire files->file_lock in fd_install()
    fs:super:get_anon_bdev: fix race condition could cause dev exceed its upper limitation
    vfs: avoid creation of inode number 0 in get_next_ino
    namei: make set_root_rcu() return void
    make simple_positive() public
    ufs: use dir_pages instead of ufs_dir_pages()
    pagemap.h: move dir_pages() over there
    remove the pointless include of lglock.h
    fs: cleanup slight list_entry abuse
    xfs: Correctly lock inode when removing suid and file capabilities
    fs: Call security_ops->inode_killpriv on truncate
    fs: Provide function telling whether file_remove_privs() will do anything
    ...

    Linus Torvalds
     
  • Pull SCSI target updates from Nicholas Bellinger:
    "It's been a busy development cycle for target-core in a number of
    different areas.

    The fabric API usage for se_node_acl allocation is now within
    target-core code, dropping the external API callers for all fabric
    drivers tree-wide.

    There is a new conversion to RCU hlists for se_node_acl and
    se_portal_group LUN mappings, that turns fast-past LUN lookup into a
    completely lockless code-path. It also removes the original
    hard-coded limitation of 256 LUNs per fabric endpoint.

    The configfs attributes for backends can now be shared between core
    and driver code, allowing existing drivers to use common code while
    still allowing flexibility for new backend provided attributes.

    The highlights include:

    - Merge sbc_verify_dif_* into common code (sagi)
    - Remove iscsi-target support for obsolete IFMarker/OFMarker
    (Christophe Vu-Brugier)
    - Add bidi support in target/user backend (ilias + vangelis + agover)
    - Move se_node_acl allocation into target-core code (hch)
    - Add crc_t10dif_update common helper (akinobu + mkp)
    - Handle target-core odd SGL mapping for data transfer memory
    (akinobu)
    - Move transport ID handling into target-core (hch)
    - Move task tag into struct se_cmd + support 64-bit tags (bart)
    - Convert se_node_acl->device_list[] to RCU hlist (nab + hch +
    paulmck)
    - Convert se_portal_group->tpg_lun_list[] to RCU hlist (nab + hch +
    paulmck)
    - Simplify target backend driver registration (hch)
    - Consolidate + simplify target backend attribute implementations
    (hch + nab)
    - Subsume se_port + t10_alua_tg_pt_gp_member into se_lun (hch)
    - Drop lun_sep_lock for se_lun->lun_se_dev RCU usage (hch + nab)
    - Drop unnecessary core_tpg_register TFO parameter (nab)
    - Use 64-bit LUNs tree-wide (hannes)
    - Drop left-over TARGET_MAX_LUNS_PER_TRANSPORT limit (hannes)"

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (76 commits)
    target: Bump core version to v5.0
    target: remove target_core_configfs.h
    target: remove unused TARGET_CORE_CONFIG_ROOT define
    target: consolidate version defines
    target: implement WRITE_SAME with UNMAP bit using ->execute_unmap
    target: simplify UNMAP handling
    target: replace se_cmd->execute_rw with a protocol_data field
    target/user: Fix inconsistent kmap_atomic/kunmap_atomic
    target: Send UA when changing LUN inventory
    target: Send UA upon LUN RESET tmr completion
    target: Send UA on ALUA target port group change
    target: Convert se_lun->lun_deve_lock to normal spinlock
    target: use 'se_dev_entry' when allocating UAs
    target: Remove 'ua_nacl' pointer from se_ua structure
    target_core_alua: Correct UA handling when switching states
    xen-scsiback: Fix compile warning for 64-bit LUN
    target: Remove TARGET_MAX_LUNS_PER_TRANSPORT
    target: use 64-bit LUNs
    target: Drop duplicate + unused se_dev_check_wce
    target: Drop unnecessary core_tpg_register TFO parameter
    ...

    Linus Torvalds
     
  • Pull NTB updates from Jon Mason:
    "This includes a pretty significant reworking of the NTB core code, but
    has already produced some significant performance improvements.

    An abstraction layer was added to allow the hardware and clients to be
    easily added. This required rewriting the NTB transport layer for
    this abstraction layer. This modification will allow future "high
    performance" NTB clients.

    In addition to this change, a number of performance modifications were
    added. These changes include NUMA enablement, using CPU memcpy
    instead of asyncdma, and modification of NTB layer MTU size"

    * tag 'ntb-4.2' of git://github.com/jonmason/ntb: (22 commits)
    NTB: Add split BAR output for debugfs stats
    NTB: Change WARN_ON_ONCE to pr_warn_once on unsafe
    NTB: Print driver name and version in module init
    NTB: Increase transport MTU to 64k from 16k
    NTB: Rename Intel code names to platform names
    NTB: Default to CPU memcpy for performance
    NTB: Improve performance with write combining
    NTB: Use NUMA memory in Intel driver
    NTB: Use NUMA memory and DMA chan in transport
    NTB: Rate limit ntb_qp_link_work
    NTB: Add tool test client
    NTB: Add ping pong test client
    NTB: Add parameters for Intel SNB B2B addresses
    NTB: Reset transport QP link stats on down
    NTB: Do not advance transport RX on link down
    NTB: Differentiate transport link down messages
    NTB: Check the device ID to set errata flags
    NTB: Enable link for Intel root port mode in probe
    NTB: Read peer info from local SPAD in transport
    NTB: Split ntb_hw_intel and ntb_transport drivers
    ...

    Linus Torvalds
     
  • Pull kvm fixes from Paolo Bonzini:
    "Except for the preempt notifiers fix, these are all small bugfixes
    that could have been waited for -rc2. Sending them now since I was
    taking care of Peter's patch anyway"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
    kvm: add hyper-v crash msrs values
    KVM: x86: remove data variable from kvm_get_msr_common
    KVM: s390: virtio-ccw: don't overwrite config space values
    KVM: x86: keep track of LVT0 changes under APICv
    KVM: x86: properly restore LVT0
    KVM: x86: make vapics_in_nmi_mode atomic
    sched, preempt_notifier: separate notifier registration from static_key inc/dec

    Linus Torvalds
     
  • Change ntb_hw_intel to use the new NTB hardware abstraction layer.

    Split ntb_transport into its own driver. Change it to use the new NTB
    hardware abstraction layer.

    Signed-off-by: Allen Hubbe
    Signed-off-by: Jon Mason

    Allen Hubbe
     
  • Abstract the NTB device behind a programming interface, so that it can
    support different hardware and client drivers.

    Signed-off-by: Allen Hubbe
    Signed-off-by: Jon Mason

    Allen Hubbe
     
  • Pull irq update from Thomas Gleixner:
    "The last update for 4.2 is just moving a macro from a local header to
    the global one, so it can be used in architecture code as well.

    Cleanup of the now empty local header is 4.3 material"

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    irqchip: Move IRQCHIP_DECLARE macro to include/linux/irqchip.h

    Linus Torvalds
     

04 Jul, 2015

10 commits

  • Pull scheduler fixes from Ingo Molnar:
    "Debug info and other statistics fixes and related enhancements"

    * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    sched/numa: Fix numa balancing stats in /proc/pid/sched
    sched/numa: Show numa_group ID in /proc/sched_debug task listings
    sched/debug: Move print_cfs_rq() declaration to kernel/sched/sched.h
    sched/stat: Expose /proc/pid/schedstat if CONFIG_SCHED_INFO=y
    sched/stat: Simplify the sched_info accounting dependency

    Linus Torvalds
     
  • Pull second round of input updates from Dmitry Torokhov:
    "A new driver for Weida wdt87xx touch controllers, and a bunch of
    fixups for other drivers"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: wdt87xx_i2c - add a scaling factor for TOUCH_MAJOR event
    Input: wdt87xx_i2c - remove stray newline in diagnostic message
    Input: arc_ps2 - add HAS_IOMEM dependency
    Input: wdt87xx_i2c - fix format warning
    Input: improve parsing OF parameters for touchscreens
    Input: edt-ft5x06 - mark as direct input device
    Input: use for_each_set_bit() where appropriate
    Input: add a driver for wdt87xx touchscreen controller
    Input: axp20x-pek - fix reporting button state as inverted
    Input: xpad - re-send LED command on present event
    Input: xpad - set the LEDs properly on XBox Wireless controllers
    Input: imx_keypad - check for clk_prepare_enable() error

    Linus Torvalds
     
  • Currently print_cfs_rq() is declared in include/linux/sched.h.
    However it's not used outside kernel/sched. Hence move the
    declaration to kernel/sched/sched.h

    Also some functions are only available for CONFIG_SCHED_DEBUG=y.
    Hence move the declarations to within the #ifdef.

    Signed-off-by: Srikar Dronamraju
    Acked-by: Rik van Riel
    Cc: Iulia Manda
    Cc: Linus Torvalds
    Cc: Mel Gorman
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Link: http://lkml.kernel.org/r/1435252903-1081-2-git-send-email-srikar@linux.vnet.ibm.com
    Signed-off-by: Ingo Molnar

    Srikar Dronamraju
     
  • Both CONFIG_SCHEDSTATS=y and CONFIG_TASK_DELAY_ACCT=y track task
    sched_info, which results in ugly #if clauses.

    Simplify the code by introducing a synthethic CONFIG_SCHED_INFO
    switch, selected by both.

    Signed-off-by: Naveen N. Rao
    Cc: Balbir Singh
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Srikar Dronamraju
    Cc: Thomas Gleixner
    Cc: a.p.zijlstra@chello.nl
    Cc: ricklind@us.ibm.com
    Link: http://lkml.kernel.org/r/8d19eef800811a94b0f91bcbeb27430a884d7433.1435255405.git.naveen.n.rao@linux.vnet.ibm.com
    Signed-off-by: Ingo Molnar

    Naveen N. Rao
     
  • Pull virtio/vhost cross endian support from Michael Tsirkin:
    "I have just queued some more bugfix patches today but none fix
    regressions and none are related to these ones, so it looks like a
    good time for a merge for -rc1.

    The motivation for this is support for legacy BE guests on the new LE
    hosts. There are two redeeming properties that made me merge this:

    - It's a trivial amount of code: since we wrap host/guest accesses
    anyway, almost all of it is well hidden from drivers.

    - Sane platforms would never set flags like VHOST_CROSS_ENDIAN_LEGACY,
    and when it's clear, there's zero overhead (as some point it was
    tested by compiling with and without the patches, got the same
    stripped binary).

    Maybe we could create a Kconfig symbol to enforce the second point:
    prevent people from enabling it eg on x86. I will look into this"

    * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
    virtio-pci: alloc only resources actually used.
    macvtap/tun: cross-endian support for little-endian hosts
    vhost: cross-endian support for legacy devices
    virtio: add explicit big-endian support to memory accessors
    vhost: introduce vhost_is_little_endian() helper
    vringh: introduce vringh_is_little_endian() helper
    macvtap: introduce macvtap_is_little_endian() helper
    tun: add tun_is_little_endian() helper
    virtio: introduce virtio_is_little_endian() helper

    Linus Torvalds
     
  • Pull user namespace updates from Eric Biederman:
    "Long ago and far away when user namespaces where young it was realized
    that allowing fresh mounts of proc and sysfs with only user namespace
    permissions could violate the basic rule that only root gets to decide
    if proc or sysfs should be mounted at all.

    Some hacks were put in place to reduce the worst of the damage could
    be done, and the common sense rule was adopted that fresh mounts of
    proc and sysfs should allow no more than bind mounts of proc and
    sysfs. Unfortunately that rule has not been fully enforced.

    There are two kinds of gaps in that enforcement. Only filesystems
    mounted on empty directories of proc and sysfs should be ignored but
    the test for empty directories was insufficient. So in my tree
    directories on proc, sysctl and sysfs that will always be empty are
    created specially. Every other technique is imperfect as an ordinary
    directory can have entries added even after a readdir returns and
    shows that the directory is empty. Special creation of directories
    for mount points makes the code in the kernel a smidge clearer about
    it's purpose. I asked container developers from the various container
    projects to help test this and no holes were found in the set of mount
    points on proc and sysfs that are created specially.

    This set of changes also starts enforcing the mount flags of fresh
    mounts of proc and sysfs are consistent with the existing mount of
    proc and sysfs. I expected this to be the boring part of the work but
    unfortunately unprivileged userspace winds up mounting fresh copies of
    proc and sysfs with noexec and nosuid clear when root set those flags
    on the previous mount of proc and sysfs. So for now only the atime,
    read-only and nodev attributes which userspace happens to keep
    consistent are enforced. Dealing with the noexec and nosuid
    attributes remains for another time.

    This set of changes also addresses an issue with how open file
    descriptors from /proc//ns/* are displayed. Recently readlink of
    /proc//fd has been triggering a WARN_ON that has not been
    meaningful since it was added (as all of the code in the kernel was
    converted) and is not now actively wrong.

    There is also a short list of issues that have not been fixed yet that
    I will mention briefly.

    It is possible to rename a directory from below to above a bind mount.
    At which point any directory pointers below the renamed directory can
    be walked up to the root directory of the filesystem. With user
    namespaces enabled a bind mount of the bind mount can be created
    allowing the user to pick a directory whose children they can rename
    to outside of the bind mount. This is challenging to fix and doubly
    so because all obvious solutions must touch code that is in the
    performance part of pathname resolution.

    As mentioned above there is also a question of how to ensure that
    developers by accident or with purpose do not introduce exectuable
    files on sysfs and proc and in doing so introduce security regressions
    in the current userspace that will not be immediately obvious and as
    such are likely to require breaking userspace in painful ways once
    they are recognized"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
    vfs: Remove incorrect debugging WARN in prepend_path
    mnt: Update fs_fully_visible to test for permanently empty directories
    sysfs: Create mountpoints with sysfs_create_mount_point
    sysfs: Add support for permanently empty directories to serve as mount points.
    kernfs: Add support for always empty directories.
    proc: Allow creating permanently empty directories that serve as mount points
    sysctl: Allow creating permanently empty directories that serve as mountpoints.
    fs: Add helper functions for permanently empty directories.
    vfs: Ignore unlocked mounts in fs_fully_visible
    mnt: Modify fs_fully_visible to deal with locked ro nodev and atime
    mnt: Refactor the logic for mounting sysfs and proc in a user namespace

    Linus Torvalds
     
  • Pull remoteproc updates from Ohad Ben-Cohen:

    - remoteproc fixes/cleanups from Suman Anna

    - new remoteproc TI Wakeup M3 driver from Dave Gerlach

    - remoteproc core support for TI's Wakeup M3 driver from both Dave and Suman

    - tiny remoteproc build fix from myself

    * tag 'remoteproc-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc:
    remoteproc: fix !CONFIG_OF build breakage
    remoteproc/wkup_m3: add a remoteproc driver for TI Wakeup M3
    Documentation: dt: add bindings for TI Wakeup M3 processor
    remoteproc: add a rproc ops for performing address translation
    remoteproc: introduce rproc_get_by_phandle API
    remoteproc: fix various checkpatch warnings
    remoteproc/davinci: fix quoted split string checkpatch warning
    remoteproc/ste: add blank lines after declarations

    Linus Torvalds
     
  • Pull hwspinlock updates from Ohad Ben-Cohen:

    - hwspinlock core DT support from Suman Anna

    - OMAP hwspinlock DT support from Suman Anna

    - QCOM hwspinlock DT support from Bjorn Andersson

    - a new CSR atlas7 hwspinlock driver from Wei Chen

    - CSR atlas7 hwspinlock DT binding document from Wei Chen

    - a tiny QCOM hwspinlock driver fix from Bjorn Andersson

    * tag 'hwspinlock-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock:
    hwspinlock: qcom: Correct msb in regmap_field
    DT: hwspinlock: add the CSR atlas7 hwspinlock bindings document
    hwspinlock: add a CSR atlas7 driver
    hwspinlock: qcom: Add support for Qualcomm HW Mutex block
    DT: hwspinlock: Add binding documentation for Qualcomm hwmutex
    hwspinlock/omap: add support for dt nodes
    Documentation: dt: add the omap hwspinlock bindings document
    hwspinlock/core: add device tree support
    Documentation: dt: add common bindings for hwspinlock

    Linus Torvalds
     
  • Pull block fixes from Jens Axboe:
    "Mainly sending this off now for the writeback fixes, since they fix a
    real regression introduced with the cgroup writeback changes. The
    NVMe fix could wait for next pull for this series, but it's simple
    enough that we might as well include it.

    This contains:

    - two cgroup writeback fixes from Tejun, fixing a user reported issue
    with luks crypt devices hanging when being closed.

    - NVMe error cleanup fix from Jon Derrick, fixing a case where we'd
    attempt to free an unregistered IRQ"

    * 'for-linus' of git://git.kernel.dk/linux-block:
    NVMe: Fix irq freeing when queue_request_irq fails
    writeback: don't drain bdi_writeback_congested on bdi destruction
    writeback: don't embed root bdi_writeback_congested in bdi_writeback

    Linus Torvalds
     
  • Commit 1cde2930e154 ("sched/preempt: Add static_key() to preempt_notifiers")
    had two problems. First, the preempt-notifier API needs to sleep with the
    addition of the static_key, we do however need to hold off preemption
    while modifying the preempt notifier list, otherwise a preemption could
    observe an inconsistent list state. KVM correctly registers and
    unregisters preempt notifiers with preemption disabled, so the sleep
    caused dmesg splats.

    Second, KVM registers and unregisters preemption notifiers very often
    (in vcpu_load/vcpu_put). With a single uniprocessor guest the static key
    would move between 0 and 1 continuously, hitting the slow path on every
    userspace exit.

    To fix this, wrap the static_key inc/dec in a new API, and call it from
    KVM.

    Fixes: 1cde2930e154 ("sched/preempt: Add static_key() to preempt_notifiers")
    Reported-by: Pontus Fuchs
    Reported-by: Takashi Iwai
    Tested-by: Takashi Iwai
    Signed-off-by: Peter Zijlstra (Intel)
    Signed-off-by: Paolo Bonzini

    Peter Zijlstra
     

03 Jul, 2015

8 commits

  • Pull ACPICA updates from Rafael Wysocki:
    "Additional ACPICA material for v4.2-rc1

    This will update the ACPICA code in the kernel to upstream revision
    20150619 (a bug-fix release mostly including stable-candidate fixes)
    and restore an earlier ACPICA commit that had to be reverted due to a
    regression introduced by it (the regression is addressed by
    blacklisting the only known system affected by it to date).

    The only new feature added by this update is the support for
    overriding objects in the ACPI namespace and a new ACPI table that can
    be used for that called the Override System Definition Table (OSDT).
    That should allow us to "patch" the ACPI namespace built from
    incomplete or incorrect ACPI System Definition tables (DSDT, SSDT)
    during system startup without the need to provide replacements for all
    of those tables in the future.

    Specifics:

    - Fix system resume problems related to 32-bit and 64-bit versions of
    the Firmware ACPI Control Structure (FACS) in the firmare (Lv
    Zheng)

    - Fix double initialization of the FACS (Lv Zheng)

    - Add _CLS object processing code to ACPICA (Suravee Suthikulpanit)

    - Add support for the (currently missing) new GIC version field in
    the Multiple APIC Description Table (MADT) (Hanjun Guo)

    - Add support for overriding objects in the ACPI namespace to ACPICA
    and OSDT support (Lv Zheng, Bob Moore, Zhang Rui)

    - Updates related to the TCPA and TPM2 ACPI tables (Bob Moore)

    - Restore the commit modifying _REV to always return "2" (as required
    by ACPI 6) and add a blacklisting mechanism for systems that may be
    affected by that change (Rafael J Wysocki)

    - Assorted fixes and cleanups (Bob Moore, Lv Zheng, Sascha Wildner)"

    * tag 'acpica-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (28 commits)
    Revert 'Revert "ACPICA: Permanently set _REV to the value '2'."'
    ACPI / init: Make it possible to override _REV
    ACPICA: Update version to 20150619
    ACPICA: Comment update, no functional change
    ACPICA: Update TPM2 ACPI table
    ACPICA: Update definitions for the TCPA and TPM2 ACPI tables
    ACPICA: Split C library prototypes to new header
    ACPICA: De-macroize calls to standard C library functions
    ACPI / acpidump: Update acpidump manual
    ACPICA: acpidump: Convert the default behavior to dump from /sys/firmware/acpi/tables
    ACPICA: acpidump: Allow customized tables to be dumped without accessing /dev/mem
    ACPICA: Cleanup output for the ASL Debug object
    ACPICA: Update for acpi_install_table memory types
    ACPICA: Namespace: Change namespace override to avoid node deletion
    ACPICA: Namespace: Add support of OSDT table
    ACPICA: Namespace: Add support to allow overriding objects
    ACPICA: ACPI 6.0: Add values for MADT GIC version field
    ACPICA: Utilities: Add _CLS processing
    ACPICA: Add dragon_fly support to unix file mapping file
    ACPICA: EFI: Add EFI interface definitions to eliminate dependency of GNU EFI
    ...

    Linus Torvalds
     
  • Pull radeon and amdgpu fixes from Alex Deucher:
    "First round of fixes for 4.2 for radeon and amdgpu. Stuff all over
    the place:

    - hibernation, suspend fixes for radeon and amdgpu
    - radeon audio fix
    - amdgpu ioctl optimzations and fixes
    - amdgpu VCE cs checker improvements
    - misc bug fixes"

    [ Dave on vacation, pulling directly ]

    * 'drm-next-4.2' of git://people.freedesktop.org/~agd5f/linux: (30 commits)
    drm/radeon: only check the sink type on DP connectors
    drm/amdgpu: add flag to delay VM updates
    drm/amdgpu: add optional dependencies to the CS IOCTL v2
    drm/amdgpu: recreate fence from user seq
    gpu/drm/amdgpu: Fix build when CONFIG_DEBUG_FS is not set
    Revert "drm/radeon: dont switch vt on suspend"
    drm/amdgpu: disable enable_nb_ps_policy temporarily
    drm/amdgpu: correct define SMU_EnabledFeatureScoreboard_SclkDpmOn
    drm/amdgpu: allocate ip_block_enabled memory in common code
    drm/amdgpu: remove unnecessary check before kfree
    drm/amdgpu: use kzalloc for allocating one thing
    drm/radeon: fix adding all VAs to the freed list on remove v2
    drm/amdgpu: add chunk id validity check
    drm/amdgpu: fix crash on invalid CS IOCTL
    drm/amdgpu: reset wptr at cp compute resume (v2)
    drm/amdgpu: check VCE feedback and bitstream index
    drm/amdgpu: make VCE handle check more strict
    drm/amdgpu: check VCE relocation buffer range
    drm/amdgpu: silence invalid error message
    drm/amdgpu: fix wrong type
    ...

    Linus Torvalds
     
  • At the moment the IRQCHIP_DECLARE macro is only declared locally in
    drivers/irqchip/irqchip.h. It prevents from using it directly in arch/*
    directories whenever irqchip drivers only exist there, which happens in a few
    cases (e.g. arc, arm, microblaze and mips).

    This patch makes the macro to be globally defined, i.e. in
    include/linux/irqchip.h, and thus usable for arch-specific declarations of
    irqchip drivers. In this way, it is very similar to what clocksource does (ie
    CLOCKSOURCE_OF_DECLARE is defined in include/linux/clocksource.h).

    For now, this patch only moves the declaration of the macro
    IRQCHIP_DECLARE to the global header 'include/linux/irqchip.h' and make
    'drivers/irqchip/irqchip.h' include 'include/linux/irqchip.h'. Later, other
    patches will get rid of 'drivers/irqchip/irqchip.h' and modify all the impacted
    irqchip drivers.

    Signed-off-by: Joel Porquet
    Cc: Jason Cooper
    Link: http://lkml.kernel.org/r/1435865565-14114-1-git-send-email-joel@porquet.org
    Signed-off-by: Thomas Gleixner

    Joel Porquet
     
  • Pull Ceph updates from Sage Weil:
    "We have a pile of bug fixes from Ilya, including a few patches that
    sync up the CRUSH code with the latest from userspace.

    There is also a long series from Zheng that fixes various issues with
    snapshots, inline data, and directory fsync, some simplification and
    improvement in the cap release code, and a rework of the caching of
    directory contents.

    To top it off there are a few small fixes and cleanups from Benoit and
    Hong"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (40 commits)
    rbd: use GFP_NOIO in rbd_obj_request_create()
    crush: fix a bug in tree bucket decode
    libceph: Fix ceph_tcp_sendpage()'s more boolean usage
    libceph: Remove spurious kunmap() of the zero page
    rbd: queue_depth map option
    rbd: store rbd_options in rbd_device
    rbd: terminate rbd_opts_tokens with Opt_err
    ceph: fix ceph_writepages_start()
    rbd: bump queue_max_segments
    ceph: rework dcache readdir
    crush: sync up with userspace
    crush: fix crash from invalid 'take' argument
    ceph: switch some GFP_NOFS memory allocation to GFP_KERNEL
    ceph: pre-allocate data structure that tracks caps flushing
    ceph: re-send flushing caps (which are revoked) in reconnect stage
    ceph: send TID of the oldest pending caps flush to MDS
    ceph: track pending caps flushing globally
    ceph: track pending caps flushing accurately
    libceph: fix wrong name "Ceph filesystem for Linux"
    ceph: fix directory fsync
    ...

    Linus Torvalds
     
  • Pull NFS client updates from Trond Myklebust:
    "Highlights include:

    Stable patches:
    - Fix a crash in the NFSv4 file locking code.
    - Fix an fsync() regression, where we were failing to retry I/O in
    some circumstances.
    - Fix an infinite loop in NFSv4.0 OPEN stateid recovery
    - Fix a memory leak when an attempted pnfs fails.
    - Fix a memory leak in the backchannel code
    - Large hostnames were not supported correctly in NFSv4.1
    - Fix a pNFS/flexfiles bug that was impeding error reporting on I/O.
    - Fix a couple of credential issues in pNFS/flexfiles

    Bugfixes + cleanups:
    - Open flag sanity checks in the NFSv4 atomic open codepath
    - More NFSv4 delegation related bugfixes
    - Various NFSv4.1 backchannel bugfixes and cleanups
    - Fix the NFS swap socket code
    - Various cleanups of the NFSv4 SETCLIENTID and EXCHANGE_ID code
    - Fix a UDP transport deadlock issue

    Features:
    - More RDMA client transport improvements
    - NFSv4.2 LAYOUTSTATS functionality for pnfs flexfiles"

    * tag 'nfs-for-4.2-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (87 commits)
    nfs: Remove invalid tk_pid from debug message
    nfs: Remove invalid NFS_ATTR_FATTR_V4_REFERRAL checking in nfs4_get_rootfh
    nfs: Drop bad comment in nfs41_walk_client_list()
    nfs: Remove unneeded micro checking of CONFIG_PROC_FS
    nfs: Don't setting FILE_CREATED flags always
    nfs: Use remove_proc_subtree() instead remove_proc_entry()
    nfs: Remove unused argument in nfs_server_set_fsinfo()
    nfs: Fix a memory leak when meeting an unsupported state protect
    nfs: take extra reference to fl->fl_file when running a LOCKU operation
    NFSv4: When returning a delegation, don't reclaim an incompatible open mode.
    NFSv4.2: LAYOUTSTATS is optional to implement
    NFSv4.2: Fix up a decoding error in layoutstats
    pNFS/flexfiles: Fix the reset of struct pgio_header when resending
    pNFS/flexfiles: Turn off layoutcommit for servers that don't need it
    pnfs/flexfiles: protect ktime manipulation with mirror lock
    nfs: provide pnfs_report_layoutstat when NFS42 is disabled
    nfs: verify open flags before allowing open
    nfs: always update creds in mirror, even when we have an already connected ds
    nfs: fix potential credential leak in ff_layout_update_mirror_cred
    pnfs/flexfiles: report layoutstat regularly
    ...

    Linus Torvalds
     
  • Pull fuse updates from Miklos Szeredi:
    "This is the start of improving fuse scalability.

    An input queue and a processing queue is split out from the monolithic
    fuse connection, each of those having their own spinlock. The end of
    the patchset adds the ability to clone a fuse connection. This means,
    that instead of having to read/write requests/answers on a single fuse
    device fd, the fuse daemon can have multiple distinct file descriptors
    open. Each of those can be used to receive requests and send answers,
    currently the only constraint is that a request must be answered on
    the same fd as it was read from.

    This can be extended further to allow binding a device clone to a
    specific CPU or NUMA node.

    Based on a patchset by Srinivas Eeda and Ashish Samant. Thanks to
    Ashish for the review of this series"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse: (40 commits)
    fuse: update MAINTAINERS entry
    fuse: separate pqueue for clones
    fuse: introduce per-instance fuse_dev structure
    fuse: device fd clone
    fuse: abort: no fc->lock needed for request ending
    fuse: no fc->lock for pqueue parts
    fuse: no fc->lock in request_end()
    fuse: cleanup request_end()
    fuse: request_end(): do once
    fuse: add req flag for private list
    fuse: pqueue locking
    fuse: abort: group pqueue accesses
    fuse: cleanup fuse_dev_do_read()
    fuse: move list_del_init() from request_end() into callers
    fuse: duplicate ->connected in pqueue
    fuse: separate out processing queue
    fuse: simplify request_wait()
    fuse: no fc->lock for iqueue parts
    fuse: allow interrupt queuing without fc->lock
    fuse: iqueue locking
    ...

    Linus Torvalds
     
  • …/kernel/git/paulg/linux

    Pull module_platform_driver replacement from Paul Gortmaker:
    "Replace module_platform_driver with builtin_platform driver in non
    modules.

    We see an increasing number of non-modular drivers using
    modular_driver() type register functions. There are several downsides
    to letting this continue unchecked:

    - The code can appear modular to a reader of the code, and they won't
    know if the code really is modular without checking the Makefile
    and Kconfig to see if compilation is governed by a bool or
    tristate.

    - Coders of drivers may be tempted to code up an __exit function that
    is never used, just in order to satisfy the required three args of
    the modular registration function.

    - Non-modular code ends up including the <module.h> which increases
    CPP overhead that they don't need.

    - It hinders us from performing better separation of the module init
    code and the generic init code.

    So here we introduce similar macros for builtin drivers. Then we
    convert builtin drivers (controlled by a bool Kconfig) by making the
    following type of mapping:

    module_platform_driver() ---> builtin_platform_driver()
    module_platform_driver_probe() ---> builtin_platform_driver_probe().

    The set of drivers that are converted here are just the ones that
    showed up as relying on an implicit include of <module.h> during a
    pending header cleanup. So we convert them here vs adding an include
    of <module.h> to non-modular code to avoid compile fails. Additonal
    conversions can be done asynchronously at any time.

    Once again, an unused module_exit function that is removed here
    appears in the diffstat as an outlier wrt all the other changes"

    * tag 'module-builtin_driver-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
    drivers/clk: convert sunxi/clk-mod0.c to use builtin_platform_driver
    drivers/power: Convert non-modular syscon-reboot to use builtin_platform_driver
    drivers/soc: Convert non-modular soc-realview to use builtin_platform_driver
    drivers/soc: Convert non-modular tegra/pmc to use builtin_platform_driver
    drivers/cpufreq: Convert non-modular s5pv210-cpufreq.c to use builtin_platform_driver
    drivers/cpuidle: Convert non-modular drivers to use builtin_platform_driver
    drivers/platform: Convert non-modular pdev_bus to use builtin_platform_driver
    platform_device: better support builtin boilerplate avoidance

    Linus Torvalds
     
  • Pull __cpuinit removal from Paul Gortmaker:
    "Remove __cpuinit macros and users.

    We removed the __cpuinit stuff in 3.11-rc1 with commit 22f0a2736774
    ("init.h: remove __cpuinit sections from the kernel") but we left some
    no-op stubs as a courtesy to unmerged code.

    Here we get rid of the stubs as well, since (as can be seen in these
    changes) they are enabling use cases to sneak back in, primarily from
    older BSP code that has been living out of tree for some time prior to
    getting mainlined. So we get rid of these "new" users 1st and then
    get rid of the stubs.

    Obviously, getting rid of the stubs can't happen until all the users
    are gone, so I had to keep this together as a series, even though some
    of these commits since got picked up into maintainers trees as well.

    The nature of this change is such that it should have zero impact on
    the generated runtime.

    This is one of several independent cleanup branches aimed at enabling
    better organization in the init.h and module.h code. They have been
    getting coverage in the linux-next tree for the last month, in
    addition to my local testing, which also covers approximately a half
    dozen or more architectures"

    * tag 'cpuinit-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
    init: delete the __cpuinit related stubs
    kernel/cpu.c: remove new instance of __cpuinit that crept back in
    sched/core: remove __cpuinit section tag that crept back in.
    mips/mm/tlbex: remove new instance of __cpuinit that crept back in
    mips/c-r4k: remove legacy __cpuinit section that crept in
    mips/bcm77xx: remove legacy __cpuinit sections that crept in
    mips/ath25: remove legacy __cpuinit section that crept in
    arm/mach-hisi: remove legacy __CPUINIT section that crept in
    arm/mach-rockchip: remove legacy __cpuinit section that crept in
    arm/mach-mvebu: remove legacy __cpuinit sections that crept in
    arm/mach-keystone: remove legacy __cpuinit sections that crept in

    Linus Torvalds
     

02 Jul, 2015

15 commits

  • 52ebea749aae ("writeback: make backing_dev_info host cgroup-specific
    bdi_writebacks") made bdi (backing_dev_info) host per-cgroup wb's
    (bdi_writeback's). As the congested state needs to be per-wb and
    referenced from blkcg side and multiple wbs, the patch made all
    non-root cong's (bdi_writeback_congested's) reference counted and
    indexed on bdi.

    When a bdi is destroyed, cgwb_bdi_destroy() tries to drain all
    non-root cong's; however, this can hang indefinitely because wb's can
    also be referenced from blkcg_gq's which are destroyed after bdi
    destruction is complete.

    To fix the bug, bdi destruction will be updated to not wait for cong's
    to drain, which naturally means that cong's may outlive the associated
    bdi. This is fine for non-root cong's but is problematic for the root
    cong's which are embedded in their bdi's as they may end up getting
    dereferenced after the containing bdi's are freed.

    This patch makes root cong's behave the same as non-root cong's. They
    are no longer embedded in their bdi's but allocated separately during
    bdi initialization, indexed and reference counted the same way.

    * As cong handling is the same for all wb's, wb->congested
    initialization is moved into wb_init().

    * When !CONFIG_CGROUP_WRITEBACK, there was no indexing or refcnting.
    bdi->wb_congested is now a pointer pointing to the root cong
    allocated during bdi init and minimal refcnting operations are
    implemented.

    * The above makes root wb init paths diverge depending on
    CONFIG_CGROUP_WRITEBACK. root wb init is moved to cgwb_bdi_init().

    This patch in itself shouldn't cause any consequential behavior
    differences but prepares for the actual fix.

    Signed-off-by: Tejun Heo
    Reported-by: Jon Christopherson
    Link: https://bugzilla.kernel.org/show_bug.cgi?id=100681
    Tested-by: Jon Christopherson

    Added include to backing-dev.h for kfree() definition.

    Signed-off-by: Jens Axboe

    Tejun Heo
     
  • This patch only moves files to their new locations, before applying the
    next two patches adding the NTB Abstraction layer. Splitting this patch
    from the next is intended make distinct which code is changed only due
    to moving the files, versus which are substantial code changes in adding
    the NTB Abstraction layer.

    Signed-off-by: Allen Hubbe
    Signed-off-by: Jon Mason

    Allen Hubbe
     
  • Pull devicetree updates from Grant Likely:
    "A whole lot of bug fixes.

    Nothing stands out here except the ability to enable CONFIG_OF on
    every architecture, and an import of a newer version of dtc"

    * tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux: (22 commits)
    of/irq: Rename "intc_desc" to "of_intc_desc" to fix OF on sh
    of/irq: Fix pSeries boot failure
    Documentation: DT: Fix a typo in the filename "lantiq,-pinumx.txt"
    of: define of_find_node_by_phandle for !CONFIG_OF
    of/address: use atomic allocation in pci_register_io_range()
    of: Add vendor prefix for Zodiac Inflight Innovations
    dt/fdt: add empty versions of early_init_dt_*_memory_arch
    of: clean-up unnecessary libfdt include paths
    of: make unittest select OF_EARLY_FLATTREE instead of depend on it
    of: make CONFIG_OF user selectable
    MIPS: prepare for user enabling of CONFIG_OF
    of/fdt: fix argument name and add comments of unflatten_dt_node()
    of: return NUMA_NO_NODE from fallback of_node_to_nid()
    tps6507x.txt: Remove executable permission
    of/overlay: Grammar s/an negative/a negative/
    of/fdt: Make fdt blob input parameters of unflatten functions const
    of: add helper function to retrive match data
    of: Grammar s/property exist/property exists/
    of: Move OF flags to be visible even when !CONFIG_OF
    scripts/dtc: Update to upstream version 9d3649bd3be245c9
    ...

    Linus Torvalds
     
  • Pull watchdog updates from Wim Van Sebroeck:
    "This contains:

    - new driver for ST's LPC Watchdog
    - new driver for Conexant Digicolor CX92755 SoC
    - new driver for DA9062 watchdog
    - Addition of the watchdog registration deferral mechanism
    - several improvements on omap_wdt
    - several improvements and reboot-support for imgpdc_wdt
    - max63xx_wdt improvements
    - imx2_wdt improvements
    - dw_wdt improvements
    - and other small improvements and fixes"

    * git://www.linux-watchdog.org/linux-watchdog: (37 commits)
    watchdog: omap_wdt: early_enable module parameter
    watchdog: gpio_wdt: Add option for early registration
    watchdog: watchdog_core: Add watchdog registration deferral mechanism
    watchdog: max63xx: dynamically allocate device
    watchdog: imx2_wdt: Disable previously acquired clock on error path
    watchdog: imx2_wdt: Check for clk_prepare_enable() error
    watchdog: hpwdt: Add support for WDIOC_SETOPTIONS
    watchdog: docs: omap_wdt also understands nowayout
    watchdog: omap_wdt: implement get_timeleft
    watchdog: da9062: DA9062 watchdog driver
    watchdog: imx2_wdt: set watchdog parent device
    watchdog: mena21_wdt: Fix possible NULL pointer dereference
    watchdog: dw_wdt: keepalive the watchdog at write time
    watchdog: dw_wdt: No need for a spinlock
    watchdog: imx2_wdt: also set wdog->timeout to new_timeout
    watchdog: Allow compile test of GPIO consumers if !GPIOLIB
    watchdog: cadence: Add dependency on HAS_IOMEM
    watchdog: max63xx_wdt: Constify platform_device_id
    watchdog: MAX63XX_WATCHDOG does not depend on ARM
    watchdog: imgpdc: Add some documentation about the timeout
    ...

    Linus Torvalds
     
  • Pull clock framework updates from Michael Turquette:
    "The changes to the common clock framework for 4.2 are dominated by new
    drivers and updates to existing ones, as usual.

    There are some fixes to the framework itself and several cleanups for
    sparse warnings, etc"

    * tag 'clk-for-linus-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (135 commits)
    clk: stm32: Add clock driver for STM32F4[23]xxx devices
    dt-bindings: Document the STM32F4 clock bindings
    cpufreq: exynos: remove Exynos4210 specific cpufreq driver support
    ARM: Exynos: switch to using generic cpufreq driver for Exynos4210
    clk: samsung: exynos4: add cpu clock configuration data and instantiate cpu clock
    clk: samsung: add infrastructure to register cpu clocks
    clk: add CLK_RECALC_NEW_RATES clock flag for Exynos cpu clock support
    doc: dt: add documentation for lpc1850-ccu clk driver
    clk: add lpc18xx ccu clk driver
    doc: dt: add documentation for lpc1850-cgu clk driver
    clk: add lpc18xx cgu clk driver
    clk: keystone: add support for post divider register for main pll
    clk: mvebu: flag the crypto clk as CLK_IGNORE_UNUSED
    clk: cygnus: remove Cygnus dummy clock binding
    clk: cygnus: add clock support for Broadcom Cygnus
    clk: Change bcm clocks build dependency
    clk: iproc: add initial common clock support
    clk: iproc: define Broadcom iProc clock binding
    MAINTAINERS: update email for Michael Turquette
    clk: meson: add some error handling in meson_clk_register_cpu()
    ...

    Linus Torvalds
     
  • Pull LED subsystem updates from Bryan Wu:
    "In this cycle, we finished to merge patches for LED Flash class
    driver.

    Other than that we have some bug fixes and new drivers for LED
    controllers"

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds: (33 commits)
    leds:lp55xx: fix firmware loading error
    leds: fix max77693-led build errors
    leds: fix aat1290 build errors
    leds: aat1290: pass flags parameter to devm_gpiod_get
    leds: ktd2692: pass flags parameter to devm_gpiod_get
    drivers/leds: don't use module_init in non-modular leds-cobalt-raq.c
    leds: aat1290: add support for V4L2 Flash sub-device
    DT: aat1290: Document handling external strobe sources
    leds: max77693: add support for V4L2 Flash sub-device
    media: Add registration helpers for V4L2 flash sub-devices
    v4l: async: Add a pointer to of_node to struct v4l2_subdev, match it
    Documentation: leds: Add description of v4l2-flash sub-device
    leds: add BCM6358 LED driver
    leds: add DT binding for BCM6358 LED controller
    leds: fix brightness changing when software blinking is active
    Documentation: leds-lp5523: describe master fader attributes
    leds: lp5523: add master_fader support
    leds: leds-gpio: Allow compile test if !GPIOLIB
    leds: leds-gpio: Add missing #include
    gpiolib: Add missing dummies for the unified device properties interface
    ...

    Linus Torvalds
     
  • Merge third patchbomb from Andrew Morton:

    - the rest of MM

    - scripts/gdb updates

    - ipc/ updates

    - lib/ updates

    - MAINTAINERS updates

    - various other misc things

    * emailed patches from Andrew Morton : (67 commits)
    genalloc: rename of_get_named_gen_pool() to of_gen_pool_get()
    genalloc: rename dev_get_gen_pool() to gen_pool_get()
    x86: opt into HAVE_COPY_THREAD_TLS, for both 32-bit and 64-bit
    MAINTAINERS: add zpool
    MAINTAINERS: BCACHE: Kent Overstreet has changed email address
    MAINTAINERS: move Jens Osterkamp to CREDITS
    MAINTAINERS: remove unused nbd.h pattern
    MAINTAINERS: update brcm gpio filename pattern
    MAINTAINERS: update brcm dts pattern
    MAINTAINERS: update sound soc intel patterns
    MAINTAINERS: remove website for paride
    MAINTAINERS: update Emulex ocrdma email addresses
    bcache: use kvfree() in various places
    libcxgbi: use kvfree() in cxgbi_free_big_mem()
    target: use kvfree() in session alloc and free
    IB/ehca: use kvfree() in ipz_queue_{cd}tor()
    drm/nouveau/gem: use kvfree() in u_free()
    drm: use kvfree() in drm_free_large()
    cxgb4: use kvfree() in t4_free_mem()
    cxgb3: use kvfree() in cxgb_free_mem()
    ...

    Linus Torvalds
     
  • Pull irq fixes from Thomas Gleixner:
    "This contains:

    - a series of fixes for interrupt drivers to prevent a potential race
    when installing a chained interrupt handler

    - a fix for cpumask pointer misuse

    - a fix for using the wrong interrupt number from struct irq_data

    - removal of unused code and outdated comments

    - a few new helper functions which allow us to cleanup the interrupt
    handling code further in 4.3

    I decided against doing the cleanup at the end of this merge window
    and rather do the preparatory steps for 4.3, so we can run the final
    ABI change at the end of the 4.3 merge window with less risk"

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (26 commits)
    ARM/LPC32xx: Use irq not hwirq for __irq_set_handler_locked()
    genirq: Implement irq_set_handler_locked()/irq_set_chip_handler_name_locked()
    genirq: Introduce helper irq_desc_get_irq()
    genirq: Remove irq_node()
    genirq: Clean up outdated comments related to include/linux/irqdesc.h
    mn10300: Fix incorrect use of irq_data->affinity
    MIPS/ralink: Fix race in installing chained IRQ handler
    MIPS/pci: Fix race in installing chained IRQ handler
    MIPS/ath25: Fix race in installing chained IRQ handler
    MIPS/ath25: Fix race in installing chained IRQ handler
    m68k/psc: Fix race in installing chained IRQ handler
    avr32/at32ap: Fix race in installing chained IRQ handler
    sh/intc: Fix race in installing chained IRQ handler
    sh/intc: Fix potential race in installing chained IRQ handler
    pinctrl/sun4i: Fix race in installing chained IRQ handler
    pinctrl/samsung: Fix race in installing chained IRQ handler
    pinctrl/samsung: Fix race in installing chained IRQ handler
    pinctrl/exynos: Fix race in installing chained IRQ handler
    pinctrl/st: Fix race in installing chained IRQ handler
    pinctrl/adi2: Fix race in installing chained IRQ handler
    ...

    Linus Torvalds
     
  • Pull networking fixes from David Miller:

    1) mlx4 driver bug fixes (TX queue wakeups, csum complete indications)
    from Ido Shamay, Eran Ben Elisha, and Or Gerlitz.

    2) Missing unlock in error path of PTP support in renesas driver, from
    Dan Carpenter.

    3) Add Vitesse 8641 phy IDs to vitesse PHY driver, from Shaohui Xie.

    4) Bnx2x driver bug fixes (linearization of encap packets, scratchpad
    parity error notifications, flow-control and speed settings) from
    Yuval Mintz, Manish Chopra, Shahed Shaikh, and Ariel Elior.

    5) ipv6 extension header parsing in the igb chip has a HW errata,
    disable it. Frm Todd Fujinaka.

    6) Fix PCI link state locking issue in e1000e driver, from Yanir
    Lubetkin.

    7) Cure panics during MTU change in i40e, from Mitch Williams.

    8) Don't leak promisc refs in DSA slave driver, from Gilad Ben-Yossef.

    9) Add missing HAS_DMA dep to VIA Rhine driver, from Geery
    Uytterhoeven.

    10) Make sure DMA map/unmap calls are symmetric in bnx2x driver, from
    Michal Schmidt.

    11) Workaround for MDIO access problems in bcm7xxx devices, from FLorian
    Fainelli.

    12) Fix races in SCTP protocol between OTTB responses and route
    removals, from Alexander Sverdlin.

    13) Fix jumbo frame checksum issue with some mvneta devices, from Simon
    Guinot.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (58 commits)
    sock_diag: don't broadcast kernel sockets
    net: mvneta: disable IP checksum with jumbo frames for Armada 370
    ARM: mvebu: update Ethernet compatible string for Armada XP
    net: mvneta: introduce compatible string "marvell, armada-xp-neta"
    api: fix compatibility of linux/in.h with netinet/in.h
    net: icplus: fix typo in constant name
    sis900: Trivial: Fix typos in enums
    stmmac: Trivial: fix typo in constant name
    sctp: Fix race between OOTB responce and route removal
    net-Liquidio: Delete unnecessary checks before the function call "vfree"
    vmxnet3: Bump up driver version number
    amd-xgbe: Add the __GFP_NOWARN flag to Rx buffer allocation
    net: phy: mdio-bcm-unimac: workaround initial read failures for integrated PHYs
    net: bcmgenet: workaround initial read failures for integrated PHYs
    net: phy: bcm7xxx: workaround MDIO management controller initial read
    bnx2x: fix DMA API usage
    net: via: VIA_RHINE and VIA_VELOCITY should depend on HAS_DMA
    net/phy: tune get_phy_c45_ids to support more c45 phy
    bnx2x: fix lockdep splat
    net: fec: don't access RACC register when not available
    ...

    Linus Torvalds
     
  • ACPICA commit 2fcf4f4c95e6a4875f39a929f8f92ef50cc53bb5
    ACPICA commit d7a940bb308d001b5d2b196174fee36c7daa61d6

    Version 20150619.

    Link: https://github.com/acpica/acpica/commit/2fcf4f4c
    Link: https://github.com/acpica/acpica/commit/d7a940bb
    Signed-off-by: Bob Moore
    Signed-off-by: Lv Zheng
    Signed-off-by: Rafael J. Wysocki

    Bob Moore
     
  • ACPICA commit 254bf77e7ca01cb27e026fa5737f7df8dae03f2c

    - Add constans for the start_method.
    - Remove the control structure, not part of ACPI, not defined in the current
    TCG spec.

    Link: https://github.com/acpica/acpica/commit/254bf77e
    Reported-by: Jarkko Sakkinen
    Signed-off-by: Bob Moore
    Signed-off-by: Lv Zheng
    Signed-off-by: Rafael J. Wysocki

    Bob Moore
     
  • ACPICA commit 33140b4498666337dd33a00cf3c4797a53981a7b

    Changes for a new version of the 3rd party spec for these tables,
    the "TCG ACPI Specification", December 14, 2014. Also, moved the
    definition of TPM2 to actbl2.h, next to TCPA, since both should
    be together.

    Update the table compiler/disassembler code for the tables.
    However, the "Server" TCPA table is not supported at this time.

    Link: https://github.com/acpica/acpica/commit/33140b44
    Reported-by: Jarkko Sakkinen
    Signed-off-by: Bob Moore
    Signed-off-by: Lv Zheng
    Signed-off-by: Rafael J. Wysocki

    Bob Moore
     
  • ACPICA commit 3b1026e0bdd3c32eb6d5d313f3ba0b1fee7597b4
    ACPICA commit 00f0dc83f5cfca53b27a3213ae0d7719b88c2d6b
    ACPICA commit 47d22a738d0e19fd241ffe4e3e9d4e198e4afc69

    Across all of ACPICA. Replace C library macros such as ACPI_STRLEN with the
    standard names such as strlen. The original purpose for these macros is
    long since obsolete.
    Also cast various invocations as necessary. Bob Moore, Jung-uk Kim, Lv Zheng.

    Link: https://github.com/acpica/acpica/commit/3b1026e0
    Link: https://github.com/acpica/acpica/commit/00f0dc83
    Link: https://github.com/acpica/acpica/commit/47d22a73
    Signed-off-by: Bob Moore
    Signed-off-by: Jung-uk Kim
    Signed-off-by: Lv Zheng
    Signed-off-by: Rafael J. Wysocki

    Bob Moore
     
  • ACPICA commit c0ce529e1fbb8ec47d2522a3aa10f3ab77e16e41

    There is no reference counting implemented for struct acpi_namespace_node, so it
    is currently not removable during runtime.
    This patch changes the namespace override code to keep the old
    struct acpi_namespace_node undeleted so that the override mechanism can happen
    during runtime. Bob Moore.

    Link: https://github.com/acpica/acpica/commit/c0ce529e
    Signed-off-by: Lv Zheng
    Signed-off-by: Bob Moore
    Signed-off-by: Rafael J. Wysocki

    Bob Moore
     
  • ACPICA commit 27415c82fcecf467446f66d1007a0691cc5f3709

    This patch adds OSDT (Override System Definition Table) support.
    When OSDT is loaded, conflict namespace objects will be overridden
    by the AML interpreter. Bob Moore, Lv Zheng.

    Link: https://github.com/acpica/acpica/commit/27415c82
    Signed-off-by: Lv Zheng
    Signed-off-by: Bob Moore
    Signed-off-by: Rafael J. Wysocki

    Bob Moore