04 Aug, 2016

9 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
     
  • Merge even more updates from Andrew Morton:

    - dma-mapping API cleanup

    - a few cleanups and misc things

    - use jump labels in dynamic-debug

    * emailed patches from Andrew Morton :
    dynamic_debug: add jump label support
    jump_label: remove bug.h, atomic.h dependencies for HAVE_JUMP_LABEL
    arm: jump label may reference text in __exit
    tile: support static_key usage in non-module __exit sections
    sparc: support static_key usage in non-module __exit sections
    powerpc: add explicit #include for jump label
    drivers/media/dvb-frontends/cxd2841er.c: avoid misleading gcc warning
    MAINTAINERS: update email and list of Samsung HW driver maintainers
    block: remove BLK_DEV_DAX config option
    samples/kretprobe: fix the wrong type
    samples/kretprobe: convert the printk to pr_info/pr_err
    samples/jprobe: convert the printk to pr_info/pr_err
    samples/kprobe: convert the printk to pr_info/pr_err
    dma-mapping: use unsigned long for dma_attrs
    media: mtk-vcodec: remove unused dma_attrs
    include/linux/bitmap.h: cleanup
    tree-wide: replace config_enabled() with IS_ENABLED()
    drivers/fpga/Kconfig: fix build failure

    Linus Torvalds
     
  • The addition of jump label support in dynamic_debug caused an unexpected
    warning in exactly one file in the kernel:

    drivers/media/dvb-frontends/cxd2841er.c: In function 'cxd2841er_tune_tc':
    include/linux/dynamic_debug.h:134:3: error: 'carrier_offset' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    __dynamic_dev_dbg(&descriptor, dev, fmt, \
    ^~~~~~~~~~~~~~~~~
    drivers/media/dvb-frontends/cxd2841er.c:3177:11: note: 'carrier_offset' was declared here
    int ret, carrier_offset;
    ^~~~~~~~~~~~~~

    The problem seems to be that the compiler gets confused by the extra
    conditionals in static_branch_unlikely, to the point where it can no
    longer keep track of which branches have already been taken, and it
    doesn't realize that this variable is now always initialized when it
    gets used.

    I have done lots of randconfig kernel builds and could not find any
    other file with this behavior, so I assume it's a rare enough glitch
    that we don't need to change the jump label support but instead just
    work around the warning in the driver.

    To achieve that, I'm moving the check for the return value into the
    switch() statement, which is an obvious transformation, but is enough to
    un-confuse the compiler here. The resulting code is not as nice to
    read, but at least we retain the behavior of warning if it gets changed
    to actually access an uninitialized carrier offset value in the future.

    Link: http://lkml.kernel.org/r/20160713204342.1221511-1-arnd@arndb.de
    Signed-off-by: Arnd Bergmann
    Acked-by: Abylay Ospan
    Cc: Sergey Kozlov
    Cc: Mauro Carvalho Chehab
    Cc: Jason Baron
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arnd Bergmann
     
  • 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 local variable dma_attrs is set but never read.

    Link: http://lkml.kernel.org/r/1468399300-5399-1-git-send-email-k.kozlowski@samsung.com
    Signed-off-by: Krzysztof Kozlowski
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Kozlowski
     
  • The use of config_enabled() against config options is ambiguous. In
    practical terms, config_enabled() is equivalent to IS_BUILTIN(), but the
    author might have used it for the meaning of IS_ENABLED(). Using
    IS_ENABLED(), IS_BUILTIN(), IS_MODULE() etc. makes the intention
    clearer.

    This commit replaces config_enabled() with IS_ENABLED() where possible.
    This commit is only touching bool config options.

    I noticed two cases where config_enabled() is used against a tristate
    option:

    - config_enabled(CONFIG_HWMON)
    [ drivers/net/wireless/ath/ath10k/thermal.c ]

    - config_enabled(CONFIG_BACKLIGHT_CLASS_DEVICE)
    [ drivers/gpu/drm/gma500/opregion.c ]

    I did not touch them because they should be converted to IS_BUILTIN()
    in order to keep the logic, but I was not sure it was the authors'
    intention.

    Link: http://lkml.kernel.org/r/1465215656-20569-1-git-send-email-yamada.masahiro@socionext.com
    Signed-off-by: Masahiro Yamada
    Acked-by: Kees Cook
    Cc: Stas Sergeev
    Cc: Matt Redfearn
    Cc: Joshua Kinard
    Cc: Jiri Slaby
    Cc: Bjorn Helgaas
    Cc: Borislav Petkov
    Cc: Markos Chandras
    Cc: "Dmitry V. Levin"
    Cc: yu-cheng yu
    Cc: James Hogan
    Cc: Brian Gerst
    Cc: Johannes Berg
    Cc: Peter Zijlstra
    Cc: Al Viro
    Cc: Will Drewry
    Cc: Nikolay Martynov
    Cc: Huacai Chen
    Cc: "H. Peter Anvin"
    Cc: Thomas Gleixner
    Cc: Daniel Borkmann
    Cc: Leonid Yegoshin
    Cc: Rafal Milecki
    Cc: James Cowgill
    Cc: Greg Kroah-Hartman
    Cc: Ralf Baechle
    Cc: Alex Smith
    Cc: Adam Buchbinder
    Cc: Qais Yousef
    Cc: Jiang Liu
    Cc: Mikko Rapeli
    Cc: Paul Gortmaker
    Cc: Denys Vlasenko
    Cc: Brian Norris
    Cc: Hidehiro Kawai
    Cc: "Luis R. Rodriguez"
    Cc: Andy Lutomirski
    Cc: Ingo Molnar
    Cc: Dave Hansen
    Cc: "Kirill A. Shutemov"
    Cc: Roland McGrath
    Cc: Paul Burton
    Cc: Kalle Valo
    Cc: Viresh Kumar
    Cc: Tony Wu
    Cc: Huaitong Han
    Cc: Sumit Semwal
    Cc: Alexei Starovoitov
    Cc: Juergen Gross
    Cc: Jason Cooper
    Cc: "David S. Miller"
    Cc: Oleg Nesterov
    Cc: Andrea Gelmini
    Cc: David Woodhouse
    Cc: Marc Zyngier
    Cc: Rabin Vincent
    Cc: "Maciej W. Rozycki"
    Cc: David Daney
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Masahiro Yamada
     
  • While building m32r allmodconfig the build is failing with the error:

    ERROR: "bad_dma_ops" [drivers/fpga/zynq-fpga.ko] undefined!

    Xilinx Zynq FPGA is using DMA but there was no dependency while
    building.

    Link: http://lkml.kernel.org/r/1464346526-13913-1-git-send-email-sudipm.mukherjee@gmail.com
    Signed-off-by: Sudip Mukherjee
    Acked-by: Moritz Fischer
    Cc: Alan Tull
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sudip Mukherjee
     
  • This reverts commit 16468c783cb4cf72475dcda23fabecb4a4bb0e17.

    Bisection showed that it was the root cause for a resume hang on a
    bog-standard all-Intel laptop (Sony Vaio Pro 11), and reverting fixes
    the hang.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • This clearly had never gotten tested, probably because you need a fairly
    minimal configuration in order to disable DEBUG_FS (several other
    options select it).

    The dummy inline functions that were used for the no-DEBUG_FS case were
    missing the argument names in the declarations.

    Fixes: 1dac891c1c95 ("drm/i915: Register debugfs interface last")
    Reported-and-tested-by: Jörg Otte
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

03 Aug, 2016

31 commits

  • Pull networking fixes from David Miller:

    1) Fix several cases of missing of_node_put() calls in various
    networking drivers. From Peter Chen.

    2) Don't try to remove unconfigured VLANs in qed driver, from Yuval
    Mintz.

    3) Unbalanced locking in TIPC error handling, from Wei Yongjun.

    4) Fix lockups in CPDMA driver, from Grygorii Strashko.

    5) More MACSEC refcount et al fixes, from Sabrina Dubroca.

    6) Fix MAC address setting in r8169 during runtime suspend, from
    Chun-Hao Lin.

    7) Various printf format specifier fixes, from Heinrich Schuchardt.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (59 commits)
    qed: Fail driver load in 100g MSI mode.
    ethernet: ti: davinci_emac: add missing of_node_put after calling of_parse_phandle
    ethernet: stmicro: stmmac: add missing of_node_put after calling of_parse_phandle
    ethernet: stmicro: stmmac: dwmac-socfpga: add missing of_node_put after calling of_parse_phandle
    ethernet: renesas: sh_eth: add missing of_node_put after calling of_parse_phandle
    ethernet: renesas: ravb_main: add missing of_node_put after calling of_parse_phandle
    ethernet: marvell: pxa168_eth: add missing of_node_put after calling of_parse_phandle
    ethernet: marvell: mvpp2: add missing of_node_put after calling of_parse_phandle
    ethernet: marvell: mvneta: add missing of_node_put after calling of_parse_phandle
    ethernet: hisilicon: hns: hns_dsaf_main: add missing of_node_put after calling of_parse_phandle
    ethernet: hisilicon: hns: hns_dsaf_mac: add missing of_node_put after calling of_parse_phandle
    ethernet: cavium: octeon: add missing of_node_put after calling of_parse_phandle
    ethernet: aurora: nb8800: add missing of_node_put after calling of_parse_phandle
    ethernet: arc: emac_main: add missing of_node_put after calling of_parse_phandle
    ethernet: apm: xgene: add missing of_node_put after calling of_parse_phandle
    ethernet: altera: add missing of_node_put
    8139too: fix system hang when there is a tx timeout event.
    qed: Fix error return code in qed_resc_alloc()
    net: qlcnic: avoid superfluous assignement
    dsa: b53: remove redundant if
    ...

    Linus Torvalds
     
  • 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 Ceph updates from Ilya Dryomov:
    "The highlights are:

    - RADOS namespace support in libceph and CephFS (Zheng Yan and
    myself). The stopgaps added in 4.5 to deny access to inodes in
    namespaces are removed and CEPH_FEATURE_FS_FILE_LAYOUT_V2 feature
    bit is now fully supported

    - A large rework of the MDS cap flushing code (Zheng Yan)

    - Handle some of ->d_revalidate() in RCU mode (Jeff Layton). We were
    overly pessimistic before, bailing at the first sight of LOOKUP_RCU

    On top of that we've got a few CephFS bug fixes, a couple of cleanups
    and Arnd's workaround for a weird genksyms issue"

    * tag 'ceph-for-4.8-rc1' of git://github.com/ceph/ceph-client: (34 commits)
    ceph: fix symbol versioning for ceph_monc_do_statfs
    ceph: Correctly return NXIO errors from ceph_llseek
    ceph: Mark the file cache as unreclaimable
    ceph: optimize cap flush waiting
    ceph: cleanup ceph_flush_snaps()
    ceph: kick cap flushes before sending other cap message
    ceph: introduce an inode flag to indicates if snapflush is needed
    ceph: avoid sending duplicated cap flush message
    ceph: unify cap flush and snapcap flush
    ceph: use list instead of rbtree to track cap flushes
    ceph: update types of some local varibles
    ceph: include 'follows' of pending snapflush in cap reconnect message
    ceph: update cap reconnect message to version 3
    ceph: mount non-default filesystem by name
    libceph: fsmap.user subscription support
    ceph: handle LOOKUP_RCU in ceph_d_revalidate
    ceph: allow dentry_lease_is_valid to work under RCU walk
    ceph: clear d_fsinfo pointer under d_lock
    ceph: remove ceph_mdsc_lease_release
    ceph: don't use ->d_time
    ...

    Linus Torvalds
     
  • Commit e93762bbf681 ("w1: masters: omap_hdq: add support for 1-wire
    mode") added a statement to clear the hdq_irqstatus flags in
    hdq_read_byte().

    If the hdq reading process is scheduled slowly or interrupts are
    disabled for a while the hardware read activity might already be
    finished on entry of hdq_read_byte(). And hdq_isr() already has set the
    hdq_irqstatus to 0x6 (can be seen in debug mode) denoting that both, the
    TXCOMPLETE and RXCOMPLETE interrupts occurred in parallel.

    This means there is no need to wait and the hdq_read_byte() can just
    read the byte from the hdq controller.

    By resetting hdq_irqstatus to 0 the read process is forced to be always
    waiting again (because the if statement always succeeds) but the
    hardware will not issue another RXCOMPLETE interrupt. This results in a
    false timeout.

    After such a situation the hdq bus hangs.

    Link: http://lkml.kernel.org/r/b724765f87ad276a69625bc19806c8c8844c4590.1469513669.git.hns@goldelico.com
    Signed-off-by: H. Nikolaus Schaller
    Cc: Evgeniy Polyakov
    Cc: Greg Kroah-Hartman
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    H. Nikolaus Schaller
     
  • The helper macro module_w1_family can be used in module drivers that
    only register a w1 driver in their module init functions. Add this
    macro and use it in all applicable drivers.

    Link: http://lkml.kernel.org/r/20160531204313.20979-2-afd@ti.com
    Signed-off-by: Andrew F. Davis
    Acked-by: Evgeniy Polyakov
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew F. Davis
     
  • PLATFORM_DEVID_AUTO can be used to have the platform core assign a
    unique ID instead of manually creating one with IDA. Do this in all
    applicable drivers.

    Link: http://lkml.kernel.org/r/20160531204313.20979-1-afd@ti.com
    Signed-off-by: Andrew F. Davis
    Acked-by: Evgeniy Polyakov
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew F. Davis
     
  • Add RapidIO switch driver for IDT Gen3 switch devices: RXS1632 and
    RXS2448.

    [alexandre.bounine@idt.com: fixup for original driver patch]
    Link: http://lkml.kernel.org/r/1469137596-18241-1-git-send-email-alexandre.bounine@idt.com
    Link: http://lkml.kernel.org/r/1469125134-16523-14-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
     
  • Implement changes made in RapidIO specification rev.3 to LP-Serial Physical
    Layer register definitions:

    - use per-port register offset calculations based on LP-Serial Extended
    Features Block (EFB) Register Map type (I or II) with different
    per-port offset step (0x20 vs 0x40 respectfully).

    - remove deprecated Parallel Physical layer definitions and related
    code.

    [alexandre.bounine@idt.com: fix DocBook warning for gen3 update]
    Link: http://lkml.kernel.org/r/1469191173-19338-1-git-send-email-alexandre.bounine@idt.com
    Link: http://lkml.kernel.org/r/1469125134-16523-12-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
     
  • Current definition of map_inb() mport operations callback uses u32 type
    to specify required inbound window (IBW) size. This is limiting factor
    because existing hardware - tsi721 and fsl_rio, both support IBW size up
    to 16GB.

    Changing type of size parameter to u64 to allow IBW size configurations
    larger than 4GB.

    [alexandre.bounine@idt.com: remove compiler warning about size of constant]
    Link: http://lkml.kernel.org/r/20160802184856.2566-1-alexandre.bounine@idt.com
    Link: http://lkml.kernel.org/r/1469125134-16523-11-git-send-email-alexandre.bounine@idt.com
    Signed-off-by: Alexandre Bounine
    Cc: Matt Porter
    Cc: Benjamin Herrenschmidt
    Cc: Michael Ellerman
    Cc: Andre van Herk
    Cc: Barry Wood
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexandre Bounine
     
  • Fix lockdep warning during device probing: move sysfs initialization out
    of code protected by a spin lock.

    Link: http://lkml.kernel.org/r/1469125134-16523-10-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 checking for error code returned by HW-specific mbox open routines.
    Ensure that resources are properly release if failed.

    This patch is applicable to kernel versions starting from v2.6.15.

    Link: http://lkml.kernel.org/r/1469125134-16523-9-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 advancing transfer queue immediately from transfer submit call. DMA
    performance improvement: This will start transfer without waiting for
    'issue_pending' command if there is no DMA transfer in progress.

    Link: http://lkml.kernel.org/r/1469125134-16523-8-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 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
     
  • Update return value description for rio_dma_prep_... functions to
    include error-valued pointer that can be returned by HW mport device
    drivers. Return values from these functions must be checked using
    IS_ERR_OR_NULL macro.

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

    Link: http://lkml.kernel.org/r/1469125134-16523-4-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
     
  • Patch series "RapidIO subsystem updates".

    This set of patches contains RapidIO subsystem fixes and updates that
    have been made since kernel v4.6. The most significant update brings
    changes related to the latest revision of RapidIO specification
    (rev.3.x) and introduction of next generation of RapidIO switches by IDT
    (RXS1632 and RXS2448).

    This patch (of 13):

    This is RapidIO part of the original patch submitted by Joe Perches.
    (see: https://lkml.org/lkml/2016/3/5/19)

    Since commit 3cab1e711297 ("lib/vsprintf: refactor duplicate code
    to special_hex_number()") %pa uses have been output with a 0x prefix.

    These 0x prefixes in the formats are unnecessary.

    Link: http://lkml.kernel.org/r/1469125134-16523-2-git-send-email-alexandre.bounine@idt.com
    Signed-off-by: Joe Perches
    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

    Joe Perches
     
  • 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
     
  • Some systems are memory constrained but they need to load very large
    firmwares. The firmware subsystem allows drivers to request this
    firmware be loaded from the filesystem, but this requires that the
    entire firmware be loaded into kernel memory first before it's provided
    to the driver. This can lead to a situation where we map the firmware
    twice, once to load the firmware into kernel memory and once to copy the
    firmware into the final resting place.

    This creates needless memory pressure and delays loading because we have
    to copy from kernel memory to somewhere else. Let's add a
    request_firmware_into_buf() API that allows drivers to request firmware
    be loaded directly into a pre-allocated buffer. This skips the
    intermediate step of allocating a buffer in kernel memory to hold the
    firmware image while it's read from the filesystem. It also requires
    that drivers know how much memory they'll require before requesting the
    firmware and negates any benefits of firmware caching because the
    firmware layer doesn't manage the buffer lifetime.

    For a 16MB buffer, about half the time is spent performing a memcpy from
    the buffer to the final resting place. I see loading times go from
    0.081171 seconds to 0.047696 seconds after applying this patch. Plus
    the vmalloc pressure is reduced.

    This is based on a patch from Vikram Mulukutla on codeaurora.org:
    https://www.codeaurora.org/cgit/quic/la/kernel/msm-3.18/commit/drivers/base/firmware_class.c?h=rel/msm-3.18&id=0a328c5f6cd999f5c591f172216835636f39bcb5

    Link: http://lkml.kernel.org/r/20160607164741.31849-4-stephen.boyd@linaro.org
    Signed-off-by: Stephen Boyd
    Cc: Mimi Zohar
    Cc: Vikram Mulukutla
    Cc: Mark Brown
    Cc: Ming Lei
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stephen Boyd
     
  • Some low memory systems with complex peripherals cannot afford to have
    the relatively large firmware images taking up valuable memory during
    suspend and resume. Change the internal implementation of
    firmware_class to disallow caching based on a configurable option. In
    the near future, variants of request_firmware will take advantage of
    this feature.

    Link: http://lkml.kernel.org/r/20160607164741.31849-3-stephen.boyd@linaro.org
    [stephen.boyd@linaro.org: Drop firmware_desc design and use flags]
    Signed-off-by: Vikram Mulukutla
    Signed-off-by: Stephen Boyd
    Cc: Mimi Zohar
    Cc: Mark Brown
    Cc: Ming Lei
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vikram Mulukutla
     
  • Some systems are memory constrained but they need to load very large
    firmwares. The firmware subsystem allows drivers to request this
    firmware be loaded from the filesystem, but this requires that the
    entire firmware be loaded into kernel memory first before it's provided
    to the driver. This can lead to a situation where we map the firmware
    twice, once to load the firmware into kernel memory and once to copy the
    firmware into the final resting place.

    This design creates needless memory pressure and delays loading because
    we have to copy from kernel memory to somewhere else. This patch sets
    adds support to the request firmware API to load the firmware directly
    into a pre-allocated buffer, skipping the intermediate copying step and
    alleviating memory pressure during firmware loading. The drawback is
    that we can't use the firmware caching feature because the memory for
    the firmware cache is not managed by the firmware layer.

    This patch (of 3):

    We use similar structured code to read and write the kmapped firmware
    pages. The only difference is read copies from the kmap region and
    write copies to it. Consolidate this into one function to reduce
    duplication.

    Link: http://lkml.kernel.org/r/20160607164741.31849-2-stephen.boyd@linaro.org
    Signed-off-by: Stephen Boyd
    Cc: Vikram Mulukutla
    Cc: Mimi Zohar
    Cc: Mark Brown
    Cc: Ming Lei
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stephen Boyd
     
  • Move the DRIVER_NAME macro definition before the first usage site and
    fix build error.

    Link: http://lkml.kernel.org/r/20160801163937.GA28119@nazgul.tnic
    Signed-off-by: Borislav Petkov
    Reported-by: kbuild test robot
    Cc: Jean-Christophe Plagniol-Villard
    Cc: Tomi Valkeinen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Borislav Petkov
     
  • kernel.h header doesn't directly use dynamic debug, instead we can
    include it in module.c (which used it via kernel.h). printk.h only uses
    it if CONFIG_DYNAMIC_DEBUG is on, changing the inclusion to only happen
    in that case.

    Link: http://lkml.kernel.org/r/1468429793-16917-1-git-send-email-luisbg@osg.samsung.com
    [luisbg@osg.samsung.com: include dynamic_debug.h in drb_int.h]
    Link: http://lkml.kernel.org/r/1468447828-18558-2-git-send-email-luisbg@osg.samsung.com
    Signed-off-by: Luis de Bethencourt
    Cc: Rusty Russell
    Cc: Hidehiro Kawai
    Cc: Borislav Petkov
    Cc: Michal Nazarewicz
    Cc: Rasmus Villemoes
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Luis de Bethencourt
     
  • Pull i915 drm fixes from Dave Airlie:
    "These are the two fixes from Ville for the bug you are seeing on your
    HSW laptop.

    They pretty much disable PSR in some cases where the panel reports a
    setup time that would cause issues, like you seem to have"

    * tag 'drm-psr-fixes-for-v4.8' of git://people.freedesktop.org/~airlied/linux:
    drm/i915: Check PSR setup time vs. vblank length
    drm/dp: Add drm_dp_psr_setup_time()

    Linus Torvalds
     
  • There was only one use of __initdata_refok and __exit_refok

    __init_refok was used 46 times against 82 for __ref.

    Those definitions are obsolete since commit 312b1485fb50 ("Introduce new
    section reference annotations tags: __ref, __refdata, __refconst")

    This patch removes the following compatibility definitions and replaces
    them treewide.

    /* compatibility defines */
    #define __init_refok __ref
    #define __initdata_refok __refdata
    #define __exit_refok __ref

    I can also provide separate patches if necessary.
    (One patch per tree and check in 1 month or 2 to remove old definitions)

    [akpm@linux-foundation.org: coding-style fixes]
    Link: http://lkml.kernel.org/r/1466796271-3043-1-git-send-email-fabf@skynet.be
    Signed-off-by: Fabian Frederick
    Cc: Ingo Molnar
    Cc: Sam Ravnborg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fabian Frederick
     
  • When alloc_disk(0) is used the ->major number is completely ignored.
    All devices are allocated with a major of BLOCK_EXT_MAJOR.

    So remove registration and deregistration of 'major'.

    Link: http://lkml.kernel.org/r/20160602064318.4403.49955.stgit@noble
    Signed-off-by: NeilBrown
    Cc: Keith Busch
    Cc: Jens Axboe
    Cc: Maxim Levitsky
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    NeilBrown
     
  • 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
     
  • Bspec says:
    "Restriction : SRD must not be enabled when the PSR Setup time from DPCD
    00071h is greater than the time for vertical blank minus one line."

    Let's check for that and disallow PSR if we exceed the limit.

    Cc: Daniel Vetter
    Reviewed-by: Daniel Vetter
    Signed-off-by: Ville Syrjälä
    Signed-off-by: Dave Airlie

    Ville Syrjälä
     
  • Add a small helper to parse the PSR setup time from the DPCD PSR
    capabilities and return the value in microseconds.

    v2: Don't waste so many bytes on the psr_setup_time_us[] table

    Cc: Daniel Vetter
    Reviewed-by: Daniel Vetter
    Signed-off-by: Ville Syrjälä
    Signed-off-by: Dave Airlie

    Ville Syrjälä
     
  • 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 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