24 Aug, 2016

1 commit


08 Aug, 2016

3 commits

  • Pull more block fixes from Jens Axboe:
    "As mentioned in the pull the other day, a few more fixes for this
    round, all related to the bio op changes in this series.

    Two fixes, and then a cleanup, renaming bio->bi_rw to bio->bi_opf. I
    wanted to do that change right after or right before -rc1, so that
    risk of conflict was reduced. I just rebased the series on top of
    current master, and no new ->bi_rw usage has snuck in"

    * 'for-linus' of git://git.kernel.dk/linux-block:
    block: rename bio bi_rw to bi_opf
    target: iblock_execute_sync_cache() should use bio_set_op_attrs()
    mm: make __swap_writepage() use bio_set_op_attrs()
    block/mm: make bdev_ops->rw_page() take a bool for read/write

    Linus Torvalds
     
  • Pull drm zpos property support from Dave Airlie:
    "This tree was waiting on some media stuff I hadn't had time to get a
    stable branchpoint off, so I just waited until it was all in your tree
    first.

    It's been around a bit on the list and shouldn't affect anything
    outside adding the generic API and moving some ARM drivers to using
    it"

    * tag 'drm-for-v4.8-zpos' of git://people.freedesktop.org/~airlied/linux:
    drm: rcar: use generic code for managing zpos plane property
    drm/exynos: use generic code for managing zpos plane property
    drm: sti: use generic zpos for plane
    drm: add generic zpos property

    Linus Torvalds
     
  • Since commit 63a4cc24867d, bio->bi_rw contains flags in the lower
    portion and the op code in the higher portions. This means that
    old code that relies on manually setting bi_rw is most likely
    going to be broken. Instead of letting that brokeness linger,
    rename the member, to force old and out-of-tree code to break
    at compile time instead of at runtime.

    No intended functional changes in this commit.

    Signed-off-by: Jens Axboe

    Jens Axboe
     

07 Aug, 2016

3 commits

  • Pull documentation fixes from Jonathan Corbet:
    "Three fixes for the docs build, including removing an annoying warning
    on 'make help' if sphinx isn't present"

    * tag 'doc-4.8-fixes' of git://git.lwn.net/linux:
    DocBook: use DOCBOOKS="" to ignore DocBooks instead of IGNORE_DOCBOOKS=1
    Documenation: update cgroup's document path
    Documentation/sphinx: do not warn about missing tools in 'make help'

    Linus Torvalds
     
  • Pull binfmt_misc update from James Bottomley:
    "This update is to allow architecture emulation containers to function
    such that the emulation binary can be housed outside the container
    itself. The container and fs parts both have acks from relevant
    experts.

    To use the new feature you have to add an F option to your binfmt_misc
    configuration"

    From the docs:
    "The usual behaviour of binfmt_misc is to spawn the binary lazily when
    the misc format file is invoked. However, this doesn't work very well
    in the face of mount namespaces and changeroots, so the F mode opens
    the binary as soon as the emulation is installed and uses the opened
    image to spawn the emulator, meaning it is always available once
    installed, regardless of how the environment changes"

    * tag 'binfmt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/binfmt_misc:
    binfmt_misc: add F option description to documentation
    binfmt_misc: add persistent opened binary handler for containers
    fs: add filp_clone_open API

    Linus Torvalds
     
  • Pull more vfs updates from Al Viro:
    "Assorted cleanups and fixes.

    In the "trivial API change" department - ->d_compare() losing 'parent'
    argument"

    * 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    cachefiles: Fix race between inactivating and culling a cache object
    9p: use clone_fid()
    9p: fix braino introduced in "9p: new helper - v9fs_parent_fid()"
    vfs: make dentry_needs_remove_privs() internal
    vfs: remove file_needs_remove_privs()
    vfs: fix deadlock in file_remove_privs() on overlayfs
    get rid of 'parent' argument of ->d_compare()
    cifs, msdos, vfat, hfs+: don't bother with parent in ->d_compare()
    affs ->d_compare(): don't bother with ->d_inode
    fold _d_rehash() and __d_rehash() together
    fold dentry_rcuwalk_invalidate() into its only remaining caller

    Linus Torvalds
     

06 Aug, 2016

