09 Apr, 2020

1 commit

  • Pull virtio updates from Michael Tsirkin:

    - Some bug fixes

    - The new vdpa subsystem with two first drivers

    * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
    virtio-balloon: Revert "virtio-balloon: Switch back to OOM handler for VIRTIO_BALLOON_F_DEFLATE_ON_OOM"
    vdpa: move to drivers/vdpa
    virtio: Intel IFC VF driver for VDPA
    vdpasim: vDPA device simulator
    vhost: introduce vDPA-based backend
    virtio: introduce a vDPA based transport
    vDPA: introduce vDPA bus
    vringh: IOTLB support
    vhost: factor out IOTLB
    vhost: allow per device message handler
    vhost: refine vhost and vringh kconfig
    virtio-balloon: Switch back to OOM handler for VIRTIO_BALLOON_F_DEFLATE_ON_OOM
    virtio-net: Introduce hash report feature
    virtio-net: Introduce RSS receive steering feature
    virtio-net: Introduce extended RSC feature
    tools/virtio: option to build an out of tree module

    Linus Torvalds
     

08 Apr, 2020

1 commit

  • Adds LKDTM tests for arithmetic overflow (both signed and unsigned), as
    well as array bounds checking.

    Signed-off-by: Kees Cook
    Signed-off-by: Andrew Morton
    Acked-by: Dmitry Vyukov
    Cc: Alexander Potapenko
    Cc: Andrey Konovalov
    Cc: Andrey Ryabinin
    Cc: Ard Biesheuvel
    Cc: Arnd Bergmann
    Cc: Dan Carpenter
    Cc: Elena Petrova
    Cc: "Gustavo A. R. Silva"
    Link: http://lkml.kernel.org/r/20200227193516.32566-4-keescook@chromium.org
    Signed-off-by: Linus Torvalds

    Kees Cook
     

04 Apr, 2020

