18 Mar, 2019

17 commits

  • Extend the vsp1_du_atomic_flush() API with writeback support by adding
    format, pitch and memory addresses of the writeback framebuffer.
    Writeback completion is reported through the existing frame completion
    callback with a new VSP1_DU_STATUS_WRITEBACK status flag.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • The VSP1 driver will need to pass extra flags to the DU through the
    frame completion API. Replace the completed bool flag by a bitmask to
    support this.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • The code that initializes the RPF format-related fields for display
    pipelines will also be useful for the WPF to implement writeback
    support. Split it from vsp1_du_atomic_update() to a new
    vsp1_du_pipeline_set_rwpf_format() function.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • Add support for the writeback feature of the WPF, to enable capturing
    frames at the WPF output for display pipelines. To enable writeback the
    vsp1_rwpf structure mem field must be set to the address of the
    writeback buffer and the writeback field set to true before the WPF
    .configure_stream() and .configure_partition() are called. The WPF will
    enable writeback in the display list for a single frame, and writeback
    will then be automatically disabled.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • Refactor the display list header setup to allow chained display lists
    with display pipelines. Chain the display lists as for mem-to-mem
    pipelines, but enable the frame end interrupt for every list as display
    pipelines have a single list per frame.

    This feature will be used to disable writeback exactly one frame after
    enabling it by chaining a writeback disable display list.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • The WPF needs access to the current display list to configure writeback.
    Add a display list pointer to the VSP1 entity .configure_stream()
    operation.

    Only display pipelines can make use of the display list there as
    mem-to-mem pipelines don't have access to a display list at stream
    configuration time. This is not an issue as writeback is only used for
    display pipelines.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • To prepare for addition of more flags to the display list, replace the
    'internal' flag field by a bitmask 'flags' field.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • The VSP-DL instances have two LIFs, and thus two copies of the
    VI6_DISP_IRQ_ENB, VI6_DISP_IRQ_STA and VI6_WPF_WRBCK_CTRL registers. Fix
    the corresponding macros accordingly.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • Display list fragments have been renamed to bodies. Replace one last
    occurrence of the word fragment in the documentation.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • When configuring partitions for memory-to-memory pipelines, the WPF
    accesses data of the current partition through pipe->partition.
    Writeback support will require full configuration of the WPF while not
    providing a valid pipe->partition. Rework the configuration code to fall
    back to the full image width in that case, as is already done for the
    part of the configuration currently relevant for display pipelines.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Kieran Bingham
    Reviewed-by: Mauro Carvalho Chehab

    Laurent Pinchart
     
  • This reverts commit 3299ba5c0b21 ("[media] v4l: vsp1: Supply frames to
    the DU continuously")

    The DU output mode does not rely on frames being supplied on the WPF as
    its pipeline is supplied from DRM. For the upcoming WPF writeback
    functionality, we will choose to enable writeback mode if there is an
    output buffer, or disable it (leaving the existing display pipeline
    unharmed) otherwise.

    Signed-off-by: Kieran Bingham
    Signed-off-by: Laurent Pinchart
    Reviewed-by: Mauro Carvalho Chehab

    Kieran Bingham
     
  • Linus Torvalds
     
  • Pull more Kbuild updates from Masahiro Yamada:

    - add more Build-Depends to Debian source package

    - prefix header search paths with $(srctree)/

    - make modpost show verbose section mismatch warnings

    - avoid hard-coded CROSS_COMPILE for h8300

    - fix regression for Debian make-kpkg command

    - add semantic patch to detect missing put_device()

    - fix some warnings of 'make deb-pkg'

    - optimize NOSTDINC_FLAGS evaluation

    - add warnings about redundant generic-y

    - clean up Makefiles and scripts

    * tag 'kbuild-v5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kconfig: remove stale lxdialog/.gitignore
    kbuild: force all architectures except um to include mandatory-y
    kbuild: warn redundant generic-y
    Revert "modsign: Abort modules_install when signing fails"
    kbuild: Make NOSTDINC_FLAGS a simply expanded variable
    kbuild: deb-pkg: avoid implicit effects
    coccinelle: semantic code search for missing put_device()
    kbuild: pkg: grep include/config/auto.conf instead of $KCONFIG_CONFIG
    kbuild: deb-pkg: introduce is_enabled and if_enabled_echo to builddeb
    kbuild: deb-pkg: add CONFIG_ prefix to kernel config options
    kbuild: add workaround for Debian make-kpkg
    kbuild: source include/config/auto.conf instead of ${KCONFIG_CONFIG}
    unicore32: simplify linker script generation for decompressor
    h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux-
    kbuild: move archive command to scripts/Makefile.lib
    modpost: always show verbose warning for section mismatch
    ia64: prefix header search path with $(srctree)/
    libfdt: prefix header search paths with $(srctree)/
    deb-pkg: generate correct build dependencies

    Linus Torvalds
     
  • Pull x86 asm updates from Thomas Gleixner:
    "Two cleanup patches removing dead conditionals and unused code"

    * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/asm: Remove unused __constant_c_x_memset() macro and inlines
    x86/asm: Remove dead __GNUC__ conditionals

    Linus Torvalds
     
  • Pull perf fixes from Thomas Gleixner:
    "Three fixes for the fallout from the TSX errata workaround:

    - Prevent memory corruption caused by a unchecked out of bound array
    index.

    - Two trivial fixes to address compiler warnings"

    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    perf/x86/intel: Make dev_attr_allow_tsx_force_abort static
    perf/x86: Fixup typo in stub functions
    perf/x86/intel: Fix memory corruption

    Linus Torvalds
     
  • Pull xen fix from Juergen Gross:
    "A fix for a Xen bug introduced by David's series for excluding
    ballooned pages in vmcores"

    * tag 'for-linus-5.1b-rc1b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
    xen/balloon: Fix mapping PG_offline pages to user space

    Linus Torvalds
     
  • Pull 9p updates from Dominique Martinet:
    "Here is a 9p update for 5.1; there honestly hasn't been much.

    Two fixes (leak on invalid mount argument and possible deadlock on
    i_size update on 32bit smp) and a fall-through warning cleanup"

    * tag '9p-for-5.1' of git://github.com/martinetd/linux:
    9p/net: fix memory leak in p9_client_create
    9p: use inode->i_lock to protect i_size_write() under 32-bit
    9p: mark expected switch fall-through

    Linus Torvalds
     

17 Mar, 2019

15 commits

  • Fixes: 400816f60c54 ("perf/x86/intel: Implement support for TSX Force Abort")
    Signed-off-by: kbuild test robot
    Signed-off-by: Thomas Gleixner
    Cc: "Peter Zijlstra (Intel)"
    Cc: kbuild-all@01.org
    Cc: Borislav Petkov
    Cc: "H. Peter Anvin"
    Cc: Kan Liang
    Cc: Jiri Olsa
    Cc: Andi Kleen
    Cc: stable@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190313184243.GA10820@lkp-sb-ep06

    kbuild test robot
     
  • When this .gitignore was added, lxdialog was an independent hostprogs-y.

    Now that all objects in lxdialog/ are directly linked to mconf, the
    lxdialog is no longer generated.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • Currently, every arch/*/include/uapi/asm/Kbuild explicitly includes
    the common Kbuild.asm file. Factor out the duplicated include directives
    to scripts/Makefile.asm-generic so that no architecture would opt out
    of the mandatory-y mechanism.

    um is not forced to include mandatory-y since it is a very exceptional
    case which does not support UAPI.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • The generic-y is redundant under the following condition:

    - arch has its own implementation

    - the same header is added to generated-y

    - the same header is added to mandatory-y

    If a redundant generic-y is found, the warning like follows is displayed:

    scripts/Makefile.asm-generic:20: redundant generic-y found in arch/arm/include/asm/Kbuild: timex.h

    I fixed up arch Kbuild files found by this.

    Suggested-by: Sam Ravnborg
    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • This reverts commit caf6fe91ddf62a96401e21e9b7a07227440f4185.

    The commit was fine but is no longer needed as of commit 3a2429e1faf4
    ("kbuild: change if_changed_rule for multi-line recipe"). Let's go
    back to using ";" to be consistent.

    For some discussion, see:

    https://lkml.kernel.org/r/CAK7LNASde0Q9S5GKeQiWhArfER4S4wL1=R_FW8q0++_X3T5=hQ@mail.gmail.com

    Signed-off-by: Douglas Anderson
    Signed-off-by: Masahiro Yamada

    Douglas Anderson
     
  • During a simple no-op (nothing changed) build I saw 39 invocations of
    the C compiler with the argument "-print-file-name=include". We don't
    need to call the C compiler 39 times for this--one time will suffice.

    Let's change NOSTDINC_FLAGS to a simply expanded variable to avoid
    this since there doesn't appear to be any reason it should be
    recursively expanded.

    On my build this shaved ~400 ms off my "no-op" build.

    Note that the recursive expansion seems to date back to the (really
    old) commit e8f5bdb02ce0 ("[PATCH] Makefile include path ordering").
    It's a little unclear to me if the point of that patch was to switch
    the variable to be recursively expanded (which it did) or to avoid
    directly assigning to NOSTDINC_FLAGS (AKA to switch to +=) because
    someone else (out of tree?) was setting it. I presume later since if
    the only goal was to switch to recursive expansion the patch would
    have just removed the ":".

    Signed-off-by: Douglas Anderson
    Signed-off-by: Masahiro Yamada

    Douglas Anderson
     
  • * The man page for dpkg-source(1) notes:

    > -b, --build directory [format-specific-parameters]
    > Build a source package (--build since dpkg 1.17.14).
    >
    >
    > dpkg-source will build the source package with the first
    > format found in this ordered list: the format indicated
    > with the --format command line option, the format
    > indicated in debian/source/format, “1.0”. The fallback
    > to “1.0” is deprecated and will be removed at some point
    > in the future, you should always document the desired
    > source format in debian/source/format. See section
    > SOURCE PACKAGE FORMATS for an extensive description of
    > the various source package formats.

    Thus it would be more foolproof to explicitly use 1.0 (as we always
    did) than to rely on dpkg-source's defaults.

    * In a similar vein, debian/rules is not made executable by mkdebian,
    and dpkg-source warns about that but still silently fixes the file.
    Let's be explicit once again.

    Signed-off-by: Arseny Maslennikov
    Signed-off-by: Masahiro Yamada

    Arseny Maslennikov
     
  • The of_find_device_by_node() takes a reference to the underlying device
    structure, we should release that reference.
    The implementation of this semantic code search is:
    In a function, for a local variable returned by calling
    of_find_device_by_node(),
    a, if it is released by a function such as
    put_device()/of_dev_put()/platform_device_put() after the last use,
    it is considered that there is no reference leak;
    b, if it is passed back to the caller via
    dev_get_drvdata()/platform_get_drvdata()/get_device(), etc., the
    reference will be released in other functions, and the current function
    also considers that there is no reference leak;
    c, for the rest of the situation, the current function should release the
    reference by calling put_device, this code search will report the
    corresponding error message.

    By using this semantic code search, we have found some object reference leaks,
    such as:
    commit 11907e9d3533 ("ASoC: fsl-asoc-card: fix object reference leaks in
    fsl_asoc_card_probe")
    commit a12085d13997 ("mtd: rawnand: atmel: fix possible object reference leak")
    commit 11493f26856a ("mtd: rawnand: jz4780: fix possible object reference leak")

    There are still dozens of reference leaks in the current kernel code.

    Further, for the case of b, the object returned to other functions may also
    have a reference leak, we will continue to develop other cocci scripts to
    further check the reference leak.

    Signed-off-by: Wen Yang
    Reviewed-by: Julia Lawall
    Reviewed-by: Markus Elfring
    Signed-off-by: Masahiro Yamada

    Wen Yang
     
  • Pull pidfd system call from Christian Brauner:
    "This introduces the ability to use file descriptors from /proc//
    as stable handles on struct pid. Even if a pid is recycled the handle
    will not change. For a start these fds can be used to send signals to
    the processes they refer to.

    With the ability to use /proc/ fds as stable handles on struct
    pid we can fix a long-standing issue where after a process has exited
    its pid can be reused by another process. If a caller sends a signal
    to a reused pid it will end up signaling the wrong process.

    With this patchset we enable a variety of use cases. One obvious
    example is that we can now safely delegate an important part of
    process management - sending signals - to processes other than the
    parent of a given process by sending file descriptors around via scm
    rights and not fearing that the given process will have been recycled
    in the meantime. It also allows for easy testing whether a given
    process is still alive or not by sending signal 0 to a pidfd which is
    quite handy.

    There has been some interest in this feature e.g. from systems
    management (systemd, glibc) and container managers. I have requested
    and gotten comments from glibc to make sure that this syscall is
    suitable for their needs as well. In the future I expect it to take on
    most other pid-based signal syscalls. But such features are left for
    the future once they are needed.

    This has been sitting in linux-next for quite a while and has not
    caused any issues. It comes with selftests which verify basic
    functionality and also test that a recycled pid cannot be signaled via
    a pidfd.

    Jon has written about a prior version of this patchset. It should
    cover the basic functionality since not a lot has changed since then:

    https://lwn.net/Articles/773459/

    The commit message for the syscall itself is extensively documenting
    the syscall, including it's functionality and extensibility"

    * tag 'pidfd-v5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
    selftests: add tests for pidfd_send_signal()
    signal: add pidfd_send_signal() syscall

    Linus Torvalds
     
  • Pull device-dax updates from Dan Williams:
    "New device-dax infrastructure to allow persistent memory and other
    "reserved" / performance differentiated memories, to be assigned to
    the core-mm as "System RAM".

    Some users want to use persistent memory as additional volatile
    memory. They are willing to cope with potential performance
    differences, for example between DRAM and 3D Xpoint, and want to use
    typical Linux memory management apis rather than a userspace memory
    allocator layered over an mmap() of a dax file. The administration
    model is to decide how much Persistent Memory (pmem) to use as System
    RAM, create a device-dax-mode namespace of that size, and then assign
    it to the core-mm. The rationale for device-dax is that it is a
    generic memory-mapping driver that can be layered over any "special
    purpose" memory, not just pmem. On subsequent boots udev rules can be
    used to restore the memory assignment.

    One implication of using pmem as RAM is that mlock() no longer keeps
    data off persistent media. For this reason it is recommended to enable
    NVDIMM Security (previously merged for 5.0) to encrypt pmem contents
    at rest. We considered making this recommendation an actively enforced
    requirement, but in the end decided to leave it as a distribution /
    administrator policy to allow for emulation and test environments that
    lack security capable NVDIMMs.

    Summary:

    - Replace the /sys/class/dax device model with /sys/bus/dax, and
    include a compat driver so distributions can opt-in to the new ABI.

    - Allow for an alternative driver for the device-dax address-range

    - Introduce the 'kmem' driver to hotplug / assign a device-dax
    address-range to the core-mm.

    - Arrange for the device-dax target-node to be onlined so that the
    newly added memory range can be uniquely referenced by numa apis"

    NOTE! I'm not entirely happy with the whole "PMEM as RAM" model because
    we currently have special - and very annoying rules in the kernel about
    accessing PMEM only with the "MC safe" accessors, because machine checks
    inside the regular repeat string copy functions can be fatal in some
    (not described) circumstances.

    And apparently the PMEM modules can cause that a lot more than regular
    RAM. The argument is that this happens because PMEM doesn't necessarily
    get scrubbed at boot like RAM does, but that is planned to be added for
    the user space tooling.

    Quoting Dan from another email:
    "The exposure can be reduced in the volatile-RAM case by scanning for
    and clearing errors before it is onlined as RAM. The userspace tooling
    for that can be in place before v5.1-final. There's also runtime
    notifications of errors via acpi_nfit_uc_error_notify() from
    background scrubbers on the DIMM devices. With that mechanism the
    kernel could proactively clear newly discovered poison in the volatile
    case, but that would be additional development more suitable for v5.2.

    I understand the concern, and the need to highlight this issue by
    tapping the brakes on feature development, but I don't see PMEM as RAM
    making the situation worse when the exposure is also there via DAX in
    the PMEM case. Volatile-RAM is arguably a safer use case since it's
    possible to repair pages where the persistent case needs active
    application coordination"

    * tag 'devdax-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
    device-dax: "Hotplug" persistent memory for use like normal RAM
    mm/resource: Let walk_system_ram_range() search child resources
    mm/memory-hotplug: Allow memory resources to be children
    mm/resource: Move HMM pr_debug() deeper into resource code
    mm/resource: Return real error codes from walk failures
    device-dax: Add a 'modalias' attribute to DAX 'bus' devices
    device-dax: Add a 'target_node' attribute
    device-dax: Auto-bind device after successful new_id
    acpi/nfit, device-dax: Identify differentiated memory with a unique numa-node
    device-dax: Add /sys/class/dax backwards compatibility
    device-dax: Add support for a dax override driver
    device-dax: Move resource pinning+mapping into the common driver
    device-dax: Introduce bus + driver model
    device-dax: Start defining a dax bus model
    device-dax: Remove multi-resource infrastructure
    device-dax: Kill dax_region base
    device-dax: Kill dax_region ida

    Linus Torvalds
     
  • Pull more SCSI updates from James Bottomley:
    "This is the final round of mostly small fixes and performance
    improvements to our initial submit.

    The main regression fix is the ia64 simscsi build failure which was
    missed in the serial number elimination conversion"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (24 commits)
    scsi: ia64: simscsi: use request tag instead of serial_number
    scsi: aacraid: Fix performance issue on logical drives
    scsi: lpfc: Fix error codes in lpfc_sli4_pci_mem_setup()
    scsi: libiscsi: Hold back_lock when calling iscsi_complete_task
    scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of HiLink
    scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP target port
    scsi: hisi_sas: Set PHY linkrate when disconnected
    scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw
    scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO
    scsi: hisi_sas: Change return variable type in phy_up_v3_hw()
    scsi: qla2xxx: check for kstrtol() failure
    scsi: lpfc: fix 32-bit format string warning
    scsi: lpfc: fix unused variable warning
    scsi: target: tcmu: Switch to bitmap_zalloc()
    scsi: libiscsi: fall back to sendmsg for slab pages
    scsi: qla2xxx: avoid printf format warning
    scsi: lpfc: resolve static checker warning in lpfc_sli4_hba_unset
    scsi: lpfc: Correct __lpfc_sli_issue_iocb_s4 lockdep check
    scsi: ufs: hisi: fix ufs_hba_variant_ops passing
    scsi: qla2xxx: Fix panic in qla_dfs_tgt_counters_show
    ...

    Linus Torvalds
     
  • Pull more block layer changes from Jens Axboe:
    "This is a collection of both stragglers, and fixes that came in after
    I finalized the initial pull. This contains:

    - An MD pull request from Song, with a few minor fixes

    - Set of NVMe patches via Christoph

    - Pull request from Konrad, with a few fixes for xen/blkback

    - pblk fix IO calculation fix (Javier)

    - Segment calculation fix for pass-through (Ming)

    - Fallthrough annotation for blkcg (Mathieu)"

    * tag 'for-5.1/block-post-20190315' of git://git.kernel.dk/linux-block: (25 commits)
    blkcg: annotate implicit fall through
    nvme-tcp: support C2HData with SUCCESS flag
    nvmet: ignore EOPNOTSUPP for discard
    nvme: add proper write zeroes setup for the multipath device
    nvme: add proper discard setup for the multipath device
    nvme: remove nvme_ns_config_oncs
    nvme: disable Write Zeroes for qemu controllers
    nvmet-fc: bring Disconnect into compliance with FC-NVME spec
    nvmet-fc: fix issues with targetport assoc_list list walking
    nvme-fc: reject reconnect if io queue count is reduced to zero
    nvme-fc: fix numa_node when dev is null
    nvme-fc: use nr_phys_segments to determine existence of sgl
    nvme-loop: init nvmet_ctrl fatal_err_work when allocate
    nvme: update comment to make the code easier to read
    nvme: put ns_head ref if namespace fails allocation
    nvme-trace: fix cdw10 buffer overrun
    nvme: don't warn on block content change effects
    nvme: add get-feature to admin cmds tracer
    md: Fix failed allocation of md_register_thread
    It's wrong to add len to sector_nr in raid10 reshape twice
    ...

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

    Bugfixes:
    - Fix an Oops in SUNRPC back channel tracepoints
    - Fix a SUNRPC client regression when handling oversized replies
    - Fix the minimal size for SUNRPC reply buffer allocation
    - rpc_decode_header() must always return a non-zero value on error
    - Fix a typo in pnfs_update_layout()

    Cleanup:
    - Remove redundant check for the reply length in call_decode()"

    * tag 'nfs-for-5.1-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
    SUNRPC: Remove redundant check for the reply length in call_decode()
    SUNRPC: Handle the SYSTEM_ERR rpc error
    SUNRPC: rpc_decode_header() must always return a non-zero value on error
    SUNRPC: Use the ENOTCONN error on socket disconnect
    SUNRPC: Fix the minimal size for reply buffer allocation
    SUNRPC: Fix a client regression when handling oversized replies
    pNFS: Fix a typo in pnfs_update_layout
    fix null pointer deref in tracepoints in back channel

    Linus Torvalds
     
  • Pull powerpc fixes from Michael Ellerman:
    "One fix to prevent runtime allocation of 16GB pages when running in a
    VM (as opposed to bare metal), because it doesn't work.

    A small fix to our recently added KCOV support to exempt some more
    code from being instrumented.

    Plus a few minor build fixes, a small dead code removal and a
    defconfig update.

    Thanks to: Alexey Kardashevskiy, Aneesh Kumar K.V, Christophe Leroy,
    Jason Yan, Joel Stanley, Mahesh Salgaonkar, Mathieu Malaterre"

    * tag 'powerpc-5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
    powerpc/64s: Include header file to fix a warning
    powerpc/powernv: Fix compile without CONFIG_TRACEPOINTS
    powerpc/mm: Disable kcov for SLB routines
    powerpc: remove dead code in head_fsl_booke.S
    powerpc/configs: Sync skiroot defconfig
    powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR configuration

    Linus Torvalds
     
  • Pull vfs mount infrastructure fix from Al Viro:
    "Fixup for sysfs braino.

    Capabilities checks for sysfs mount do include those on netns, but
    only if CONFIG_NET_NS is enabled. Sorry, should've caught that
    earlier..."

    * 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    fix sysfs_init_fs_context() in !CONFIG_NET_NS case

    Linus Torvalds
     

16 Mar, 2019

8 commits

  • Permission checks on current's netns should be done only when
    netns are enabled.

    Reported-by: Dominik Brodowski
    Fixes: 23bf1b6be9c2
    Signed-off-by: Al Viro

    Al Viro
     
  • Pull more smb3 updates from Steve French:
    "Various tracing and debugging improvements, crediting fixes, some
    cleanup, and important fallocate fix (fixes three xfstests) and lock
    fix.

    Summary:

    - Various additional dynamic tracing tracepoints

    - Debugging improvements (including ability to query the server via
    SMB3 fsctl from userspace tools which can help with stats and
    debugging)

    - One minor performance improvement (root directory inode caching)

    - Crediting (SMB3 flow control) fixes

    - Some cleanup (docs and to mknod)

    - Important fixes: one to smb3 implementation of fallocate zero range
    (which fixes three xfstests) and a POSIX lock fix"

    * tag '5.1-rc-smb3' of git://git.samba.org/sfrench/cifs-2.6: (22 commits)
    CIFS: fix POSIX lock leak and invalid ptr deref
    SMB3: Allow SMB3 FSCTL queries to be sent to server from tools
    cifs: fix incorrect handling of smb2_set_sparse() return in smb3_simple_falloc
    smb2: fix typo in definition of a few error flags
    CIFS: make mknod() an smb_version_op
    cifs: minor documentation updates
    cifs: remove unused value pointed out by Coverity
    SMB3: passthru query info doesn't check for SMB3 FSCTL passthru
    smb3: add dynamic tracepoints for simple fallocate and zero range
    cifs: fix smb3_zero_range so it can expand the file-size when required
    cifs: add SMB2_ioctl_init/free helpers to be used with compounding
    smb3: Add dynamic trace points for various compounded smb3 ops
    cifs: cache FILE_ALL_INFO for the shared root handle
    smb3: display volume serial number for shares in /proc/fs/cifs/DebugData
    cifs: simplify how we handle credits in compound_send_recv()
    smb3: add dynamic tracepoint for timeout waiting for credits
    smb3: display security information in /proc/fs/cifs/DebugData more accurately
    cifs: add a timeout argument to wait_for_free_credits
    cifs: prevent starvation in wait_for_free_credits for multi-credit requests
    cifs: wait_for_free_credits() make it possible to wait for >=1 credits
    ...

    Linus Torvalds
     
  • Pull UML updates from Richard Weinberger:
    "Bugfix for the UML block device driver"

    * 'for-linus-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:
    um: Fix for a possible OOPS in ubd initialization
    um: Remove duplicated include from vector_user.c

    Linus Torvalds
     
  • Pull KVM updates from Paolo Bonzini:
    "ARM:
    - some cleanups
    - direct physical timer assignment
    - cache sanitization for 32-bit guests

    s390:
    - interrupt cleanup
    - introduction of the Guest Information Block
    - preparation for processor subfunctions in cpu models

    PPC:
    - bug fixes and improvements, especially related to machine checks
    and protection keys

    x86:
    - many, many cleanups, including removing a bunch of MMU code for
    unnecessary optimizations
    - AVIC fixes

    Generic:
    - memcg accounting"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (147 commits)
    kvm: vmx: fix formatting of a comment
    KVM: doc: Document the life cycle of a VM and its resources
    MAINTAINERS: Add KVM selftests to existing KVM entry
    Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()"
    KVM: PPC: Book3S: Add count cache flush parameters to kvmppc_get_cpu_char()
    KVM: PPC: Fix compilation when KVM is not enabled
    KVM: Minor cleanups for kvm_main.c
    KVM: s390: add debug logging for cpu model subfunctions
    KVM: s390: implement subfunction processor calls
    arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2
    KVM: arm/arm64: Remove unused timer variable
    KVM: PPC: Book3S: Improve KVM reference counting
    KVM: PPC: Book3S HV: Fix build failure without IOMMU support
    Revert "KVM: Eliminate extra function calls in kvm_get_dirty_log_protect()"
    x86: kvmguest: use TSC clocksource if invariant TSC is exposed
    KVM: Never start grow vCPU halt_poll_ns from value below halt_poll_ns_grow_start
    KVM: Expose the initial start value in grow_halt_poll_ns() as a module parameter
    KVM: grow_halt_poll_ns() should never shrink vCPU halt_poll_ns
    KVM: x86/mmu: Consolidate kvm_mmu_zap_all() and kvm_mmu_zap_mmio_sptes()
    KVM: x86/mmu: WARN if zapping a MMIO spte results in zapping children
    ...

    Linus Torvalds
     
  • Pull tracing fixes and cleanups from Steven Rostedt:
    "This contains a series of last minute clean ups, small fixes and error
    checks"

    * tag 'trace-v5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
    tracing/probe: Verify alloc_trace_*probe() result
    tracing/probe: Check event/group naming rule at parsing
    tracing/probe: Check the size of argument name and body
    tracing/probe: Check event name length correctly
    tracing/probe: Check maxactive error cases
    tracing: kdb: Fix ftdump to not sleep
    trace/probes: Remove kernel doc style from non kernel doc comment
    tracing/probes: Make reserved_field_names static

    Linus Torvalds
     
  • Pull IOMMU fix from Joerg Roedel:
    "Fix a NULL-pointer dereference issue in the ACPI device matching code
    of the AMD IOMMU driver"

    * tag 'iommu-fix-v5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
    iommu/amd: Fix NULL dereference bug in match_hid_uid

    Linus Torvalds
     
  • Pull ARM updates from Russell King:

    - An improvement from Ard Biesheuvel, who noted that the identity map
    setup was taking a long time due to flush_cache_louis().

    - Update a comment about dma_ops from Wolfram Sang.

    - Remove use of "-p" with ld, where this flag has been a no-op since
    2004.

    - Remove the printing of the virtual memory layout, which is no longer
    useful since we hide pointers.

    - Correct SCU help text.

    - Remove legacy TWD registration method.

    - Add pgprot_device() implementation for mapping PCI sysfs resource
    files.

    - Initialise PFN limits earlier for kmemleak.

    - Fix argument count to match macro definition (affects clang builds)

    - Use unified assembler language almost everywhere for clang, and other
    clang improvements (from Stefan Agner, Nathan Chancellor).

    - Support security extension for noMMU and other noMMU cleanups (from
    Vladimir Murzin).

    - Remove unnecessary SMP bringup code (which was incorrectly copy'n'
    pasted from the ARM platform implementations) and remove it from the
    arch code to discourge further copys of it appearing.

    - Add Cortex A9 erratum preventing kexec working on some SoCs.

    - AMBA bus identification updates from Mike Leach.

    - More use of raw spinlocks to avoid -RT kernel issues (from Yang Shi
    and Sebastian Andrzej Siewior).

    - MCPM hyp/svc mode mismatch fixes from Marek Szyprowski.

    * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm: (32 commits)
    ARM: 8849/1: NOMMU: Fix encodings for PMSAv8's PRBAR4/PRLAR4
    ARM: 8848/1: virt: Align GIC version check with arm64 counterpart
    ARM: 8847/1: pm: fix HYP/SVC mode mismatch when MCPM is used
    ARM: 8845/1: use unified assembler in c files
    ARM: 8844/1: use unified assembler in assembly files
    ARM: 8843/1: use unified assembler in headers
    ARM: 8841/1: use unified assembler in macros
    ARM: 8840/1: use a raw_spinlock_t in unwind
    ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t
    ARM: 8837/1: coresight: etmv4: Update ID register table to add UCI support
    ARM: 8836/1: drivers: amba: Update component matching to use the CoreSight UCI values.
    ARM: 8838/1: drivers: amba: Updates to component identification for driver matching.
    ARM: 8833/1: Ensure that NEON code always compiles with Clang
    ARM: avoid Cortex-A9 livelock on tight dmb loops
    ARM: smp: remove arch-provided "pen_release"
    ARM: actions: remove boot_lock and pen_release
    ARM: oxnas: remove CPU hotplug implementation
    ARM: qcom: remove unnecessary boot_lock
    ARM: 8832/1: NOMMU: Limit visibility for CONFIG_FLASH_{MEM_BASE,SIZE}
    ARM: 8831/1: NOMMU: pmsa-v8: remove unneeded semicolon
    ...

    Linus Torvalds
     
  • Pull NTB updates from Jon Mason:

    - fixes for switchtec debugability and mapping table entries

    - NTB transport improvements

    - a reworking of the peer_db_addr for better abstraction

    * tag 'ntb-5.1' of git://github.com/jonmason/ntb:
    NTB: add new parameter to peer_db_addr() db_bit and db_data
    NTB: ntb_transport: Ensure the destination buffer is mapped for TX DMA
    NTB: ntb_transport: Free MWs in ntb_transport_link_cleanup()
    ntb_hw_switchtec: Added support of >=4G memory windows
    ntb_hw_switchtec: NT req id mapping table register entry number should be 512
    ntb_hw_switchtec: debug print 64bit aligned crosslink BAR Numbers

    Linus Torvalds