5 commits

  • Pull more KVM updates from Paolo Bonzini:
    - ARM bugfix and MSI injection support
    - x86 nested virt tweak and OOPS fix
    - Simplify pvclock code (vdso bits acked by Andy Lutomirski).

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
    nvmx: mark ept single context invalidation as supported
    nvmx: remove comment about missing nested vpid support
    KVM: lapic: fix access preemption timer stuff even if kernel_irqchip=off
    KVM: documentation: fix KVM_CAP_X2APIC_API information
    x86: vdso: use __pvclock_read_cycles
    pvclock: introduce seqcount-like API
    arm64: KVM: Set cpsr before spsr on fault injection
    KVM: arm: vgic-irqfd: Workaround changing kvm_set_routing_entry prototype
    KVM: arm/arm64: Enable MSI routing
    KVM: arm/arm64: Enable irqchip routing
    KVM: Move kvm_setup_default/empty_irq_routing declaration in arch specific header
    KVM: irqchip: Convey devid to kvm_set_msi
    KVM: Add devid in kvm_kernel_irq_routing_entry
    KVM: api: Pass the devid in the msi routing entry

    Linus Torvalds
     
  • …erry.reding/linux-pwm

    Pull pwm updates from Thierry Reding:
    "This set of changes improve some aspects of the atomic API as well as
    make use of this new API in the regulator framework to allow properly
    dealing with critical regulators controlled by a PWM.

    Aside from that there's a bunch of updates and cleanups for existing
    drivers, as well as the addition of new drivers for the Broadcom
    iProc, STMPE and ChromeOS EC controllers"

    * tag 'pwm/for-4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm: (44 commits)
    regulator: pwm: Document pwm-dutycycle-unit and pwm-dutycycle-range
    regulator: pwm: Support extra continuous mode cases
    pwm: Add ChromeOS EC PWM driver
    dt-bindings: pwm: Add binding for ChromeOS EC PWM
    mfd: cros_ec: Add EC_PWM function definitions
    mfd: cros_ec: Add cros_ec_cmd_xfer_status() helper
    pwm: atmel: Use of_device_get_match_data()
    pwm: atmel: Fix checkpatch warnings
    pwm: atmel: Fix disabling of PWM channels
    dt-bindings: pwm: Add R-Car H3 device tree bindings
    pwm: rcar: Use ARCH_RENESAS
    pwm: tegra: Add support for Tegra186
    dt-bindings: pwm: tegra: Add compatible string for Tegra186
    pwm: tegra: Avoid overflow when calculating duty cycle
    pwm: tegra: Allow 100 % duty cycle
    pwm: tegra: Add support for reset control
    pwm: tegra: Rename mmio_base to regs
    pwm: tegra: Remove useless padding
    pwm: tegra: Drop NUM_PWM macro
    pwm: lpc32xx: Set PWM_PIN_LEVEL bit to default value
    ...

    Linus Torvalds
     
  • Pull pstore fixes from Kees Cook:
    "Fixes for pstore ramoops driver to catch bad kfree() and to use better
    DT bindings"

    * tag 'pstore-v4.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
    ramoops: use persistent_ram_free() instead of kfree() for freeing prz
    ramoops: use DT reserved-memory bindings

    Linus Torvalds
     
  • Pull more input updates from Dmitry Torokhov:
    "Two new drivers for touchscreen controllers:

    - Silead touchscreen controllers
    - SiS 9200 family touchscreen controllers

    and a few driver fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: silead - remove some dead code
    Input: sis-i2c - select CONFIG_CRC_ITU_T
    Input: add driver for SiS 9200 family I2C touchscreen controllers
    Input: ili210x - fix permissions on "calibrate" attribute
    Input: elan_i2c - properly wake up touchpad on ASUS laptops
    Input: add driver for Silead touchscreens
    Input: elantech - fix debug dump of the current packet
    Input: rotary_encoder - support binary encoding of states
    Input: xpad - power off wireless 360 controllers on suspend
    Input: i8042 - break load dependency between atkbd/psmouse and i8042
    Input: synaptics-rmi4 - do not check for NULL when calling of_node_put()
    Input: cros_ec_keyb - cleanup use of dev

    Linus Torvalds
     
  • Instead of a ramoops-specific node, use a child node of /reserved-memory.
    This requires that of_platform_device_create() be explicitly called
    for the node, though, since "/reserved-memory" does not have its own
    "compatible" property.

    Suggested-by: Rob Herring
    Signed-off-by: Kees Cook
    Acked-by: Rob Herring

    Kees Cook
     

05 Aug, 2016

2 commits

  • Pull nfsd updates from Bruce Fields:
    "Highlights:

    - Trond made a change to the server's tcp logic that allows a fast
    client to better take advantage of high bandwidth networks, but may
    increase the risk that a single client could starve other clients;
    a new sunrpc.svc_rpc_per_connection_limit parameter should help
    mitigate this in the (hopefully unlikely) event this becomes a
    problem in practice.

    - Tom Haynes added a minimal flex-layout pnfs server, which is of no
    use in production for now--don't build it unless you're doing
    client testing or further server development"

    * tag 'nfsd-4.8' of git://linux-nfs.org/~bfields/linux: (32 commits)
    nfsd: remove some dead code in nfsd_create_locked()
    nfsd: drop unnecessary MAY_EXEC check from create
    nfsd: clean up bad-type check in nfsd_create_locked
    nfsd: remove unnecessary positive-dentry check
    nfsd: reorganize nfsd_create
    nfsd: check d_can_lookup in fh_verify of directories
    nfsd: remove redundant zero-length check from create
    nfsd: Make creates return EEXIST instead of EACCES
    SUNRPC: Detect immediate closure of accepted sockets
    SUNRPC: accept() may return sockets that are still in SYN_RECV
    nfsd: allow nfsd to advertise multiple layout types
    nfsd: Close race between nfsd4_release_lockowner and nfsd4_lock
    nfsd/blocklayout: Make sure calculate signature/designator length aligned
    xfs: abstract block export operations from nfsd layouts
    SUNRPC: Remove unused callback xpo_adjust_wspace()
    SUNRPC: Change TCP socket space reservation
    SUNRPC: Add a server side per-connection limit
    SUNRPC: Micro optimisation for svc_data_ready
    SUNRPC: Call the default socket callbacks instead of open coding
    SUNRPC: lock the socket while detaching it
    ...

    Linus Torvalds
     
  • Instead of a separate ignore flag, use the obvious DOCBOOKS="" to ignore
    all DocBook files. This is also in line with the Sphinx build being
    ignored if a non-empty DOCBOOKS make variable is specified on the make
    command line.

    This replaces the IGNORE_DOCBOOKS introduced in

    commit 547218864afb2745d9d137f005f3380ef96b26ab
    Author: Mauro Carvalho Chehab
    Date: Sat Jul 9 13:12:45 2016 -0300

    doc-rst: add an option to ignore DocBooks when generating docs

    and aligns with

    commit 6387872c86ea6698ed8faa3ccad1d1bd60f762f7
    Author: Jani Nikula
    Date: Fri Jul 1 15:24:44 2016 +0300

    Documentation/sphinx: skip build if user requested specific DOCBOOKS

    Cc: Daniel Vetter
    Signed-off-by: Jani Nikula
    Tested-by: Mauro Carvalho Chehab
    Signed-off-by: Jonathan Corbet

    Jani Nikula
     