2 commits

  • Pull pci updates from Bjorn Helgaas:
    "Enumeration:

    - Revert sysfs "rescan" renames that broke apps (Kelsey Skunberg)

    - Add more 32 GT/s link speed decoding and improve the implementation
    (Yicong Yang)

    Resource management:

    - Add support for sizing programmable host bridge apertures and fix a
    related alpha Nautilus regression (Ivan Kokshaysky)

    Interrupts:

    - Add boot interrupt quirk mechanism for Xeon chipsets and document
    boot interrupts (Sean V Kelley)

    PCIe native device hotplug:

    - When possible, disable in-band presence detect and use PDS
    (Alexandru Gagniuc)

    - Add DMI table for devices that don't use in-band presence detection
    but don't advertise that correctly (Stuart Hayes)

    - Fix hang when powering slots up/down via sysfs (Lukas Wunner)

    - Fix an MSI interrupt race (Stuart Hayes)

    Virtualization:

    - Add ACS quirks for Zhaoxin devices (Raymond Pang)

    Error handling:

    - Add Error Disconnect Recover (EDR) support so firmware can report
    devices disconnected via DPC and we can try to recover (Kuppuswamy
    Sathyanarayanan)

    Peer-to-peer DMA:

    - Add Intel Sky Lake-E Root Ports B, C, D to the whitelist (Andrew
    Maier)

    ASPM:

    - Reduce severity of common clock config message (Chris Packham)

    - Clear the correct bits when enabling L1 substates, so we don't go
    to the wrong state (Yicong Yang)

    Endpoint framework:

    - Replace EPF linkup ops with notifier call chain and improve locking
    (Kishon Vijay Abraham I)

    - Fix concurrent memory allocation in OB address region (Kishon Vijay
    Abraham I)

    - Move PF function number assignment to EPC core to support multiple
    function creation methods (Kishon Vijay Abraham I)

    - Fix issue with clearing configfs "start" entry (Kunihiko Hayashi)

    - Fix issue with endpoint MSI-X ignoring BAR Indicator and Table
    Offset (Kishon Vijay Abraham I)

    - Add support for testing DMA transfers (Kishon Vijay Abraham I)

    - Add support for testing > 10 endpoint devices (Kishon Vijay Abraham I)

    - Add support for tests to clear IRQ (Kishon Vijay Abraham I)

    - Add common DT schema for endpoint controllers (Kishon Vijay Abraham I)

    Amlogic Meson PCIe controller driver:

    - Add DT bindings for AXG PCIe PHY, shared MIPI/PCIe analog PHY (Remi
    Pommarel)

    - Add Amlogic AXG PCIe PHY, AXG MIPI/PCIe analog PHY drivers (Remi
    Pommarel)

    Cadence PCIe controller driver:

    - Add Root Complex/Endpoint DT schema for Cadence PCIe (Kishon Vijay
    Abraham I)

    Intel VMD host bridge driver:

    - Add two VMD Device IDs that require bus restriction mode (Sushma
    Kalakota)

    Mobiveil PCIe controller driver:

    - Refactor and modularize mobiveil driver (Hou Zhiqiang)

    - Add support for Mobiveil GPEX Gen4 host (Hou Zhiqiang)

    Microsoft Hyper-V host bridge driver:

    - Add support for Hyper-V PCI protocol version 1.3 and
    PCI_BUS_RELATIONS2 (Long Li)

    - Refactor to prepare for virtual PCI on non-x86 architectures (Boqun
    Feng)

    - Fix memory leak in hv_pci_probe()'s error path (Dexuan Cui)

    NVIDIA Tegra PCIe controller driver:

    - Use pci_parse_request_of_pci_ranges() (Rob Herring)

    - Add support for endpoint mode and related DT updates (Vidya Sagar)

    - Reduce -EPROBE_DEFER error message log level (Thierry Reding)

    Qualcomm PCIe controller driver:

    - Restrict class fixup to specific Qualcomm devices (Bjorn Andersson)

    Synopsys DesignWare PCIe controller driver:

    - Refactor core initialization code for endpoint mode (Vidya Sagar)

    - Fix endpoint MSI-X to use correct table address (Kishon Vijay
    Abraham I)

    TI DRA7xx PCIe controller driver:

    - Fix MSI IRQ handling (Vignesh Raghavendra)

    TI Keystone PCIe controller driver:

    - Allow AM654 endpoint to raise MSI-X interrupt (Kishon Vijay Abraham I)

    Miscellaneous:

    - Quirk ASMedia XHCI USB to avoid "PME# from D0" defect (Kai-Heng
    Feng)

    - Use ioremap(), not phys_to_virt(), for platform ROM to fix video
    ROM mapping with CONFIG_HIGHMEM (Mikel Rychliski)"

    * tag 'pci-v5.7-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (96 commits)
    misc: pci_endpoint_test: remove duplicate macro PCI_ENDPOINT_TEST_STATUS
    PCI: tegra: Print -EPROBE_DEFER error message at debug level
    misc: pci_endpoint_test: Use full pci-endpoint-test name in request_irq()
    misc: pci_endpoint_test: Fix to support > 10 pci-endpoint-test devices
    tools: PCI: Add 'e' to clear IRQ
    misc: pci_endpoint_test: Add ioctl to clear IRQ
    misc: pci_endpoint_test: Avoid using module parameter to determine irqtype
    PCI: keystone: Allow AM654 PCIe Endpoint to raise MSI-X interrupt
    PCI: dwc: Fix dw_pcie_ep_raise_msix_irq() to get correct MSI-X table address
    PCI: endpoint: Fix ->set_msix() to take BIR and offset as arguments
    misc: pci_endpoint_test: Add support to get DMA option from userspace
    tools: PCI: Add 'd' command line option to support DMA
    misc: pci_endpoint_test: Use streaming DMA APIs for buffer allocation
    PCI: endpoint: functions/pci-epf-test: Print throughput information
    PCI: endpoint: functions/pci-epf-test: Add DMA support to transfer data
    PCI: pciehp: Fix MSI interrupt race
    PCI: pciehp: Fix indefinite wait on sysfs requests
    PCI: endpoint: Fix clearing start entry in configfs
    PCI: tegra: Add support for PCIe endpoint mode in Tegra194
    PCI: sysfs: Revert "rescan" file renames
    ...

    Linus Torvalds
     
  • Pull char/misc driver updates from Greg KH:
    "Here is the big set of char/misc/other driver patches for 5.7-rc1.

    Lots of things in here, and it's later than expected due to some
    reverts to resolve some reported issues. All is now clean with no
    reported problems in linux-next.

    Included in here is:
    - interconnect updates
    - mei driver updates
    - uio updates
    - nvmem driver updates
    - soundwire updates
    - binderfs updates
    - coresight updates
    - habanalabs updates
    - mhi new bus type and core
    - extcon driver updates
    - some Kconfig cleanups
    - other small misc driver cleanups and updates

    As mentioned, all have been in linux-next for a while, and with the
    last two reverts, all is calm and good"

    * tag 'char-misc-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (174 commits)
    Revert "driver core: platform: Initialize dma_parms for platform devices"
    Revert "amba: Initialize dma_parms for amba devices"
    amba: Initialize dma_parms for amba devices
    driver core: platform: Initialize dma_parms for platform devices
    bus: mhi: core: Drop the references to mhi_dev in mhi_destroy_device()
    bus: mhi: core: Initialize bhie field in mhi_cntrl for RDDM capture
    bus: mhi: core: Add support for reading MHI info from device
    misc: rtsx: set correct pcr_ops for rts522A
    speakup: misc: Use dynamic minor numbers for speakup devices
    mei: me: add cedar fork device ids
    coresight: do not use the BIT() macro in the UAPI header
    Documentation: provide IBM contacts for embargoed hardware
    nvmem: core: remove nvmem_sysfs_get_groups()
    nvmem: core: use is_bin_visible for permissions
    nvmem: core: use device_register and device_unregister
    nvmem: core: add root_only member to nvmem device struct
    extcon: axp288: Add wakeup support
    extcon: Mark extcon_get_edev_name() function as exported symbol
    extcon: palmas: Hide error messages if gpio returns -EPROBE_DEFER
    dt-bindings: extcon: usbc-cros-ec: convert extcon-usbc-cros-ec.txt to yaml format
    ...

    Linus Torvalds
     

