1. 06 Jun, 2018 3 commits
    • Linus Torvalds's avatar
      Merge branch 'for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · af6c5d5e
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
      
       - make kworkers report the workqueue it is executing or has executed
         most recently in /proc/PID/comm (so they show up in ps/top)
      
       - CONFIG_SMP shuffle to move stuff which isn't necessary for UP builds
         inside CONFIG_SMP.
      
      * 'for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: move function definitions within CONFIG_SMP block
        workqueue: Make sure struct worker is accessible for wq_worker_comm()
        workqueue: Show the latest workqueue name in /proc/PID/{comm,stat,status}
        proc: Consolidate task->comm formatting into proc_task_name()
        workqueue: Set worker->desc to workqueue name by default
        workqueue: Make worker_attach/detach_pool() update worker->pool
        workqueue: Replace pool->attach_mutex with global wq_pool_attach_mutex
      af6c5d5e
    • Linus Torvalds's avatar
      Merge branch 'for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 9f25a8da
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
      
       - For cpustat, cgroup has a percpu hierarchical stat mechanism which
         propagates up the hierarchy lazily.
      
         This contains commits to factor out and generalize the mechanism so
         that it can be used for other cgroup stats too.
      
         The original intention was to update memcg stats to use it but memcg
         went for a different approach, so still the only user is cpustat. The
         factoring out and generalization still make sense and it's likely
         that this can be used for other purposes in the future.
      
       - cgroup uses kernfs_notify() (which uses fsnotify()) to inform user
         space of certain events. A rate limiting mechanism is added.
      
       - Other misc changes.
      
      * 'for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: css_set_lock should nest inside tasklist_lock
        rdmacg: Convert to use match_string() helper
        cgroup: Make cgroup_rstat_updated() ready for root cgroup usage
        cgroup: Add memory barriers to plug cgroup_rstat_updated() race window
        cgroup: Add cgroup_subsys->css_rstat_flush()
        cgroup: Replace cgroup_rstat_mutex with a spinlock
        cgroup: Factor out and expose cgroup_rstat_*() interface functions
        cgroup: Reorganize kernel/cgroup/rstat.c
        cgroup: Distinguish base resource stat implementation from rstat
        cgroup: Rename stat to rstat
        cgroup: Rename kernel/cgroup/stat.c to kernel/cgroup/rstat.c
        cgroup: Limit event generation frequency
        cgroup: Explicitly remove core interface files
      9f25a8da
    • Linus Torvalds's avatar
      Merge branch 'for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 0bbddb8c
      Linus Torvalds authored
      Pull libata updates from Tejun Heo:
      
       - libata has always been limiting the maximum queue depth to 31, with
         one entry set aside mostly for historical reasons. This didn't use to
         make much difference but Jens found out that modern hard drives can
         actually perform measurably better with the extra one queue depth.
         Jens updated libata core so that it can make use of full 32 queue
         depth
      
       - Damien updated command retry logic in error handling so that it
         doesn't unnecessarily retry when upper layer (SCSI) is gonna handle
         them
      
       - A couple misc changes
      
      * 'for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        sata_fsl: use the right type for tag bitshift
        ahci: enable full queue depth of 32
        libata: don't clamp queue depth to ATA_MAX_QUEUE - 1
        libata: add extra internal command
        sata_nv: set host can_queue count appropriately
        libata: remove assumption that ATA_MAX_QUEUE - 1 is the max
        libata: use ata_tag_internal() consistently
        libata: bump ->qc_active to a 64-bit type
        libata: convert core and drivers to ->hw_tag usage
        libata: introduce notion of separate hardware tags
        libata: Fix command retry decision
        libata: Honor RQF_QUIET flag
        libata: Make ata_dev_set_mode() less verbose
        libata: Fix ata_err_string()
        libata: Fix comment typo in ata_eh_analyze_tf()
        sata_nv: don't use block layer bounce buffer
        ata: hpt37x: Convert to use match_string() helper
      0bbddb8c
  2. 05 Jun, 2018 37 commits
    • Linus Torvalds's avatar
      Merge branch 'for-4.17-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 476d9ff6
      Linus Torvalds authored
      Pull libata fixes from Tejun Heo:
       "These two are fixes which missed v4.17.
      
        One is to remove an incorrect power management blacklist entry and the
        other to fix a cdb buffer overrun which has been there for a very long
        time"
      
      * 'for-4.17-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        libata: Drop SanDisk SD7UB3Q*G1001 NOLPM quirk
        libata: zpodd: small read overflow in eject_tray()
      476d9ff6
    • Linus Torvalds's avatar
      Merge tag 'tty-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · a22e48cf
      Linus Torvalds authored
      Pull tty/serial updates from Greg KH:
       "Here is the big tty/serial driver update for 4.18-rc1.
      
        There's nothing major here, just lots of serial driver updates. Full
        details are in the shortlog, nothing anything specific to call out
        here.
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'tty-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (55 commits)
        vt: Perform safe console erase only once
        serial: imx: disable UCR4_OREN on shutdown
        serial: imx: drop CTS/RTS handling from shutdown
        tty: fix typo in ASYNCB_FOURPORT comment
        serial: samsung: check DMA engine capabilities before using DMA mode
        tty: Fix data race in tty_insert_flip_string_fixed_flag
        tty: serial: msm_geni_serial: Fix TX infinite loop
        serial: 8250_dw: Fix runtime PM handling
        serial: 8250: omap: Fix idling of clocks for unused uarts
        tty: serial: drop ATH79 specific SoC symbols
        serial: 8250: Add missing rxtrig_bytes on Altera 16550 UART
        serial/aspeed-vuart: fix a couple mod_timer() calls
        serial: sh-sci: Use spin_{try}lock_irqsave instead of open coding version
        serial: 8250_of: Add IO space support
        tty/serial: atmel: use port->name as name in request_irq()
        serial: imx: dma_unmap_sg buffers on shutdown
        serial: imx: cleanup imx_uart_disable_dma()
        tty: serial: qcom_geni_serial: Add early console support
        tty: serial: qcom_geni_serial: Return IRQ_NONE for spurious interrupts
        tty: serial: qcom_geni_serial: Use iowrite32_rep to write to FIFO
        ...
      a22e48cf
    • Linus Torvalds's avatar
      Merge tag 'driver-core-4.18-rc1' of... · ec064d3c
      Linus Torvalds authored
      Merge tag 'driver-core-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core updates from Greg KH:
       "Here is the driver core patchset for 4.18-rc1.
      
        The large chunk of these are firmware core documentation and api
        updates. Nothing major there, just better descriptions for others to
        be able to understand the firmware code better. There's also a user
        for a new firmware api call.
      
        Other than that, there are some minor updates for debugfs, kernfs, and
        the driver core itself.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'driver-core-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (23 commits)
        driver core: hold dev's parent lock when needed
        driver-core: return EINVAL error instead of BUG_ON()
        driver core: add __printf verification to device_create_groups_vargs
        mm: memory_hotplug: use put_device() if device_register fail
        base: core: fix typo 'can by' to 'can be'
        debugfs: inode: debugfs_create_dir uses mode permission from parent
        debugfs: Re-use kstrtobool_from_user()
        Documentation: clarify firmware_class provenance and why we can't rename the module
        Documentation: remove stale firmware API reference
        Documentation: fix few typos and clarifications for the firmware loader
        ath10k: re-enable the firmware fallback mechanism for testmode
        ath10k: use firmware_request_nowarn() to load firmware
        firmware: add firmware_request_nowarn() - load firmware without warnings
        firmware_loader: make firmware_fallback_sysfs() print more useful
        firmware_loader: move kconfig FW_LOADER entries to its own file
        firmware_loader: replace ---help--- with help
        firmware_loader: enhance Kconfig documentation over FW_LOADER
        firmware_loader: document firmware_sysfs_fallback()
        firmware: rename fw_sysfs_fallback to firmware_fallback_sysfs()
        firmware: use () to terminate kernel-doc function names
        ...
      ec064d3c
    • Linus Torvalds's avatar
      Merge tag 'char-misc-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · abf7dba7
      Linus Torvalds authored
      Pull char/misc driver updates from Greg KH:
       "Here is the "big" char and misc driver patches for 4.18-rc1.
      
        It's not a lot of stuff here, but there are some highlights:
      
         - coreboot driver updates
      
         - soundwire driver updates
      
         - android binder updates
      
         - fpga big sync, mostly documentation
      
         - lots of minor driver updates
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'char-misc-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (81 commits)
        vmw_balloon: fixing double free when batching mode is off
        MAINTAINERS: Add driver-api/fpga path
        fpga: clarify that unregister functions also free
        documentation: fpga: move fpga-region.txt to driver-api
        documentation: fpga: add bridge document to driver-api
        documentation: fpga: move fpga-mgr.txt to driver-api
        Documentation: fpga: move fpga overview to driver-api
        fpga: region: kernel-doc fixes
        fpga: bridge: kernel-doc fixes
        fpga: mgr: kernel-doc fixes
        fpga: use SPDX
        fpga: region: change api, add fpga_region_create/free
        fpga: bridge: change api, don't use drvdata
        fpga: manager: change api, don't use drvdata
        fpga: region: don't use drvdata in common fpga code
        Drivers: hv: vmbus: Removed an unnecessary cast from void *
        ver_linux: Drop redundant calls to system() to test if file is readable
        ver_linux: Move stderr redirection from function parameter to function body
        misc: IBM Virtual Management Channel Driver (VMC)
        rpmsg: Correct support for MODULE_DEVICE_TABLE()
        ...
      abf7dba7
    • Linus Torvalds's avatar
      Merge tag 'usb-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 07c4dd34
      Linus Torvalds authored
      Pull USB and PHY updates from Greg KH:
       "Here is the big USB pull request for 4.18-rc1.
      
        Lots of stuff here, the highlights are:
      
         - phy driver updates and new additions
      
         - usual set of xhci driver updates
      
         - normal set of musb updates
      
         - gadget driver updates and new controllers
      
         - typec work, it's getting closer to getting fully out of the staging
           portion of the tree.
      
         - lots of minor cleanups and bugfixes.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'usb-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (263 commits)
        Revert "xhci: Reset Renesas uPD72020x USB controller for 32-bit DMA issue"
        xhci: Add quirk to zero 64bit registers on Renesas PCIe controllers
        xhci: Allow more than 32 quirks
        usb: xhci: force all memory allocations to node
        selftests: add test for USB over IP driver
        USB: typec: fsusb302: no need to check return value of debugfs_create_dir()
        USB: gadget: udc: s3c2410_udc: no need to check return value of debugfs_create functions
        USB: gadget: udc: renesas_usb3: no need to check return value of debugfs_create functions
        USB: gadget: udc: pxa27x_udc: no need to check return value of debugfs_create functions
        USB: gadget: udc: gr_udc: no need to check return value of debugfs_create functions
        USB: gadget: udc: bcm63xx_udc: no need to check return value of debugfs_create functions
        USB: udc: atmel_usba_udc: no need to check return value of debugfs_create functions
        USB: dwc3: no need to check return value of debugfs_create functions
        USB: dwc2: no need to check return value of debugfs_create functions
        USB: core: no need to check return value of debugfs_create functions
        USB: chipidea: no need to check return value of debugfs_create functions
        USB: ehci-hcd: no need to check return value of debugfs_create functions
        USB: fhci-hcd: no need to check return value of debugfs_create functions
        USB: fotg210-hcd: no need to check return value of debugfs_create functions
        USB: imx21-hcd: no need to check return value of debugfs_create functions
        ...
      07c4dd34
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · f60342fa
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "MMC core:
         - Decrease polling rate for erase/trim/discard
         - Allow non-sleeping GPIOs for card detect
         - Improve mmc block removal path
         - Enable support for mmc_sw_reset() for SDIO cards
         - Add mmc_sw_reset() to allow users to do a soft reset of the card
         - Allow power delay to be tunable via DT
         - Allow card detect debounce delay to be tunable via DT
         - Enable new quirk to limit clock rate for Marvell 8887 chip
         - Don't show eMMC RPMB and BOOT areas in /proc/partitions
         - Add capability to avoid 3.3V signaling for fragile HWs
      
        MMC host:
         - Improve/fixup support for handle highmem pages
         - Remove depends on HAS_DMA in case of platform dependency
         - mvsdio: Enable support for erase/trim/discard
         - rtsx_usb: Enable support for erase/trim/discard
         - renesas_sdhi: Fix WP logic regressions
         - renesas_sdhi: Add r8a77965 support
         - renesas_sdhi: Add R8A77980 to whitelist
         - meson: Add optional support for device reset
         - meson: Add support for the Meson-AXG platform
         - dw_mmc: Add new driver for BlueField DW variant
         - mediatek: Add support for 64G DRAM DMA
         - sunxi: Deploy runtime PM support
         - jz4740: Add support for JZ4780
         - jz4740: Enable support for DT based platforms
         - sdhci: Various improvement to timeout handling
         - sdhci: Disable support for HS200/HS400/UHS when no 1.8V support
         - sdhci-omap: Add support for controller in k2g SoC
         - sdhci-omap: Add workarounds for a couple of Erratas
         - sdhci-omap: Enable support for generic sdhci DT properties
         - sdhci-cadence: Re-send tune request to deal with errata
         - sdhci-pci: Fix 3.3V voltage switch for some BYT-based Intel controllers
         - sdhci-pci: Avoid 3.3V signaling on some NI 904x
         - sdhci-esdhc-imx: Use watermark levels for PIO access
         - sdhci-msm: Improve card detection handling
         - sdhci-msm: Add support voltage pad switching"
      
      * tag 'mmc-v4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (104 commits)
        mmc: renesas_sdhi: really fix WP logic regressions
        mmc: mvsdio: Enable MMC_CAP_ERASE
        mmc: mvsdio: Respect card busy time out from mmc core
        mmc: sdhci-msm: Remove NO_CARD_NO_RESET quirk
        mmc: sunxi: Use ifdef rather than __maybe_unused
        mmc: mxmmc: Use ifdef rather than __maybe_unused
        mmc: mxmmc: include linux/highmem.h
        mmc: sunxi: mark PM functions as __maybe_unused
        mmc: Throttle calls to MMC_SEND_STATUS during mmc_do_erase()
        mmc: au1xmmc: handle highmem pages
        mmc: Allow non-sleeping GPIO cd
        mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails
        mmc: sd: Define name for default speed dtr
        mmc: core: Move calls to ->prepare_hs400_tuning() closer to mmc code
        mmc: sdhci-xenon: use match_string() helper
        mmc: wbsd: handle highmem pages
        mmc: ushc: handle highmem pages
        mmc: mxcmmc: handle highmem pages
        mmc: atmel-mci: use sg_copy_{from,to}_buffer
        mmc: android-goldfish: use sg_copy_{from,to}_buffer
        ...
      f60342fa
    • Linus Torvalds's avatar
      Merge tag 'leds_for_4.18-rc1' of... · 5231804c
      Linus Torvalds authored
      Merge tag 'leds_for_4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds
      
      Pull LED updates from Jacek Anaszewski:
       "This was quite a fruitful cycle, taking into account usual traffic on
        linux-leds list, as we managed to merge three new LED class drivers.
      
        New LED class drivers with related DT bindings:
         - add LED driver for CR0014114 board
         - add Spreadtrum SC27xx breathing light controller driver
         - introduce the lm3601x LED driver
      
        LED class fix:
         - ensure workqueue is initialized before setting brightness
      
        Improvements and fixes to existing LED class drivers:
         - fix return value check in sc27xx_led_probe()
         - use sysfs_match_string() helper in wm831x_status_src_store()"
      
      * tag 'leds_for_4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
        leds: class: ensure workqueue is initialized before setting brightness
        leds: lm3601x: Introduce the lm3601x LED driver
        dt: bindings: lm3601x: Introduce the lm3601x driver
        leds: sc27xx: Fix return value check in sc27xx_led_probe()
        leds: Add Spreadtrum SC27xx breathing light controller driver
        dt-bindings: leds: Add SC27xx breathing light controller documentation
        leds: wm831x-status: Use sysfs_match_string() helper
        leds: add LED driver for CR0014114 board
        dt-bindings: Add vendor prefix and docs for CR0014114
      5231804c
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 2158091d
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - a new driver to ChipOne icn8505 based touchscreens
      
       - on certain systems with Elan touch controllers they will be switched
         away form PS/2 emulation and over to native SMbus mode
      
       - assorted driver fixups and improvements
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (24 commits)
        Input: elan_i2c - add ELAN0612 (Lenovo v330 14IKB) ACPI ID
        Input: goodix - add new ACPI id for GPD Win 2 touch screen
        Input: xpad - add GPD Win 2 Controller USB IDs
        Input: ti_am335x_tsc - prevent system suspend when TSC is in use
        Input: ti_am335x_tsc - ack pending IRQs at probe and before suspend
        Input: cros_ec_keyb - mark cros_ec_keyb driver as wake enabled device.
        Input: mk712 - update documentation web link
        Input: atmel_mxt_ts - fix reset-gpio for level based irqs
        Input: atmel_mxt_ts - require device properties present when probing
        Input: psmouse-smbus - allow to control psmouse_deactivate
        Input: elantech - detect new ICs and setup Host Notify for them
        Input: elantech - add support for SMBus devices
        Input: elantech - query the resolution in query_info
        Input: elantech - split device info into a separate structure
        Input: elan_i2c - add trackstick report
        Input: usbtouchscreen - add sysfs attribute for 3M MTouch firmware rev
        Input: ati_remote2 - fix typo 'can by' to 'can be'
        Input: replace hard coded string with __func__ in pr_err()
        Input: add support for ChipOne icn8505 based touchscreens
        Input: gamecon - avoid using __set_bit() for capabilities
        ...
      2158091d
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 3e1a29b3
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       "API:
      
         - Decryption test vectors are now automatically generated from
           encryption test vectors.
      
        Algorithms:
      
         - Fix unaligned access issues in crc32/crc32c.
      
         - Add zstd compression algorithm.
      
         - Add AEGIS.
      
         - Add MORUS.
      
        Drivers:
      
         - Add accelerated AEGIS/MORUS on x86.
      
         - Add accelerated SM4 on arm64.
      
         - Removed x86 assembly salsa implementation as it is slower than C.
      
         - Add authenc(hmac(sha*), cbc(aes)) support in inside-secure.
      
         - Add ctr(aes) support in crypto4xx.
      
         - Add hardware key support in ccree.
      
         - Add support for new Centaur CPU in via-rng"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (112 commits)
        crypto: chtls - free beyond end rspq_skb_cache
        crypto: chtls - kbuild warnings
        crypto: chtls - dereference null variable
        crypto: chtls - wait for memory sendmsg, sendpage
        crypto: chtls - key len correction
        crypto: salsa20 - Revert "crypto: salsa20 - export generic helpers"
        crypto: x86/salsa20 - remove x86 salsa20 implementations
        crypto: ccp - Add GET_ID SEV command
        crypto: ccp - Add DOWNLOAD_FIRMWARE SEV command
        crypto: qat - Add MODULE_FIRMWARE for all qat drivers
        crypto: ccree - silence debug prints
        crypto: ccree - better clock handling
        crypto: ccree - correct host regs offset
        crypto: chelsio - Remove separate buffer used for DMA map B0 block in CCM
        crypt: chelsio - Send IV as Immediate for cipher algo
        crypto: chelsio - Return -ENOSPC for transient busy indication.
        crypto: caam/qi - fix warning in init_cgr()
        crypto: caam - fix rfc4543 descriptors
        crypto: caam - fix MC firmware detection
        crypto: clarify licensing of OpenSSL asm code
        ...
      3e1a29b3
    • Linus Torvalds's avatar
      Merge tag 'fscrypt_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/fscrypt · fd59ccc5
      Linus Torvalds authored
      Pull fscrypt updates from Ted Ts'o:
       "Add bunch of cleanups, and add support for the Speck128/256
        algorithms.
      
        Yes, Speck is contrversial, but the intention is to use them only for
        the lowest end Android devices, where the alternative *really* is no
        encryption at all for data stored at rest"
      
      * tag 'fscrypt_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/fscrypt:
        fscrypt: log the crypto algorithm implementations
        fscrypt: add Speck128/256 support
        fscrypt: only derive the needed portion of the key
        fscrypt: separate key lookup from key derivation
        fscrypt: use a common logging function
        fscrypt: remove internal key size constants
        fscrypt: remove unnecessary check for non-logon key type
        fscrypt: make fscrypt_operations.max_namelen an integer
        fscrypt: drop empty name check from fname_decrypt()
        fscrypt: drop max_namelen check from fname_decrypt()
        fscrypt: don't special-case EOPNOTSUPP from fscrypt_get_encryption_info()
        fscrypt: don't clear flags on crypto transform
        fscrypt: remove stale comment from fscrypt_d_revalidate()
        fscrypt: remove error messages for skcipher_request_alloc() failure
        fscrypt: remove unnecessary NULL check when allocating skcipher
        fscrypt: clean up after fscrypt_prepare_lookup() conversions
        fs, fscrypt: only define ->s_cop when FS_ENCRYPTION is enabled
        fscrypt: use unbound workqueue for decryption
      fd59ccc5
    • Linus Torvalds's avatar
      Merge tag 'xfs-4.18-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 6567af78
      Linus Torvalds authored
      Pull xfs updates from Darrick Wong:
       "New features this cycle include the ability to relabel mounted
        filesystems, support for fallocated swapfiles, and using FUA for pure
        data O_DSYNC directio writes. With this cycle we begin to integrate
        online filesystem repair and refactor the growfs code in preparation
        for eventual subvolume support, though the road ahead for both
        features is quite long.
      
        There are also numerous refactorings of the iomap code to remove
        unnecessary log overhead, to disentangle some of the quota code, and
        to prepare for buffer head removal in a future upstream kernel.
      
        Metadata validation continues to improve, both in the hot path
        veifiers and the online filesystem check code. I anticipate sending a
        second pull request in a few days with more metadata validation
        improvements.
      
        This series has been run through a full xfstests run over the weekend
        and through a quick xfstests run against this morning's master, with
        no major failures reported.
      
        Summary:
      
         - Strengthen inode number and structure validation when allocating
           inodes.
      
         - Reduce pointless buffer allocations during cache miss
      
         - Use FUA for pure data O_DSYNC directio writes
      
         - Various iomap refactorings
      
         - Strengthen quota metadata verification to avoid unfixable broken
           quota
      
         - Make AGFL block freeing a deferred operation to avoid blowing out
           transaction reservations when running complex operations
      
         - Get rid of the log item descriptors to reduce log overhead
      
         - Fix various reflink bugs where inodes were double-joined to
           transactions
      
         - Don't issue discards when trimming unwritten extents
      
         - Refactor incore dquot initialization and retrieval interfaces
      
         - Fix some locking problmes in the quota scrub code
      
         - Strengthen btree structure checks in scrub code
      
         - Rewrite swapfile activation to use iomap and support unwritten
           extents
      
         - Make scrub exit to userspace sooner when corruptions or
           cross-referencing problems are found
      
         - Make scrub invoke the data fork scrubber directly on metadata
           inodes
      
         - Don't do background reclamation of post-eof and cow blocks when the
           fs is suspended
      
         - Fix secondary superblock buffer lifespan hinting
      
         - Refactor growfs to use table-dispatched functions instead of long
           stringy functions
      
         - Move growfs code to libxfs
      
         - Implement online fs label getting and setting
      
         - Introduce online filesystem repair (in a very limited capacity)
      
         - Fix unit conversion problems in the realtime freemap iteration
           functions
      
         - Various refactorings and cleanups in preparation to remove buffer
           heads in a future release
      
         - Reimplement the old bmap call with iomap
      
         - Remove direct buffer head accesses from seek hole/data
      
         - Various bug fixes"
      
      * tag 'xfs-4.18-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (121 commits)
        fs: use ->is_partially_uptodate in page_cache_seek_hole_data
        fs: remove the buffer_unwritten check in page_seek_hole_data
        fs: move page_cache_seek_hole_data to iomap.c
        xfs: use iomap_bmap
        iomap: add an iomap-based bmap implementation
        iomap: add a iomap_sector helper
        iomap: use __bio_add_page in iomap_dio_zero
        iomap: move IOMAP_F_BOUNDARY to gfs2
        iomap: fix the comment describing IOMAP_NOWAIT
        iomap: inline data should be an iomap type, not a flag
        mm: split ->readpages calls to avoid non-contiguous pages lists
        mm: return an unsigned int from __do_page_cache_readahead
        mm: give the 'ret' variable a better name __do_page_cache_readahead
        block: add a lower-level bio_add_page interface
        xfs: fix error handling in xfs_refcount_insert()
        xfs: fix xfs_rtalloc_rec units
        xfs: strengthen rtalloc query range checks
        xfs: xfs_rtbuf_get should check the bmapi_read results
        xfs: xfs_rtword_t should be unsigned, not signed
        dax: change bdev_dax_supported() to support boolean returns
        ...
      6567af78
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 1434763c
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "A lot of cleanups and bug fixes, especially dealing with corrupted
        file systems"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (23 commits)
        ext4: fix fencepost error in check for inode count overflow during resize
        ext4: correctly handle a zero-length xattr with a non-zero e_value_offs
        ext4: bubble errors from ext4_find_inline_data_nolock() up to ext4_iget()
        ext4: do not allow external inodes for inline data
        ext4: report delalloc reserve as non-free in statfs for project quota
        ext4: remove NULL check before calling kmem_cache_destroy()
        jbd2: remove NULL check before calling kmem_cache_destroy()
        jbd2: remove bunch of empty lines with jbd2 debug
        ext4: handle errors on ext4_commit_super
        ext4: do not update s_last_mounted of a frozen fs
        ext4: factor out helper ext4_sample_last_mounted()
        vfs: add the sb_start_intwrite_trylock() helper
        ext4: update mtime in ext4_punch_hole even if no blocks are released
        ext4: add verifier check for symlink with append/immutable flags
        fs: ext4: add new return type vm_fault_t
        ext4: fix hole length detection in ext4_ind_map_blocks()
        ext4: mark block bitmap corrupted when found
        ext4: mark inode bitmap corrupted when found
        ext4: add new ext4_mark_group_bitmap_corrupted() helper
        ext4: fix wrong return value in ext4_read_inode_bitmap()
        ...
      1434763c
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 5037be16
      Linus Torvalds authored
      Pull s390 updates from Martin Schwidefsky:
      
       - A rework for the s390 arch random code, the TRNG instruction is
         rather slow and should not be used on the interrupt path
      
       - A fix for a memory leak in the zcrypt driver
      
       - Changes to the early boot code to add a compile time check for code
         that may not use the .bss section, with the goal to avoid initrd
         corruptions
      
       - Add an interface to get the physical network ID (pnetid), this is
         useful to group network devices that are attached to the same network
      
       - Some cleanup for the linker script
      
       - Some code improvement for the dasd driver
      
       - Two fixes for the perf sampling support
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/zcrypt: Fix CCA and EP11 CPRB processing failure memory leak.
        s390/archrandom: Rework arch random implementation.
        s390/net: add pnetid support
        s390/dasd: simplify locking in dasd_times_out
        s390/cio: add test for ccwgroup device
        s390/cio: add helper to query utility strings per given ccw device
        s390: remove no-op macro VMLINUX_SYMBOL()
        s390: remove closung punctuation from spectre messages
        s390: introduce compile time check for empty .bss section
        s390/early: move functions which may not access bss section to extra file
        s390/early: get rid of #ifdef CONFIG_BLK_DEV_INITRD
        s390/early: get rid of memmove_early
        s390/cpum_sf: Add data entry sizes to sampling trailer entry
        perf: fix invalid bit in diagnostic entry
      5037be16
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · eab733af
      Linus Torvalds authored
      Pull m68knommu updates from Greg Ungerer:
       "These changes all relate to converting the IO access functions for the
        ColdFire (and all other non-MMU m68k) platforms to use asm-generic IO
        instead.
      
        This makes the IO support the same on all ColdFire (regardless of MMU
        enabled or not) and means we can now support PCI in non-MMU mode.
      
        As a bonus these changes remove more code than they add"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68k: fix ColdFire PCI config reads and writes
        m68k: introduce iomem() macro for __iomem conversions
        m68k: allow ColdFire PCI bus on MMU and non-MMU configuration
        m68k: fix ioremapping for internal ColdFire peripherals
        m68k: fix read/write multi-byte IO for PCI on ColdFire
        m68k: don't redefine access functions if we have PCI
        m68k: remove old ColdFire IO access support code
        m68k: use io_no.h for MMU and non-MMU enabled ColdFire
        m68k: setup PCI support code in io_no.h
        m68k: group io mapping definitions and functions
        m68k: rework raw access macros for the non-MMU case
        m68k: use asm-generic/io.h for non-MMU io access functions
        m68k: put definition guards around virt_to_phys and phys_to_virt
        m68k: move *_relaxed macros into io_no.h and io_mm.h
      eab733af
    • Linus Torvalds's avatar
      Merge tag 'rslib-v4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux · 25d80be8
      Linus Torvalds authored
      Pull reed-salomon library updates from Kees Cook:
       "Refactors rslib and callers to provide a per-instance allocation area
        instead of performing VLAs on the stack"
      
      * tag 'rslib-v4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
        rslib: Allocate decoder buffers to avoid VLAs
        mtd: rawnand: diskonchip: Allocate rs control per instance
        rslib: Split rs control struct
        rslib: Simplify error path
        rslib: Remove GPL boilerplate
        rslib: Add SPDX identifiers
        rslib: Cleanup top level comments
        rslib: Cleanup whitespace damage
        dm/verity_fec: Use GFP aware reed solomon init
        rslib: Add GFP aware init function
      25d80be8
    • Linus Torvalds's avatar
      Merge tag 'dp-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · a74e0c4c
      Linus Torvalds authored
      Pull device properties framework update from Rafael Wysocki:
       "Modify the device properties framework to remove union aliasing from
        it (Andy Shevchenko)"
      
      * tag 'dp-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        device property: Get rid of union aliasing
      a74e0c4c
    • Linus Torvalds's avatar
      Merge tag 'acpi-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · f4fe74cc
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These update the ACPICA code in the kernel to the 20180508 upstream
        revision and make it support the RT patch, add CPPC v3 support to the
        ACPI CPPC library, add a WDAT-based watchdog quirk to prevent clashes
        with the RTC, add quirks to the ACPI AC and battery drivers, and
        update the ACPI SoC drivers.
      
        Specifics:
      
         - Update the ACPICA code in the kernel to the 20180508 upstream
           revision including:
             * iASL -tc option enhancement (Bob Moore).
             * Debugger improvements (Bob Moore).
             * Support for tables larger than 1 MB in acpidump/acpixtract (Bob
               Moore).
             * Minor fixes and cleanups (Colin Ian King, Toomas Soome).
      
         - Make the ACPICA code in the kernel support the RT patch (Sebastian
           Andrzej Siewior, Steven Rostedt).
      
         - Add a kmemleak annotation to the ACPICA code (Larry Finger).
      
         - Add CPPC v3 support to the ACPI CPPC library and fix two issues
           related to CPPC (Prashanth Prakash, Al Stone).
      
         - Add an ACPI WDAT-based watchdog quirk to prefer iTCO_wdt on systems
           where WDAT clashes with the RTC SRAM (Mika Westerberg).
      
         - Add some quirks to the ACPI AC and battery drivers (Carlo Caione,
           Hans de Goede).
      
         - Update the ACPI SoC drivers for Intel (LPSS) and AMD (APD)
           platforms (Akshu Agrawal, Hans de Goede).
      
         - Fix up some assorted minor issues (Al Stone, Laszlo Toth, Mathieu
           Malaterre)"
      
      * tag 'acpi-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (32 commits)
        ACPICA: Mark acpi_ut_create_internal_object_dbg() memory allocations as non-leaks
        ACPI / watchdog: Prefer iTCO_wdt always when WDAT table uses RTC SRAM
        mailbox: PCC: erroneous error message when parsing ACPI PCCT
        ACPICA: Update version to 20180508
        ACPICA: acpidump/acpixtract: Support for tables larger than 1MB
        ACPI: APD: Add AMD misc clock handler support
        clk: x86: Add ST oscout platform clock
        ACPICA: Update version to 20180427
        ACPICA: Debugger: Removed direct support for EC address space in "Test Objects"
        ACPICA: Debugger: Add Package support for "test objects" command
        ACPICA: Improve error messages for the namespace root node
        ACPICA: Fix potential infinite loop in acpi_rs_dump_byte_list
        ACPICA: vsnprintf: this statement may fall through
        ACPICA: Tables: Fix spelling mistake in comment
        ACPICA: iASL: Enhance the -tc option (create AML hex file in C)
        ACPI: Add missing prototype_for arch_post_acpi_subsys_init()
        ACPI / tables: improve comments regarding acpi_parse_entries_array()
        ACPICA: Convert acpi_gbl_hardware lock back to an acpi_raw_spinlock
        ACPICA: provide abstraction for raw_spinlock_t
        ACPI / CPPC: Fix invalid PCC channel status errors
        ...
      f4fe74cc
    • Linus Torvalds's avatar
      Merge tag 'pm-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 3c89adb0
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These include a significant update of the generic power domains
        (genpd) and Operating Performance Points (OPP) frameworks, mostly
        related to the introduction of power domain performance levels,
        cpufreq updates (new driver for Qualcomm Kryo processors, updates of
        the existing drivers, some core fixes, schedutil governor
        improvements), PCI power management fixes, ACPI workaround for
        EC-based wakeup events handling on resume from suspend-to-idle, and
        major updates of the turbostat and pm-graph utilities.
      
        Specifics:
      
         - Introduce power domain performance levels into the the generic
           power domains (genpd) and Operating Performance Points (OPP)
           frameworks (Viresh Kumar, Rajendra Nayak, Dan Carpenter).
      
         - Fix two issues in the runtime PM framework related to the
           initialization and removal of devices using device links (Ulf
           Hansson).
      
         - Clean up the initialization of drivers for devices in PM domains
           (Ulf Hansson, Geert Uytterhoeven).
      
         - Fix a cpufreq core issue related to the policy sysfs interface
           causing CPU online to fail for CPUs sharing one cpufreq policy in
           some situations (Tao Wang).
      
         - Make it possible to use platform-specific suspend/resume hooks in
           the cpufreq-dt driver and make the Armada 37xx DVFS use that
           feature (Viresh Kumar, Miquel Raynal).
      
         - Optimize policy transition notifications in cpufreq (Viresh Kumar).
      
         - Improve the iowait boost mechanism in the schedutil cpufreq
           governor (Patrick Bellasi).
      
         - Improve the handling of deferred frequency updates in the schedutil
           cpufreq governor (Joel Fernandes, Dietmar Eggemann, Rafael Wysocki,
           Viresh Kumar).
      
         - Add a new cpufreq driver for Qualcomm Kryo (Ilia Lin).
      
         - Fix and clean up some cpufreq drivers (Colin Ian King, Dmitry
           Osipenko, Doug Smythies, Luc Van Oostenryck, Simon Horman, Viresh
           Kumar).
      
         - Fix the handling of PCI devices with the DPM_SMART_SUSPEND flag set
           and update stale comments in the PCI core PM code (Rafael Wysocki).
      
         - Work around an issue related to the handling of EC-based wakeup
           events in the ACPI PM core during resume from suspend-to-idle if
           the EC has been put into the low-power mode (Rafael Wysocki).
      
         - Improve the handling of wakeup source objects in the PM core (Doug
           Berger, Mahendran Ganesh, Rafael Wysocki).
      
         - Update the driver core to prevent deferred probe from breaking
           suspend/resume ordering (Feng Kan).
      
         - Clean up the PM core somewhat (Bjorn Helgaas, Ulf Hansson, Rafael
           Wysocki).
      
         - Make the core suspend/resume code and cpufreq support the RT patch
           (Sebastian Andrzej Siewior, Thomas Gleixner).
      
         - Consolidate the PM QoS handling in cpuidle governors (Rafael
           Wysocki).
      
         - Fix a possible crash in the hibernation core (Tetsuo Handa).
      
         - Update the rockchip-io Adaptive Voltage Scaling (AVS) driver (David
           Wu).
      
         - Update the turbostat utility (fixes, cleanups, new CPU IDs, new
           command line options, built-in "Low Power Idle" counters support,
           new POLL and POLL% columns) and add an entry for it to MAINTAINERS
           (Len Brown, Artem Bityutskiy, Chen Yu, Laura Abbott, Matt Turner,
           Prarit Bhargava, Srinivas Pandruvada).
      
         - Update the pm-graph to version 5.1 (Todd Brandt).
      
         - Update the intel_pstate_tracer utility (Doug Smythies)"
      
      * tag 'pm-4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (128 commits)
        tools/power turbostat: update version number
        tools/power turbostat: Add Node in output
        tools/power turbostat: add node information into turbostat calculations
        tools/power turbostat: remove num_ from cpu_topology struct
        tools/power turbostat: rename num_cores_per_pkg to num_cores_per_node
        tools/power turbostat: track thread ID in cpu_topology
        tools/power turbostat: Calculate additional node information for a package
        tools/power turbostat: Fix node and siblings lookup data
        tools/power turbostat: set max_num_cpus equal to the cpumask length
        tools/power turbostat: if --num_iterations, print for specific number of iterations
        tools/power turbostat: Add Cannon Lake support
        tools/power turbostat: delete duplicate #defines
        x86: msr-index.h: Correct SNB_C1/C3_AUTO_UNDEMOTE defines
        tools/power turbostat: Correct SNB_C1/C3_AUTO_UNDEMOTE defines
        tools/power turbostat: add POLL and POLL% column
        tools/power turbostat: Fix --hide Pk%pc10
        tools/power turbostat: Build-in "Low Power Idle" counters support
        tools/power turbostat: Don't make man pages executable
        tools/power turbostat: remove blank lines
        tools/power turbostat: a small C-states dump readability immprovement
        ...
      3c89adb0
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20180605' of git://git.kernel.dk/linux-block · 11e7c218
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "This just contains the dm kzalloc fix that was discussed, and a fix
        that I queued up yesterday for a case where blk-mq doesn't honor the
        stop bit appropriately"
      
      * tag 'for-linus-20180605' of git://git.kernel.dk/linux-block:
        dm: Use kzalloc for all structs with embedded biosets/mempools
        blk-mq: return when hctx is stopped in blk_mq_run_work_fn
      11e7c218
    • Linus Torvalds's avatar
      Merge branch 'faddr2line' (patches from Josh) · 9b68ac22
      Linus Torvalds authored
      Merge faddr2line updates from Josh Poimboeuf:
      
       - revert faddr2line's default output to its original non-code-listing
         output, and make the code listing an optional feature
      
       - give faddr2line a real maintainer, so get_maintainer.pl will actually
         CC me on future patches
      
      * emailed patches from Josh Poimboeuf <jpoimboe@redhat.com>:
        MAINTAINERS: add Josh Poimboeuf as faddr2line maintainer
        scripts/faddr2line: make the new code listing format optional
      9b68ac22
    • Josh Poimboeuf's avatar
      MAINTAINERS: add Josh Poimboeuf as faddr2line maintainer · 2562c011
      Josh Poimboeuf authored
      ... so I finally get credit for my greatest accomplishment.
      
      And, less importantly, so get_maintainer.pl will actually CC me on
      future patches.
      Signed-off-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2562c011
    • Peter Zijlstra (Intel)'s avatar
      scripts/faddr2line: make the new code listing format optional · 689135f0
      Peter Zijlstra (Intel) authored
      Commit 6870c016 ("scripts/faddr2line: show the code context")
      radically altered the output format of the faddr2line tool.  And while
      the new list output format might have merit it broke my vim usage and
      was hard to read.
      
      Make the new format optional; using a '--list' argument and attempt to
      make the output slightly easier to read by adding a little whitespace to
      separate the different files and explicitly mark the line in question.
      
      Cc: Changbin Du <changbin.du@intel.com>
      Fixes: 6870c016 ("scripts/faddr2line: show the code context")
      Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
      Signed-off-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      689135f0
    • Kent Overstreet's avatar
      dm: Use kzalloc for all structs with embedded biosets/mempools · d3775354
      Kent Overstreet authored
      mempool_init()/bioset_init() require that the mempools/biosets be zeroed
      first; they probably should not _require_ this, but not allocating those
      structs with kzalloc is a fairly nonsensical thing to do (calling
      mempool_exit()/bioset_exit() on an uninitialized mempool/bioset is legal
      and safe, but only works if said memory was zeroed.)
      Acked-by: default avatarMike Snitzer <snitzer@redhat.com>
      Signed-off-by: default avatarKent Overstreet <kent.overstreet@gmail.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      d3775354
    • Linus Torvalds's avatar
      Merge branch 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 716a685f
      Linus Torvalds authored
      Pull x86 hyperv updates from Thomas Gleixner:
       "A set of commits to enable APIC enlightenment when running as a guest
        on Microsoft HyperV.
      
        This accelerates the APIC access with paravirtualization techniques,
        which are called enlightenments on Hyper-V"
      
      * 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/Hyper-V/hv_apic: Build the Hyper-V APIC conditionally
        x86/Hyper-V/hv_apic: Include asm/apic.h
        X86/Hyper-V: Consolidate the allocation of the hypercall input page
        X86/Hyper-V: Consolidate code for converting cpumask to vpset
        X86/Hyper-V: Enhanced IPI enlightenment
        X86/Hyper-V: Enable IPI enlightenments
        X86/Hyper-V: Enlighten APIC access
      716a685f
    • Linus Torvalds's avatar
      Merge branch 'x86-cache-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ab20fd00
      Linus Torvalds authored
      Pull x86 cache resource controller updates from Thomas Gleixner:
       "An update for the Intel Resource Director Technolgy (RDT) which adds a
        feedback driven software controller to runtime adjust the bandwidth
        allocation MSRs.
      
        This makes the allocations more accurate and allows to use bandwidth
        values in understandable units (MB/s) instead of using percentage
        based allocations as the original, still available, interface.
      
        The software controller can be enabled with a new mount option for the
        resctrl filesystem"
      
      * 'x86-cache-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/intel_rdt/mba_sc: Feedback loop to dynamically update mem bandwidth
        x86/intel_rdt/mba_sc: Prepare for feedback loop
        x86/intel_rdt/mba_sc: Add schemata support
        x86/intel_rdt/mba_sc: Add initialization support
        x86/intel_rdt/mba_sc: Enable/disable MBA software controller
        x86/intel_rdt/mba_sc: Documentation for MBA software controller(mba_sc)
      ab20fd00
    • Linus Torvalds's avatar
      Merge branch 'timers-2038-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ba252f16
      Linus Torvalds authored
      Pull time/Y2038 updates from Thomas Gleixner:
      
       - Consolidate SySV IPC UAPI headers
      
       - Convert SySV IPC to the new COMPAT_32BIT_TIME mechanism
      
       - Cleanup the core interfaces and standardize on the ktime_get_* naming
         convention.
      
       - Convert the X86 platform ops to timespec64
      
       - Remove the ugly temporary timespec64 hack
      
      * 'timers-2038-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (22 commits)
        x86: Convert x86_platform_ops to timespec64
        timekeeping: Add more coarse clocktai/boottime interfaces
        timekeeping: Add ktime_get_coarse_with_offset
        timekeeping: Standardize on ktime_get_*() naming
        timekeeping: Clean up ktime_get_real_ts64
        timekeeping: Remove timespec64 hack
        y2038: ipc: Redirect ipc(SEMTIMEDOP, ...) to compat_ksys_semtimedop
        y2038: ipc: Enable COMPAT_32BIT_TIME
        y2038: ipc: Use __kernel_timespec
        y2038: ipc: Report long times to user space
        y2038: ipc: Use ktime_get_real_seconds consistently
        y2038: xtensa: Extend sysvipc data structures
        y2038: powerpc: Extend sysvipc data structures
        y2038: sparc: Extend sysvipc data structures
        y2038: parisc: Extend sysvipc data structures
        y2038: mips: Extend sysvipc data structures
        y2038: arm64: Extend sysvipc compat data structures
        y2038: s390: Remove unneeded ipc uapi header files
        y2038: ia64: Remove unneeded ipc uapi header files
        y2038: alpha: Remove unneeded ipc uapi header files
        ...
      ba252f16
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0bbcce5d
      Linus Torvalds authored
      Pull timers and timekeeping updates from Thomas Gleixner:
      
       - Core infrastucture work for Y2038 to address the COMPAT interfaces:
      
           + Add a new Y2038 safe __kernel_timespec and use it in the core
             code
      
           + Introduce config switches which allow to control the various
             compat mechanisms
      
           + Use the new config switch in the posix timer code to control the
             32bit compat syscall implementation.
      
       - Prevent bogus selection of CPU local clocksources which causes an
         endless reselection loop
      
       - Remove the extra kthread in the clocksource code which has no value
         and just adds another level of indirection
      
       - The usual bunch of trivial updates, cleanups and fixlets all over the
         place
      
       - More SPDX conversions
      
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)
        clocksource/drivers/mxs_timer: Switch to SPDX identifier
        clocksource/drivers/timer-imx-tpm: Switch to SPDX identifier
        clocksource/drivers/timer-imx-gpt: Switch to SPDX identifier
        clocksource/drivers/timer-imx-gpt: Remove outdated file path
        clocksource/drivers/arc_timer: Add comments about locking while read GFRC
        clocksource/drivers/mips-gic-timer: Add pr_fmt and reword pr_* messages
        clocksource/drivers/sprd: Fix Kconfig dependency
        clocksource: Move inline keyword to the beginning of function declarations
        timer_list: Remove unused function pointer typedef
        timers: Adjust a kernel-doc comment
        tick: Prefer a lower rating device only if it's CPU local device
        clocksource: Remove kthread
        time: Change nanosleep to safe __kernel_* types
        time: Change types to new y2038 safe __kernel_* types
        time: Fix get_timespec64() for y2038 safe compat interfaces
        time: Add new y2038 safe __kernel_timespec
        posix-timers: Make compat syscalls depend on CONFIG_COMPAT_32BIT_TIME
        time: Introduce CONFIG_COMPAT_32BIT_TIME
        time: Introduce CONFIG_64BIT_TIME in architectures
        compat: Enable compat_get/put_timespec64 always
        ...
      0bbcce5d
    • Linus Torvalds's avatar
      Merge branch 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0ef283d4
      Linus Torvalds authored
      Pull x86 RAS updates from Thomas Gleixner:
      
       - Fix a stack out of bounds write in the MCE error injection code.
      
       - Avoid IPIs during CPU hotplug to read the MCx_MISC block address from
         a remote CPU. That's fragile and pointless because the block
         addresses are the same on all CPUs. So they can be read once and
         local.
      
       - Add support for MCE broadcasting on newer VIA Centaur CPUs.
      
      * 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/MCE/AMD: Read MCx_MISC block addresses on any CPU
        x86/MCE: Fix stack out-of-bounds write in mce-inject.c: Flags_read()
        x86/MCE: Enable MCE broadcasting on new Centaur CPUs
      0ef283d4
    • Linus Torvalds's avatar
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · db020be9
      Linus Torvalds authored
      Pull irq updates from Thomas Gleixner:
      
       - Consolidation of softirq pending:
      
         The softirq mask and its accessors/mutators have many implementations
         scattered around many architectures. Most do the same things
         consisting in a field in a per-cpu struct (often irq_cpustat_t)
         accessed through per-cpu ops. We can provide instead a generic
         efficient version that most of them can use. In fact s390 is the only
         exception because the field is stored in lowcore.
      
       - Support for level!?! triggered MSI (ARM)
      
         Over the past couple of years, we've seen some SoCs coming up with
         ways of signalling level interrupts using a new flavor of MSIs, where
         the MSI controller uses two distinct messages: one that raises a
         virtual line, and one that lowers it. The target MSI controller is in
         charge of maintaining the state of the line.
      
         This allows for a much simplified HW signal routing (no need to have
         hundreds of discrete lines to signal level interrupts if you already
         have a memory bus), but results in a departure from the current idea
         the kernel has of MSIs.
      
       - Support for Meson-AXG GPIO irqchip
      
       - Large stm32 irqchip rework (suspend/resume, hierarchical domains)
      
       - More SPDX conversions
      
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (36 commits)
        ARM: dts: stm32: Add exti support to stm32mp157 pinctrl
        ARM: dts: stm32: Add exti support for stm32mp157c
        pinctrl/stm32: Add irq_eoi for stm32gpio irqchip
        irqchip/stm32: Add suspend/resume support for hierarchy domain
        irqchip/stm32: Add stm32mp1 support with hierarchy domain
        irqchip/stm32: Prepare common functions
        irqchip/stm32: Add host and driver data structures
        irqchip/stm32: Add suspend support
        irqchip/stm32: Add falling pending register support
        irqchip/stm32: Checkpatch fix
        irqchip/stm32: Optimizes and cleans up stm32-exti irq_domain
        irqchip/meson-gpio: Add support for Meson-AXG SoCs
        dt-bindings: interrupt-controller: New binding for Meson-AXG SoC
        dt-bindings: interrupt-controller: Fix the double quotes
        softirq/s390: Move default mutators of overwritten softirq mask to s390
        softirq/x86: Switch to generic local_softirq_pending() implementation
        softirq/sparc: Switch to generic local_softirq_pending() implementation
        softirq/powerpc: Switch to generic local_softirq_pending() implementation
        softirq/parisc: Switch to generic local_softirq_pending() implementation
        softirq/ia64: Switch to generic local_softirq_pending() implementation
        ...
      db020be9
    • Linus Torvalds's avatar
      Merge branch 'x86-dax-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d09a8e6f
      Linus Torvalds authored
      Pull x86 dax updates from Ingo Molnar:
       "This contains x86 memcpy_mcsafe() fault handling improvements the
        nvdimm tree would like to make more use of"
      
      * 'x86-dax-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/asm/memcpy_mcsafe: Define copy_to_iter_mcsafe()
        x86/asm/memcpy_mcsafe: Add write-protection-fault handling
        x86/asm/memcpy_mcsafe: Return bytes remaining
        x86/asm/memcpy_mcsafe: Add labels for __memcpy_mcsafe() write fault handling
        x86/asm/memcpy_mcsafe: Remove loop unrolling
      d09a8e6f
    • Linus Torvalds's avatar
      Merge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 83163856
      Linus Torvalds authored
      Pull x86 debug updates from Ingo Molnar:
       "This contains the x86 oops code printing reorganization and cleanups
        from Borislav Betkov, with a particular focus in enhancing opcode
        dumping all around"
      
      * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/dumpstack: Explain the reasoning for the prologue and buffer size
        x86/dumpstack: Save first regs set for the executive summary
        x86/dumpstack: Add a show_ip() function
        x86/fault: Dump user opcode bytes on fatal faults
        x86/dumpstack: Add loglevel argument to show_opcodes()
        x86/dumpstack: Improve opcodes dumping in the code section
        x86/dumpstack: Carve out code-dumping into a function
        x86/dumpstack: Unexport oops_begin()
        x86/dumpstack: Remove code_bytes
      83163856
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0afe832e
      Linus Torvalds authored
      Pull x86 cleanups from Ingo Molnar:
       "Misc cleanups"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/apm: Fix spelling mistake: "caculate" -> "calculate"
        x86/mtrr: Rename main.c to mtrr.c and remove duplicate prefixes
        x86: Remove pr_fmt duplicate logging prefixes
        x86/early-quirks: Rename duplicate define of dev_err
        x86/bpf: Clean up non-standard comments, to make the code more readable
      0afe832e
    • Linus Torvalds's avatar
      Merge branch 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 42964c6f
      Linus Torvalds authored
      Pull x86 build updates from Ingo Molnar:
       "A handful of build system (Makefile, linker script) cleanups by
        Masahiro Yamada"
      
      * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/build/vdso: Put generated linker scripts to $(obj)/
        x86/build/vdso: Remove unnecessary export in Makefile
        x86/build/vdso: Remove unused $(vobjs-nox32) in Makefile
        x86/build: Remove no-op macro VMLINUX_SYMBOL()
      42964c6f
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1b246d22
      Linus Torvalds authored
      Pull x86 asm updates from Ingo Molnar:
      
       - better support (non-atomic) 64-bit readq()/writeq() variants (Andy
         Shevchenko)
      
       - __clear_user() micro-optimization (Alexey Dobriyan)
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/io: Define readq()/writeq() to use 64-bit type
        x86/asm/64: Micro-optimize __clear_user() - Use immediate constants
      1b246d22
    • Linus Torvalds's avatar
      Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5cef8c2a
      Linus Torvalds authored
      Pull x86 boot updates from Ingo Molnar:
      
       - Centaur CPU updates (David Wang)
      
       - AMD and other CPU topology enumeration improvements and fixes
         (Borislav Petkov, Thomas Gleixner, Suravee Suthikulpanit)
      
       - Continued 5-level paging work (Kirill A. Shutemov)
      
      * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mm: Mark __pgtable_l5_enabled __initdata
        x86/mm: Mark p4d_offset() __always_inline
        x86/mm: Introduce the 'no5lvl' kernel parameter
        x86/mm: Stop pretending pgtable_l5_enabled is a variable
        x86/mm: Unify pgtable_l5_enabled usage in early boot code
        x86/boot/compressed/64: Fix trampoline page table address calculation
        x86/CPU: Move x86_cpuinfo::x86_max_cores assignment to detect_num_cpu_cores()
        x86/Centaur: Report correct CPU/cache topology
        x86/CPU: Move cpu_detect_cache_sizes() into init_intel_cacheinfo()
        x86/CPU: Make intel_num_cpu_cores() generic
        x86/CPU: Move cpu local function declarations to local header
        x86/CPU/AMD: Derive CPU topology from CPUID function 0xB when available
        x86/CPU: Modify detect_extended_topology() to return result
        x86/CPU/AMD: Calculate last level cache ID from number of sharing threads
        x86/CPU: Rename intel_cacheinfo.c to cacheinfo.c
        perf/events/amd/uncore: Fix amd_uncore_llc ID to use pre-defined cpu_llc_id
        x86/CPU/AMD: Have smp_num_siblings and cpu_llc_id always be present
        x86/Centaur: Initialize supported CPU features properly
      5cef8c2a
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f7f4e7fc
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
      
       - power-aware scheduling improvements (Patrick Bellasi)
      
       - NUMA balancing improvements (Mel Gorman)
      
       - vCPU scheduling fixes (Rohit Jain)
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/fair: Update util_est before updating schedutil
        sched/cpufreq: Modify aggregate utilization to always include blocked FAIR utilization
        sched/deadline/Documentation: Add overrun signal and GRUB-PA documentation
        sched/core: Distinguish between idle_cpu() calls based on desired effect, introduce available_idle_cpu()
        sched/wait: Include <linux/wait.h> in <linux/swait.h>
        sched/numa: Stagger NUMA balancing scan periods for new threads
        sched/core: Don't schedule threads on pre-empted vCPUs
        sched/fair: Avoid calling sync_entity_load_avg() unnecessarily
        sched/fair: Rearrange select_task_rq_fair() to optimize it
      f7f4e7fc
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d9b446e2
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "Kernel side changes:
      
         - x86 Intel uncore driver cleanups and enhancements (Kan Liang)
      
         - group scheduling and other fixes (Song Liu
      
         - store frame pointer in the sample traces for better profiling
           (Alexey Budankov)
      
         - compat fixes/enhancements (Eugene Syromiatnikov)
      
        Tooling side changes, which you can build and install in a single step
        via:
      
            make -C tools/perf clean install
      
        perf annotate:
      
         - Support 'perf annotate --group' for non-explicit recorded event
           "groups", showing multiple columns, one for each event, just like
           when dealing with explicit event groups (those enclosed with {})
           (Jin Yao)
      
         - Record min/max LBR cycles (>= Skylake) and add 'perf annotate' TUI
           hotkey to show it (c) (Jin Yao)
      
        perf bpf:
      
         - Add infrastructure to help in writing eBPF C programs to be used
           with '-e name.c' type events in tools such as 'record' and 'trace',
           with headers for common constructs and an examples directory that
           will get populated as we add more such helpers and the 'perf bpf'
           (Arnaldo Carvalho de Melo)
      
        perf stat:
      
         - Display time in precision based on std deviation (Jiri Olsa)
      
         - Add --table option to display time of each run (Jiri Olsa)
      
         - Display length strings of each run for --table option (Jiri Olsa)
      
        perf buildid-cache:
      
         - Add --list and --purge-all options (Ravi Bangoria)
      
        perf test:
      
         - Let 'perf test list' display subtests (Hendrik Brueckner)
      
        perf pti:
      
         - Create extra kernel maps to help in decoding samples in x86 PTI
           entry trampolines (Adrian Hunter)
      
         - Copy x86 PTI entry trampoline sections in the kcore copy used for
           annotation and intel_pt CPU traces decoding (Adrian Hunter)
      
        ... and a lot of other fixes, enhancements and cleanups I did not
        list, see the shortlog and git log for details"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (111 commits)
        perf/x86/intel/uncore: Clean up client IMC uncore
        perf/x86/intel/uncore: Expose uncore_pmu_event*() functions
        perf/x86/intel/uncore: Support IIO free-running counters on SKX
        perf/x86/intel/uncore: Add infrastructure for free running counters
        perf/x86/intel/uncore: Add new data structures for free running counters
        perf/x86/intel/uncore: Correct fixed counter index check in generic code
        perf/x86/intel/uncore: Correct fixed counter index check for NHM
        perf/x86/intel/uncore: Introduce customized event_read() for client IMC uncore
        perf/x86: Store user space frame-pointer value on a sample
        perf/core: Wire up compat PERF_EVENT_IOC_QUERY_BPF, PERF_EVENT_IOC_MODIFY_ATTRIBUTES
        perf/core: Fix bad use of igrab()
        perf/core: Fix group scheduling with mixed hw and sw events
        perf kcore_copy: Amend the offset of sections that remap kernel text
        perf kcore_copy: Copy x86 PTI entry trampoline sections
        perf kcore_copy: Get rid of kernel_map
        perf kcore_copy: Iterate phdrs
        perf kcore_copy: Layout sections
        perf kcore_copy: Calculate offset from phnum
        perf kcore_copy: Keep a count of phdrs
        perf kcore_copy: Keep phdr data in a list
        ...
      d9b446e2