04 Aug, 2016

8 commits

  • Pull media DocBook removal and some fixups from Mauro Carvalho Chehab:

    - removal of the media DocBook (since it's all in Sphinx now)

    - videobuf2: Fix an allocation regression

    - a few fixes related to the CEC drivers

    * tag 'media/v4.8-5' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
    [media] cec: fix off-by-one memset
    [media] staging: add MEDIA_SUPPORT dependency
    [media] vivid: don't handle CEC_MSG_SET_STREAM_PATH
    [media] media: adv7180: Fix broken interrupt register access
    [media] vb2: Fix allocation size of dma_parms
    [media] vim2m: copy the other colorspace-related fields as well
    [media] adv7511: fix VIC autodetect
    doc-rst: Remove the media docbook

    Linus Torvalds
     
  • Pull module updates from Rusty Russell:
    "The only interesting thing here is Jessica's patch to add
    ro_after_init support to modules. The rest are all trivia"

    * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
    extable.h: add stddef.h so "NULL" definition is not implicit
    modules: add ro_after_init support
    jump_label: disable preemption around __module_text_address().
    exceptions: fork exception table content from module.h into extable.h
    modules: Add kernel parameter to blacklist modules
    module: Do a WARN_ON_ONCE() for assert module mutex not held
    Documentation/module-signing.txt: Note need for version info if reusing a key
    module: Invalidate signatures on force-loaded modules
    module: Issue warnings when tainting kernel
    module: fix redundant test.
    module: fix noreturn attribute for __module_put_and_exit()

    Linus Torvalds
     
  • The dma-mapping core and the implementations do not change the DMA
    attributes passed by pointer. Thus the pointer can point to const data.
    However the attributes do not have to be a bitfield. Instead unsigned
    long will do fine:

    1. This is just simpler. Both in terms of reading the code and setting
    attributes. Instead of initializing local attributes on the stack
    and passing pointer to it to dma_set_attr(), just set the bits.

    2. It brings safeness and checking for const correctness because the
    attributes are passed by value.

    Semantic patches for this change (at least most of them):

    virtual patch
    virtual context

    @r@
    identifier f, attrs;

    @@
    f(...,
    - struct dma_attrs *attrs
    + unsigned long attrs
    , ...)
    {
    ...
    }

    @@
    identifier r.f;
    @@
    f(...,
    - NULL
    + 0
    )

    and

    // Options: --all-includes
    virtual patch
    virtual context

    @r@
    identifier f, attrs;
    type t;

    @@
    t f(..., struct dma_attrs *attrs);

    @@
    identifier r.f;
    @@
    f(...,
    - NULL
    + 0
    )

    Link: http://lkml.kernel.org/r/1468399300-5399-2-git-send-email-k.kozlowski@samsung.com
    Signed-off-by: Krzysztof Kozlowski
    Acked-by: Vineet Gupta
    Acked-by: Robin Murphy
    Acked-by: Hans-Christian Noren Egtvedt
    Acked-by: Mark Salter [c6x]
    Acked-by: Jesper Nilsson [cris]
    Acked-by: Daniel Vetter [drm]
    Reviewed-by: Bart Van Assche
    Acked-by: Joerg Roedel [iommu]
    Acked-by: Fabien Dessenne [bdisp]
    Reviewed-by: Marek Szyprowski [vb2-core]
    Acked-by: David Vrabel [xen]
    Acked-by: Konrad Rzeszutek Wilk [xen swiotlb]
    Acked-by: Joerg Roedel [iommu]
    Acked-by: Richard Kuo [hexagon]
    Acked-by: Geert Uytterhoeven [m68k]
    Acked-by: Gerald Schaefer [s390]
    Acked-by: Bjorn Andersson
    Acked-by: Hans-Christian Noren Egtvedt [avr32]
    Acked-by: Vineet Gupta [arc]
    Acked-by: Robin Murphy [arm64 and dma-iommu]
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Kozlowski
     
  • The KVM_X2APIC_API_USE_32BIT_IDS feature applies to both
    KVM_SET_GSI_ROUTING and KVM_SIGNAL_MSI, but was not mentioned in the
    documentation for the latter ioctl.

    Signed-off-by: Paolo Bonzini

    Paolo Bonzini
     
  • …it/kvmarm/kvmarm into HEAD

    KVM/ARM Changes for v4.8 - Take 2

    Includes GSI routing support to go along with the new VGIC and a small fix that
    has been cooking in -next for a while.

    Paolo Bonzini
     
  • Blacklisting a module in linux has long been a problem. The current
    procedure is to use rd.blacklist=module_name, however, that doesn't
    cover the case after the initramfs and before a boot prompt (where one
    is supposed to use /etc/modprobe.d/blacklist.conf to blacklist
    runtime loading). Using rd.shell to get an early prompt is hit-or-miss,
    and doesn't cover all situations AFAICT.

    This patch adds this functionality of permanently blacklisting a module
    by its name via the kernel parameter module_blacklist=module_name.

    [v2]: Rusty, use core_param() instead of __setup() which simplifies
    things.

    [v3]: Rusty, undo wreckage from strsep()

    [v4]: Rusty, simpler version of blacklisted()

    Signed-off-by: Prarit Bhargava
    Cc: Jonathan Corbet
    Cc: Rusty Russell
    Cc: linux-doc@vger.kernel.org
    Signed-off-by: Rusty Russell

    Prarit Bhargava
     
  • cgroup's document path is changed to "cgroup-v1". update it.

    Signed-off-by: seokhoon.yoon
    Signed-off-by: Jonathan Corbet

    seokhoon.yoon
     
  • Simply move the dochelp rule outside of the HAVE_SPHINX check,
    overriding the .DEFAULT rule for HAVE_SPHINX=0.

    Cc: Jonathan Corbet
    Cc: Christian Kujau
    Signed-off-by: Jani Nikula
    Signed-off-by: Jonathan Corbet

    Jani Nikula
     

03 Aug, 2016

18 commits

  • This is a driver for SiS 9200 family touchscreen controllers using I2C bus.

    Signed-off-by: Mika Penttilä
    Acked-by: Tammy Tseng
    Acked-by: Yuger Yu
    Signed-off-by: Dmitry Torokhov

    Mika Penttilä
     
  • This driver adds support for Silead touchscreens. It has been tested
    with GSL1680 and GSL3680 touch panels.

    It supports ACPI and device tree enumeration. Screen resolution,
    the maximum number of fingers supported and firmware name are
    configurable.

    Signed-off-by: Robert Dolca
    Signed-off-by: Daniel Jansen
    Signed-off-by: Hans de Goede
    Signed-off-by: Dmitry Torokhov

    Robert Dolca
     
  • Merge yet more updates from Andrew Morton:

    - the rest of ocfs2

    - various hotfixes, mainly MM

    - quite a bit of misc stuff - drivers, fork, exec, signals, etc.

    - printk updates

    - firmware

    - checkpatch

    - nilfs2

    - more kexec stuff than usual

    - rapidio updates

    - w1 things

    * emailed patches from Andrew Morton : (111 commits)
    ipc: delete "nr_ipc_ns"
    kcov: allow more fine-grained coverage instrumentation
    init/Kconfig: add clarification for out-of-tree modules
    config: add android config fragments
    init/Kconfig: ban CONFIG_LOCALVERSION_AUTO with allmodconfig
    relay: add global mode support for buffer-only channels
    init: allow blacklisting of module_init functions
    w1:omap_hdq: fix regression
    w1: add helper macro module_w1_family
    w1: remove need for ida and use PLATFORM_DEVID_AUTO
    rapidio/switches: add driver for IDT gen3 switches
    powerpc/fsl_rio: apply changes for RIO spec rev 3
    rapidio: modify for rev.3 specification changes
    rapidio: change inbound window size type to u64
    rapidio/idt_gen2: fix locking warning
    rapidio: fix error handling in mbox request/release functions
    rapidio/tsi721_dma: advance queue processing from transfer submit call
    rapidio/tsi721: add messaging mbox selector parameter
    rapidio/tsi721: add PCIe MRRS override parameter
    rapidio/tsi721_dma: add channel mask and queue size parameters
    ...

    Linus Torvalds
     
  • Pull orangefs update from Martin Brandenburg:
    "Kernel side caching and executable bugfix

    This allows OrangeFS to utilize the dcache and adds an in kernel
    attribute cache. We previously used the user side client for this
    purpose.

    We see a modest performance increase on small file operations. For
    example, without the cache, compiling coreutils takes about 17
    minutes. With the patch and a 50 millisecond timeout for
    dcache_timeout_msecs and getattr_timeout_msecs (the default),
    compiling coreutils takes about 6 minutes 20 seconds. On the same
    hardware, compiling coreutils on an xfs filesystem takes 90 seconds.
    We see similar improvements with mdtest and a test involving writing,
    reading, and deleting a large number of small files.

    Interested parties can review more data at the following URL.

    https://docs.google.com/spreadsheets/d/1v4aUeppKexIbRMz_Yn9k4eaM3uy2KCaPoe_93YKWOtA/pubhtml

    The eventual goal of this is to allow getdents to turn into a
    readdirplus to the OrangeFS server. The cache will be filled then,
    which should provide a performance benefit to the common case of
    readdir followed by getattr on each entry (i.e. ls -l).

    This also fixes a bug. When orangefs_inode_permission was added, it
    did not collect i_size from the OrangeFS server, since this presses an
    unnecessary load on the OrangeFS server. However, it left a case
    where i_size is never initialized. Then running an executable could
    fail.

    With this patch, size is always collected to be inserted into the
    cache. Thus the bug disappears. If this patch is not accepted during
    this merge window, we will send a one-line band-aid for this bug
    instead"

    * tag 'for-linus-v4.8' of git://github.com/martinbrandenburg/linux:
    Orangefs: update orangefs.txt
    orangefs: Account for jiffies wraparound.
    orangefs: Change default dcache and getattr timeout to 50 msec.
    orangefs: Allow dcache and getattr cache time to be configured.
    orangefs: Cache getattr results.
    orangefs: Use d_time to avoid excessive lookups

    Linus Torvalds
     
  • Add module parameter to allow load time configuration of available
    RapidIO messaging mailboxes (MBOX1 - MBOX4).

    Having a messaging MBOX selector mask allows to define which MBOXes are
    controlled by the mport device driver and reserve some of them for
    direct use by other drivers.

    Link: http://lkml.kernel.org/r/1469125134-16523-7-git-send-email-alexandre.bounine@idt.com
    Signed-off-by: Alexandre Bounine
    Tested-by: Barry Wood
    Cc: Matt Porter
    Cc: Andre van Herk
    Cc: Barry Wood
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexandre Bounine
     
  • Add PCIe Maximum Read Request Size (MRRS) adjustment parameter to allow
    users to override configuration register value set during PCIe bus
    initialization.

    Performance of Tsi721 device as PCIe bus master can be improved if MRRS
    is set to its maximum value (4096 bytes). Some platforms have
    limitations for supported MRRS and therefore the default value should be
    preserved, unless it is known that given platform supports full set of
    MRRS values defined by PCI Express specification.

    Link: http://lkml.kernel.org/r/1469125134-16523-6-git-send-email-alexandre.bounine@idt.com
    Signed-off-by: Alexandre Bounine
    Cc: Matt Porter
    Cc: Andre van Herk
    Cc: Barry Wood
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexandre Bounine
     
  • Add module parameters to allow load time configuration of DMA channels.

    Depending on application, performance of DMA data transfers can benefit
    from adjusted sizes of buffer descriptor ring and/or transaction
    requests queue.

    Having HW DMA channel selector mask allows to define which channels
    (from seven available) are controlled by the mport device driver and
    reserve some of them for direct use by other drivers.

    Link: http://lkml.kernel.org/r/1469125134-16523-5-git-send-email-alexandre.bounine@idt.com
    Signed-off-by: Alexandre Bounine
    Tested-by: Barry Wood
    Cc: Matt Porter
    Cc: Andre van Herk
    Cc: Barry Wood
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexandre Bounine
     
  • Minor edits to correct parameter description.

    This patch is applicable to kernel versions starting from v4.6.

    Link: http://lkml.kernel.org/r/1469125134-16523-3-git-send-email-alexandre.bounine@idt.com
    Signed-off-by: Alexandre Bounine
    Reported-by: Barry Wood
    Cc: Matt Porter
    Cc: Andre van Herk
    Cc: Barry Wood
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexandre Bounine
     
  • Add channelized messaging driver to support native RapidIO messaging
    exchange between multiple senders/recipients on devices that use kernel
    RapidIO subsystem services.

    This device driver is the result of collaboration within the RapidIO.org
    Software Task Group (STG) between Texas Instruments, Prodrive
    Technologies, Nokia Networks, BAE and IDT. Additional input was
    received from other members of RapidIO.org.

    The objective was to create a character mode driver interface which
    exposes messaging capabilities of RapidIO endpoint devices (mports)
    directly to applications, in a manner that allows the numerous and
    varied RapidIO implementations to interoperate.

    This char mode device driver allows user-space applications to setup
    messaging communication channels using single shared RapidIO messaging
    mailbox.

    By default this driver uses RapidIO MBOX_1 (MBOX_0 is reserved for use by
    RIONET Ethernet emulation driver).

    [weiyj.lk@gmail.com: rapidio/rio_cm: fix return value check in riocm_init()]
    Link: http://lkml.kernel.org/r/1469198221-21970-1-git-send-email-alexandre.bounine@idt.com
    Link: http://lkml.kernel.org/r/1468952862-18056-1-git-send-email-alexandre.bounine@idt.com
    Signed-off-by: Alexandre Bounine
    Tested-by: Barry Wood
    Cc: Matt Porter
    Cc: Aurelien Jacquiot
    Cc: Andre van Herk
    Cc: Barry Wood
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexandre Bounine
     
  • The header file "include/linux/nilfs2_fs.h" is composed of parts for
    ioctl and disk format, and both are intended to be shared with user
    space programs.

    This moves them to the uapi directory "include/uapi/linux" splitting the
    file to "nilfs2_api.h" and "nilfs2_ondisk.h". The following minor
    changes are accompanied by this migration:

    - nilfs_direct_node struct in nilfs2/direct.h is converged to
    nilfs2_ondisk.h because it's an on-disk structure.
    - inline functions nilfs_rec_len_from_disk() and
    nilfs_rec_len_to_disk() are moved to nilfs2/dir.c.

    Link: http://lkml.kernel.org/r/1465825507-3407-4-git-send-email-konishi.ryusuke@lab.ntt.co.jp
    Signed-off-by: Ryusuke Konishi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ryusuke Konishi
     
  • Add a "printk.devkmsg" kernel command line parameter which controls how
    userspace writes into /dev/kmsg. It has three options:

    * ratelimit - ratelimit logging from userspace.
    * on - unlimited logging from userspace
    * off - logging from userspace gets ignored

    The default setting is to ratelimit the messages written to it.

    This changes the kernel default setting of "on" to "ratelimit" and we do
    that because we want to keep userspace spamming /dev/kmsg to sane
    levels. This is especially moot when a small kernel log buffer wraps
    around and messages get lost. So the ratelimiting setting should be a
    sane setting where kernel messages should have a bit higher chance of
    survival from all the spamming.

    It additionally does not limit logging to /dev/kmsg while the system is
    booting if we haven't disabled it on the command line.

    Furthermore, we can control the logging from a lower priority sysctl
    interface - kernel.printk_devkmsg.

    That interface will succeed only if printk.devkmsg *hasn't* been
    supplied on the command line. If it has, then printk.devkmsg is a
    one-time setting which remains for the duration of the system lifetime.
    This "locking" of the setting is to prevent userspace from changing the
    logging on us through sysctl(2).

    This patch is based on previous patches from Linus and Steven.

    [bp@suse.de: fixes]
    Link: http://lkml.kernel.org/r/20160719072344.GC25563@nazgul.tnic
    Link: http://lkml.kernel.org/r/20160716061745.15795-3-bp@alien8.de
    Signed-off-by: Borislav Petkov
    Cc: Dave Young
    Cc: Franck Bui
    Cc: Greg Kroah-Hartman
    Cc: Ingo Molnar
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Steven Rostedt
    Cc: Uwe Kleine-König
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Borislav Petkov
     
  • …/kernel into drm-next

    Merge generic ZPOS property support, this was backed up behind some other
    changes I didn't have a stable branch point for. Now they are merged to Linus
    tree this pull is just drm patches.

    * 'generic-zpos-v8' of http://git.linaro.org/people/benjamin.gaignard/kernel:
    drm: rcar: use generic code for managing zpos plane property
    drm/exynos: use generic code for managing zpos plane property
    drm: sti: use generic zpos for plane
    drm: add generic zpos property

    Dave Airlie
     
  • Pull PCI updates from Bjorn Helgaas:
    "Highlights:

    - ARM64 support for ACPI host bridges

    - new drivers for Axis ARTPEC-6 and Marvell Aardvark

    - new pci_alloc_irq_vectors() interface for MSI-X, MSI, legacy INTx

    - pci_resource_to_user() cleanup (more to come)

    Detailed summary:

    Enumeration:
    - Move ecam.h to linux/include/pci-ecam.h (Jayachandran C)
    - Add parent device field to ECAM struct pci_config_window (Jayachandran C)
    - Add generic MCFG table handling (Tomasz Nowicki)
    - Refactor pci_bus_assign_domain_nr() for CONFIG_PCI_DOMAINS_GENERIC (Tomasz Nowicki)
    - Factor DT-specific pci_bus_find_domain_nr() code out (Tomasz Nowicki)

    Resource management:
    - Add devm_request_pci_bus_resources() (Bjorn Helgaas)
    - Unify pci_resource_to_user() declarations (Bjorn Helgaas)
    - Implement pci_resource_to_user() with pcibios_resource_to_bus() (microblaze, powerpc, sparc) (Bjorn Helgaas)
    - Request host bridge window resources (designware, iproc, rcar, xgene, xilinx, xilinx-nwl) (Bjorn Helgaas)
    - Make PCI I/O space optional on ARM32 (Bjorn Helgaas)
    - Ignore write combining when mapping I/O port space (Bjorn Helgaas)
    - Claim bus resources on MIPS PCI_PROBE_ONLY set-ups (Bjorn Helgaas)
    - Remove unicore32 pci=firmware command line parameter handling (Bjorn Helgaas)
    - Support I/O resources when parsing host bridge resources (Jayachandran C)
    - Add helpers to request/release memory and I/O regions (Johannes Thumshirn)
    - Use pci_(request|release)_mem_regions (NVMe, lpfc, GenWQE, ethernet/intel, alx) (Johannes Thumshirn)
    - Extend pci=resource_alignment to specify device/vendor IDs (Koehrer Mathias (ETAS/ESW5))
    - Add generic pci_bus_claim_resources() (Lorenzo Pieralisi)
    - Claim bus resources on ARM32 PCI_PROBE_ONLY set-ups (Lorenzo Pieralisi)
    - Remove ARM32 and ARM64 arch-specific pcibios_enable_device() (Lorenzo Pieralisi)
    - Add pci_unmap_iospace() to unmap I/O resources (Sinan Kaya)
    - Remove powerpc __pci_mmap_set_pgprot() (Yinghai Lu)

    PCI device hotplug:
    - Allow additional bus numbers for hotplug bridges (Keith Busch)
    - Ignore interrupts during D3cold (Lukas Wunner)

    Power management:
    - Enforce type casting for pci_power_t (Andy Shevchenko)
    - Don't clear d3cold_allowed for PCIe ports (Mika Westerberg)
    - Put PCIe ports into D3 during suspend (Mika Westerberg)
    - Power on bridges before scanning new devices (Mika Westerberg)
    - Runtime resume bridge before rescan (Mika Westerberg)
    - Add runtime PM support for PCIe ports (Mika Westerberg)
    - Remove redundant check of pcie_set_clkpm (Shawn Lin)

    Virtualization:
    - Add function 1 DMA alias quirk for Marvell 88SE9182 (Aaron Sierra)
    - Add DMA alias quirk for Adaptec 3805 (Alex Williamson)
    - Mark Atheros AR9485 and QCA9882 to avoid bus reset (Chris Blake)
    - Add ACS quirk for Solarflare SFC9220 (Edward Cree)

    MSI:
    - Fix PCI_MSI dependencies (Arnd Bergmann)
    - Add pci_msix_desc_addr() helper (Christoph Hellwig)
    - Switch msix_program_entries() to use pci_msix_desc_addr() (Christoph Hellwig)
    - Make the "entries" argument to pci_enable_msix() optional (Christoph Hellwig)
    - Provide sensible IRQ vector alloc/free routines (Christoph Hellwig)
    - Spread interrupt vectors in pci_alloc_irq_vectors() (Christoph Hellwig)

    Error Handling:
    - Bind DPC to Root Ports as well as Downstream Ports (Keith Busch)
    - Remove DPC tristate module option (Keith Busch)
    - Convert Downstream Port Containment driver to use devm_* functions (Mika Westerberg)

    Generic host bridge driver:
    - Select IRQ_DOMAIN (Arnd Bergmann)
    - Claim bus resources on PCI_PROBE_ONLY set-ups (Lorenzo Pieralisi)

    ACPI host bridge driver:
    - Add ARM64 acpi_pci_bus_find_domain_nr() (Tomasz Nowicki)
    - Add ARM64 ACPI support for legacy IRQs parsing and consolidation with DT code (Tomasz Nowicki)
    - Implement ARM64 AML accessors for PCI_Config region (Tomasz Nowicki)
    - Support ARM64 ACPI-based PCI host controller (Tomasz Nowicki)

    Altera host bridge driver:
    - Check link status before retrain link (Ley Foon Tan)
    - Poll for link up status after retraining the link (Ley Foon Tan)

    Axis ARTPEC-6 host bridge driver:
    - Add PCI_MSI_IRQ_DOMAIN dependency (Arnd Bergmann)
    - Add DT binding for Axis ARTPEC-6 PCIe controller (Niklas Cassel)
    - Add Axis ARTPEC-6 PCIe controller driver (Niklas Cassel)

    Intel VMD host bridge driver:
    - Use lock save/restore in interrupt enable path (Jon Derrick)
    - Select device dma ops to override (Keith Busch)
    - Initialize list item in IRQ disable (Keith Busch)
    - Use x86_vector_domain as parent domain (Keith Busch)
    - Separate MSI and MSI-X vector sharing (Keith Busch)

    Marvell Aardvark host bridge driver:
    - Add DT binding for the Aardvark PCIe controller (Thomas Petazzoni)
    - Add Aardvark PCI host controller driver (Thomas Petazzoni)
    - Add Aardvark PCIe support for Armada 3700 (Thomas Petazzoni)

    Microsoft Hyper-V host bridge driver:
    - Fix interrupt cleanup path (Cathy Avery)
    - Don't leak buffer in hv_pci_onchannelcallback() (Vitaly Kuznetsov)
    - Handle all pending messages in hv_pci_onchannelcallback() (Vitaly Kuznetsov)

    NVIDIA Tegra host bridge driver:
    - Program PADS_REFCLK_CFG* always, not just on legacy SoCs (Stephen Warren)
    - Program PADS_REFCLK_CFG* registers with per-SoC values (Stephen Warren)
    - Use lower-case hex consistently for register definitions (Thierry Reding)
    - Use generic pci_remap_iospace() rather than ARM32-specific one (Thierry Reding)
    - Stop setting pcibios_min_mem (Thierry Reding)

    Renesas R-Car host bridge driver:
    - Drop gen2 dummy I/O port region (Bjorn Helgaas)

    TI DRA7xx host bridge driver:
    - Fix return value in case of error (Christophe JAILLET)

    Xilinx AXI host bridge driver:
    - Fix return value in case of error (Christophe JAILLET)

    Miscellaneous:
    - Make bus_attr_resource_alignment static (Ben Dooks)
    - Include for isa_dma_bridge_buggy (Ben Dooks)
    - MAINTAINERS: Add file patterns for PCI device tree bindings (Geert Uytterhoeven)
    - Make host bridge drivers explicitly non-modular (Paul Gortmaker)"

    * tag 'pci-v4.8-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (125 commits)
    PCI: xgene: Make explicitly non-modular
    PCI: thunder-pem: Make explicitly non-modular
    PCI: thunder-ecam: Make explicitly non-modular
    PCI: tegra: Make explicitly non-modular
    PCI: rcar-gen2: Make explicitly non-modular
    PCI: rcar: Make explicitly non-modular
    PCI: mvebu: Make explicitly non-modular
    PCI: layerscape: Make explicitly non-modular
    PCI: keystone: Make explicitly non-modular
    PCI: hisi: Make explicitly non-modular
    PCI: generic: Make explicitly non-modular
    PCI: designware-plat: Make it explicitly non-modular
    PCI: artpec6: Make explicitly non-modular
    PCI: armada8k: Make explicitly non-modular
    PCI: artpec: Add PCI_MSI_IRQ_DOMAIN dependency
    PCI: Add ACS quirk for Solarflare SFC9220
    arm64: dts: marvell: Add Aardvark PCIe support for Armada 3700
    PCI: aardvark: Add Aardvark PCI host controller driver
    dt-bindings: add DT binding for the Aardvark PCIe controller
    PCI: tegra: Program PADS_REFCLK_CFG* registers with per-SoC values
    ...

    Linus Torvalds
     
  • Pull MTD updates from Brian Norris:
    "NAND:

    Quoting Boris:
    'This pull request contains only one notable change:
    - Addition of the MTK NAND controller driver

    And a bunch of specific NAND driver improvements/fixes. Here are the
    changes that are worth mentioning:
    - A few fixes/improvements for the xway NAND controller driver
    - A few fixes for the sunxi NAND controller driver
    - Support for DMA in the sunxi NAND driver
    - Support for the sunxi NAND controller IP embedded in A23/A33 SoCs
    - Addition for bitflips detection in erased pages to the brcmnand driver
    - Support for new brcmnand IPs
    - Update of the OMAP-GPMC binding to support DMA channel description'

    In addition, some small fixes around error handling, etc., as well
    as one long-standing corner case issue (2.6.20, I think?) with
    writing 1 byte less than a page.

    NOR:

    - rework some error handling on reads and writes, so we can better
    handle (for instance) SPI controllers which have limitations on
    their maximum transfer size

    - add new Cadence Quad SPI flash controller driver

    - add new Atmel QSPI flash controller driver

    - add new Hisilicon SPI flash controller driver

    - support a few new flash, and update supported features on others

    - fix the logic used for detecting a fully-unlocked flash

    And other miscellaneous small fixes"

    * tag 'for-linus-20160801' of git://git.infradead.org/linux-mtd: (60 commits)
    mtd: spi-nor: don't build Cadence QuadSPI on non-ARM
    mtd: mtk-nor: remove duplicated include from mtk-quadspi.c
    mtd: nand: fix bug writing 1 byte less than page size
    mtd: update description of MTD_BCM47XXSFLASH symbol
    mtd: spi-nor: Add driver for Cadence Quad SPI Flash Controller
    mtd: spi-nor: Bindings for Cadence Quad SPI Flash Controller driver
    mtd: nand: brcmnand: Change BUG_ON in brcmnand_send_cmd
    mtd: pmcmsp-flash: Allocating too much in init_msp_flash()
    mtd: maps: sa1100-flash: potential NULL dereference
    mtd: atmel-quadspi: add driver for Atmel QSPI controller
    mtd: nand: omap2: fix return value check in omap_nand_probe()
    Documentation: atmel-quadspi: add binding file for Atmel QSPI driver
    mtd: spi-nor: add hisilicon spi-nor flash controller driver
    mtd: spi-nor: support dual, quad, and WP for Gigadevice
    mtd: spi-nor: Added support for n25q00a.
    memory: Update dependency of IFC for Layerscape
    mtd: nand: jz4780: Update MODULE_AUTHOR email address
    mtd: nand: sunxi: prevent a small memory leak
    mtd: nand: sunxi: add reset line support
    mtd: nand: sunxi: update DT bindings
    ...

    Linus Torvalds
     
  • Pull misc kbuild updates from Michal Marek:

    - coccicheck script improvements by Luis Rodriguez and Deepa Dinamani

    - new coccinelle patches by Yann Droneaud and Vaishali Thakkar

    - debian packaging fixes by Wilfried Klaebe, Henning Schild and Marcin
    Mielniczuk

    * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    Fix the Debian packaging script on systems with no codename
    builddeb: fix file permissions before packaging
    scripts/coccinelle: require coccinelle >= 1.0.4 on device_node_continue.cocci
    coccicheck: refer to Documentation/coccinelle.txt and wiki
    coccicheck: add support for requring a coccinelle version
    scripts: add Linux .cocciconfig for coccinelle
    coccicheck: replace --very-quiet with --quiet when debugging
    coccicheck: add support for DEBUG_FILE
    coccicheck: enable parmap support
    coccicheck: make SPFLAGS more useful
    coccicheck: move spatch binary check up
    builddeb: really include objtool binary in headers package
    coccinelle: catch krealloc() on devm_*() allocated memory
    coccinelle: recognize more devm_* memory allocation functions
    coccinelle: also catch kzfree() issues
    coccicheck: Allow for overriding spatch flags
    Coccinelle: noderef: Add new rules and correct the old rule

    Linus Torvalds
     
  • Pull kbuild updates from Michal Marek:

    - GCC plugin support by Emese Revfy from grsecurity, with a fixup from
    Kees Cook. The plugins are meant to be used for static analysis of
    the kernel code. Two plugins are provided already.

    - reduction of the gcc commandline by Arnd Bergmann.

    - IS_ENABLED / IS_REACHABLE macro enhancements by Masahiro Yamada

    - bin2c fix by Michael Tautschnig

    - setlocalversion fix by Wolfram Sang

    * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    gcc-plugins: disable under COMPILE_TEST
    kbuild: Abort build on bad stack protector flag
    scripts: Fix size mismatch of kexec_purgatory_size
    kbuild: make samples depend on headers_install
    Kbuild: don't add obj tree in additional includes
    Kbuild: arch: look for generated headers in obtree
    Kbuild: always prefix objtree in LINUXINCLUDE
    Kbuild: avoid duplicate include path
    Kbuild: don't add ../../ to include path
    vmlinux.lds.h: replace config_enabled() with IS_ENABLED()
    kconfig.h: allow to use IS_{ENABLE,REACHABLE} in macro expansion
    kconfig.h: use already defined macros for IS_REACHABLE() define
    export.h: use __is_defined() to check if __KSYM_* is defined
    kconfig.h: use __is_defined() to check if MODULE is defined
    kbuild: setlocalversion: print error to STDERR
    Add sancov plugin
    Add Cyclomatic complexity GCC plugin
    GCC plugin infrastructure
    Shared library support

    Linus Torvalds
     
  • Pull KVM updates from Paolo Bonzini:

    - ARM: GICv3 ITS emulation and various fixes. Removal of the
    old VGIC implementation.

    - s390: support for trapping software breakpoints, nested
    virtualization (vSIE), the STHYI opcode, initial extensions
    for CPU model support.

    - MIPS: support for MIPS64 hosts (32-bit guests only) and lots
    of cleanups, preliminary to this and the upcoming support for
    hardware virtualization extensions.

    - x86: support for execute-only mappings in nested EPT; reduced
    vmexit latency for TSC deadline timer (by about 30%) on Intel
    hosts; support for more than 255 vCPUs.

    - PPC: bugfixes.

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (302 commits)
    KVM: PPC: Introduce KVM_CAP_PPC_HTM
    MIPS: Select HAVE_KVM for MIPS64_R{2,6}
    MIPS: KVM: Reset CP0_PageMask during host TLB flush
    MIPS: KVM: Fix ptr->int cast via KVM_GUEST_KSEGX()
    MIPS: KVM: Sign extend MFC0/RDHWR results
    MIPS: KVM: Fix 64-bit big endian dynamic translation
    MIPS: KVM: Fail if ebase doesn't fit in CP0_EBase
    MIPS: KVM: Use 64-bit CP0_EBase when appropriate
    MIPS: KVM: Set CP0_Status.KX on MIPS64
    MIPS: KVM: Make entry code MIPS64 friendly
    MIPS: KVM: Use kmap instead of CKSEG0ADDR()
    MIPS: KVM: Use virt_to_phys() to get commpage PFN
    MIPS: Fix definition of KSEGX() for 64-bit
    KVM: VMX: Add VMCS to CPU's loaded VMCSs before VMPTRLD
    kvm: x86: nVMX: maintain internal copy of current VMCS
    KVM: PPC: Book3S HV: Save/restore TM state in H_CEDE
    KVM: PPC: Book3S HV: Pull out TM state save/restore into separate procedures
    KVM: arm64: vgic-its: Simplify MAPI error handling
    KVM: arm64: vgic-its: Make vgic_its_cmd_handle_mapi similar to other handlers
    KVM: arm64: vgic-its: Turn device_id validation into generic ID validation
    ...

    Linus Torvalds
     
  • Describe use of jiffy-based timeout values involved in inode maintenance.

    Signed-off-by: Mike Marshall
    Signed-off-by: Martin Brandenburg

    Mike Marshall