03 Apr, 2020

8 commits

  • Pull i2c updates from Wolfram Sang:
    "I2C has:

    - using defines for bus speeds to avoid mistakes in hardcoded values;
    lots of small driver updates because of that. Thanks, Andy!

    - API change: i2c_setup_smbus_alert() was renamed to
    i2c_new_smbus_alert_device() and returns ERRPTR now. All in-tree
    users have been converted

    - in the core, a rare race condition when deleting the cdev has been
    fixed. Thanks, Kevin!

    - lots of driver updates. Thanks, everyone!

    I also want to mention: The amount of review and testing tags given
    was quite high this time. Thank you to these people, too. I hope we
    can keep it like this!"

    * 'i2c/for-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (34 commits)
    i2c: rcar: clean up after refactoring i2c_timings
    macintosh: convert to i2c_new_scanned_device
    i2c: drivers: Use generic definitions for bus frequencies
    i2c: algo: Use generic definitions for bus frequencies
    i2c: stm32f7: switch to I²C generic property parsing
    i2c: rcar: Consolidate timings calls in rcar_i2c_clock_calculate()
    i2c: core: Allow override timing properties with 0
    i2c: core: Provide generic definitions for bus frequencies
    i2c: mxs: Use dma_request_chan() instead dma_request_slave_channel()
    i2c: imx: remove duplicate print after platform_get_irq()
    i2c: designware: Fix spelling typos in the comments
    i2c: designware: Discard i2c_dw_read_comp_param() function
    i2c: designware: Detect the FIFO size in the common code
    i2c: dev: Fix the race between the release of i2c_dev and cdev
    i2c: qcom-geni: Drop of_platform.h include
    i2c: qcom-geni: Grow a dev pointer to simplify code
    i2c: qcom-geni: Let firmware specify irq trigger flags
    i2c: stm32f7: do not backup read-only PECR register
    i2c: smbus: remove outdated references to irq level triggers
    i2c: convert SMBus alert setup function to return an ERRPTR
    ...

    Linus Torvalds
     
  • PCI_ENDPOINT_TEST_STATUS is already defined in pci_endpoint_test.c along
    with the status bits, drop the duplicate definition.

    Signed-off-by: Lad Prabhakar
    Signed-off-by: Lorenzo Pieralisi

    Lad Prabhakar
     
  • Use full pci-endpoint-test name in request_irq(), so that it's easy to
    profile the device that actually raised the interrupt.

    Signed-off-by: Kishon Vijay Abraham I
    Signed-off-by: Lorenzo Pieralisi

    Kishon Vijay Abraham I
     
  • Adding more than 10 pci-endpoint-test devices results in
    "kobject_add_internal failed for pci-endpoint-test.1 with -EEXIST, don't
    try to register things with the same name in the same directory". This
    is because commit 2c156ac71c6b ("misc: Add host side PCI driver for PCI
    test function device") limited the length of the "name" to 20 characters.
    Change the length of the name to 24 in order to support upto 10000
    pci-endpoint-test devices.

    Fixes: 2c156ac71c6b ("misc: Add host side PCI driver for PCI test function device")
    Signed-off-by: Kishon Vijay Abraham I
    Signed-off-by: Lorenzo Pieralisi
    Cc: stable@vger.kernel.org # v4.14+

    Kishon Vijay Abraham I
     
  • Add ioctl to clear IRQ which can be used to free the allocated
    IRQ vectors and free the requested IRQ.

    Signed-off-by: Kishon Vijay Abraham I
    Signed-off-by: Lorenzo Pieralisi

    Kishon Vijay Abraham I
     
  • commit e03327122e2c ("pci_endpoint_test: Add 2 ioctl commands")
    uses module parameter 'irqtype' in pci_endpoint_test_set_irq()
    to check if IRQ vectors of a particular type (MSI or MSI-X or
    LEGACY) is already allocated. However with multi-function devices,
    'irqtype' will not correctly reflect the IRQ type of the PCI device.

    Fix it here by adding 'irqtype' for each PCI device to show the
    IRQ type of a particular PCI device.

    Fixes: e03327122e2c ("pci_endpoint_test: Add 2 ioctl commands")
    Signed-off-by: Kishon Vijay Abraham I
    Signed-off-by: Lorenzo Pieralisi
    Cc: stable@vger.kernel.org # v4.19+

    Kishon Vijay Abraham I
     
  • 'pcitest' utility now uses '-d' option to allow the user to test DMA.
    Add support to parse option to use DMA from userspace application.

    Signed-off-by: Kishon Vijay Abraham I
    Signed-off-by: Lorenzo Pieralisi
    Tested-by: Alan Mikhak

    Kishon Vijay Abraham I
     
  • Use streaming DMA APIs (dma_map_single/dma_unmap_single) for buffers
    transmitted/received by the endpoint device instead of allocating
    a coherent memory. Also add default_data to set the alignment to
    4KB since dma_map_single might not return a 4KB aligned address.

    Signed-off-by: Kishon Vijay Abraham I
    Signed-off-by: Sekhar Nori
    Signed-off-by: Lorenzo Pieralisi
    Tested-by: Alan Mikhak

    Kishon Vijay Abraham I
     

02 Apr, 2020

2 commits

  • Pull crypto updates from Herbert Xu:
    "API:
    - Fix out-of-sync IVs in self-test for IPsec AEAD algorithms

    Algorithms:
    - Use formally verified implementation of x86/curve25519

    Drivers:
    - Enhance hwrng support in caam

    - Use crypto_engine for skcipher/aead/rsa/hash in caam

    - Add Xilinx AES driver

    - Add uacce driver

    - Register zip engine to uacce in hisilicon

    - Add support for OCTEON TX CPT engine in marvell"

    * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (162 commits)
    crypto: af_alg - bool type cosmetics
    crypto: arm[64]/poly1305 - add artifact to .gitignore files
    crypto: caam - limit single JD RNG output to maximum of 16 bytes
    crypto: caam - enable prediction resistance in HRWNG
    bus: fsl-mc: add api to retrieve mc version
    crypto: caam - invalidate entropy register during RNG initialization
    crypto: caam - check if RNG job failed
    crypto: caam - simplify RNG implementation
    crypto: caam - drop global context pointer and init_done
    crypto: caam - use struct hwrng's .init for initialization
    crypto: caam - allocate RNG instantiation descriptor with GFP_DMA
    crypto: ccree - remove duplicated include from cc_aead.c
    crypto: chelsio - remove set but not used variable 'adap'
    crypto: marvell - enable OcteonTX cpt options for build
    crypto: marvell - add the Virtual Function driver for CPT
    crypto: marvell - add support for OCTEON TX CPT engine
    crypto: marvell - create common Kconfig and Makefile for Marvell
    crypto: arm/neon - memzero_explicit aes-cbc key
    crypto: bcm - Use scnprintf() for avoiding potential buffer overflow
    crypto: atmel-i2c - Fix wakeup fail
    ...

    Linus Torvalds
     
  • Currently, CONFIG_VHOST depends on CONFIG_VIRTUALIZATION. But vhost is
    not necessarily for VM since it's a generic userspace and kernel
    communication protocol. Such dependency may prevent archs without
    virtualization support from using vhost.

    To solve this, a dedicated vhost menu is created under drivers so
    CONIFG_VHOST can be decoupled out of CONFIG_VIRTUALIZATION.

    While at it, also squash Kconfig.vringh into vhost Kconfig file. This
    avoids the trick of conditional inclusion from VOP or CAIF. Then it
    will be easier to introduce new vringh users and common dependency for
    both vringh and vhost.

    Signed-off-by: Jason Wang
    Link: https://lore.kernel.org/r/20200326140125.19794-2-jasowang@redhat.com
    Signed-off-by: Michael S. Tsirkin

    Jason Wang
     

01 Apr, 2020

1 commit

  • Pull arm64 updates from Catalin Marinas:
    "The bulk is in-kernel pointer authentication, activity monitors and
    lots of asm symbol annotations. I also queued the sys_mremap() patch
    commenting the asymmetry in the address untagging.

    Summary:

    - In-kernel Pointer Authentication support (previously only offered
    to user space).

    - ARM Activity Monitors (AMU) extension support allowing better CPU
    utilisation numbers for the scheduler (frequency invariance).

    - Memory hot-remove support for arm64.

    - Lots of asm annotations (SYM_*) in preparation for the in-kernel
    Branch Target Identification (BTI) support.

    - arm64 perf updates: ARMv8.5-PMU 64-bit counters, refactoring the
    PMU init callbacks, support for new DT compatibles.

    - IPv6 header checksum optimisation.

    - Fixes: SDEI (software delegated exception interface) double-lock on
    hibernate with shared events.

    - Minor clean-ups and refactoring: cpu_ops accessor,
    cpu_do_switch_mm() converted to C, cpufeature finalisation helper.

    - sys_mremap() comment explaining the asymmetric address untagging
    behaviour"

    * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (81 commits)
    mm/mremap: Add comment explaining the untagging behaviour of mremap()
    arm64: head: Convert install_el2_stub to SYM_INNER_LABEL
    arm64: Introduce get_cpu_ops() helper function
    arm64: Rename cpu_read_ops() to init_cpu_ops()
    arm64: Declare ACPI parking protocol CPU operation if needed
    arm64: move kimage_vaddr to .rodata
    arm64: use mov_q instead of literal ldr
    arm64: Kconfig: verify binutils support for ARM64_PTR_AUTH
    lkdtm: arm64: test kernel pointer authentication
    arm64: compile the kernel with ptrauth return address signing
    kconfig: Add support for 'as-option'
    arm64: suspend: restore the kernel ptrauth keys
    arm64: __show_regs: strip PAC from lr in printk
    arm64: unwind: strip PAC from kernel addresses
    arm64: mask PAC bits of __builtin_return_address
    arm64: initialize ptrauth keys for kernel booting task
    arm64: initialize and switch ptrauth kernel keys
    arm64: enable ptrauth earlier
    arm64: cpufeature: handle conflicts based on capability
    arm64: cpufeature: Move cpu capability helpers inside C file
    ...

    Linus Torvalds
     

26 Mar, 2020

3 commits


24 Mar, 2020

20 commits


23 Mar, 2020

1 commit


18 Mar, 2020

1 commit