1. 10 Jun, 2020 20 commits
    • Linus Torvalds's avatar
      Merge branch 'proc-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace · 79ca035d
      Linus Torvalds authored
      Pull proc fix from Eric Biederman:
       "Syzbot found a NULL pointer dereference if kzalloc of s_fs_info fails"
      
      * 'proc-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        proc: s_fs_info may be NULL when proc_kill_sb is called
      79ca035d
    • Linus Torvalds's avatar
      Merge branch 'rwonce/rework' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux · 4152d146
      Linus Torvalds authored
      Pull READ/WRITE_ONCE rework from Will Deacon:
       "This the READ_ONCE rework I've been working on for a while, which
        bumps the minimum GCC version and improves code-gen on arm64 when
        stack protector is enabled"
      
      [ Side note: I'm _really_ tempted to raise the minimum gcc version to
        4.9, so that we can just say that we require _Generic() support.
      
        That would allow us to more cleanly handle a lot of the cases where we
        depend on very complex macros with 'sizeof' or __builtin_choose_expr()
        with __builtin_types_compatible_p() etc.
      
        This branch has a workaround for sparse not handling _Generic(),
        either, but that was already fixed in the sparse development branch,
        so it's really just gcc-4.9 that we'd require.   - Linus ]
      
      * 'rwonce/rework' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux:
        compiler_types.h: Use unoptimized __unqual_scalar_typeof for sparse
        compiler_types.h: Optimize __unqual_scalar_typeof compilation time
        compiler.h: Enforce that READ_ONCE_NOCHECK() access size is sizeof(long)
        compiler-types.h: Include naked type in __pick_integer_type() match
        READ_ONCE: Fix comment describing 2x32-bit atomicity
        gcov: Remove old GCC 3.4 support
        arm64: barrier: Use '__unqual_scalar_typeof' for acquire/release macros
        locking/barriers: Use '__unqual_scalar_typeof' for load-acquire macros
        READ_ONCE: Drop pointer qualifiers when reading from scalar types
        READ_ONCE: Enforce atomicity for {READ,WRITE}_ONCE() memory accesses
        READ_ONCE: Simplify implementations of {READ,WRITE}_ONCE()
        arm64: csum: Disable KASAN for do_csum()
        fault_inject: Don't rely on "return value" from WRITE_ONCE()
        net: tls: Avoid assigning 'const' pointer to non-const pointer
        netfilter: Avoid assigning 'const' pointer to non-const pointer
        compiler/gcc: Raise minimum GCC version for kernel builds to 4.8
      4152d146
    • Andrew Morton's avatar
      arch/powerpc/mm/pgtable.c: another missed conversion · 78c24f7b
      Andrew Morton authored
      Fixes: e05c7b1f ("mm: pgtable: add shortcuts for accessing kernel PMD and PTE")
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Reported-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Cc: Michael Ellerman <mpe@ellerman.id.au>
      Cc: Mike Rapoport <rppt@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      78c24f7b
    • Linus Torvalds's avatar
      Merge tag 'docs-5.8-2' of git://git.lwn.net/linux · 6d62c5b2
      Linus Torvalds authored
      Pull more documentation updates from Jonathan Corbet:
       "A handful of late-arriving docs fixes, along with a patch changing a
        lot of HTTP links to HTTPS that had to be yanked and redone before the
        first pull"
      
      * tag 'docs-5.8-2' of git://git.lwn.net/linux:
        docs/memory-barriers.txt/kokr: smp_mb__{before,after}_atomic(): update Documentation
        Documentation: devres: add missing entry for devm_platform_get_and_ioremap_resource()
        Replace HTTP links with HTTPS ones: documentation
        docs: it_IT: address invalid reference warnings
        doc: zh_CN: use doc reference to resolve undefined label warning
        docs: Update the location of the LF NDA program
        docs: dev-tools: coccinelle: underlines
      6d62c5b2
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.8-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 6672966d
      Linus Torvalds authored
      Pull more ACPI updates from Rafael Wysocki:
       "Update the ACPICA code in the kernel to upstream revision 20200528
        with the following changes:
      
         - Remove some dead code from the acpidump utility (Bob Moore)
      
         - Add new OperationRegion subtype keyword PlatformRtMechanism to the
           compiler (Erik Kaneda)"
      
      * tag 'acpi-5.8-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPICA: Update version to 20200528
        ACPICA: iASL: add new OperationRegion subtype keyword PlatformRtMechanism
        ACPICA: acpidump: Removed dead code from oslinuxtbl.c
      6672966d
    • Linus Torvalds's avatar
      Merge tag 'pm-5.8-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 0c67f6b2
      Linus Torvalds authored
      Pull more power management updates from Rafael Wysocki:
       "These are operating performance points (OPP) framework updates mostly,
        including support for interconnect bandwidth in the OPP core, plus a
        few cpufreq changes, including boost support in the CPPC cpufreq
        driver, an ACPI device power management fix and a hibernation code
        cleanup.
      
        Specifics:
      
         - Add support for interconnect bandwidth to the OPP core (Georgi
           Djakov, Saravana Kannan, Sibi Sankar, Viresh Kumar).
      
         - Add support for regulator enable/disable to the OPP core (Kamil
           Konieczny).
      
         - Add boost support to the CPPC cpufreq driver (Xiongfeng Wang).
      
         - Make the tegra186 cpufreq driver set the
           CPUFREQ_NEED_INITIAL_FREQ_CHECK flag (Mian Yousaf Kaukab).
      
         - Prevent the ACPI power management from using power resources with
           devices where the list of power resources for power state D0 (full
           power) is missing (Rafael Wysocki).
      
         - Annotate a hibernation-related function with __init (Christophe
           JAILLET)"
      
      * tag 'pm-5.8-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: PM: Avoid using power resources if there are none for D0
        cpufreq: CPPC: add SW BOOST support
        cpufreq: change '.set_boost' to act on one policy
        PM: hibernate: Add __init annotation to swsusp_header_init()
        opp: Don't parse icc paths unnecessarily
        opp: Remove bandwidth votes when target_freq is zero
        opp: core: add regulators enable and disable
        opp: Reorder the code for !target_freq case
        opp: Expose bandwidth information via debugfs
        cpufreq: dt: Add support for interconnect bandwidth scaling
        opp: Update the bandwidth on OPP frequency changes
        opp: Add sanity checks in _read_opp_key()
        opp: Add support for parsing interconnect bandwidth
        cpufreq: tegra186: add CPUFREQ_NEED_INITIAL_FREQ_CHECK flag
        OPP: Add helpers for reading the binding properties
        dt-bindings: opp: Introduce opp-peak-kBps and opp-avg-kBps bindings
      0c67f6b2
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 49f13b09
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - a new driver for the Azoteq IQS269A capacitive touch controller
      
       - a new driver for the Cypress CY8CTMA140 touchscreen
      
       - updates to Elan and ft5x06 touchscreen drivers
      
       - assorted driver fixes
      
       - msm-vibrator has been removed as we have a more generic solution
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (28 commits)
        Input: adi - work around module name confict
        Input: iqs269a - add missing I2C dependency
        Input: elants - refactor elants_i2c_execute_command()
        Input: elants - override touchscreen info with DT properties
        Input: elants - remove unused axes
        Input: add support for Azoteq IQS269A
        dt-bindings: input: Add bindings for Azoteq IQS269A
        Input: imx_sc_key - use devm_add_action_or_reset() to handle all cleanups
        Input: remove msm-vibrator driver
        dt-bindings: Input: remove msm-vibrator
        Input: elants_i2c - provide an attribute to show calibration count
        Input: introduce input_mt_report_slot_inactive()
        dt-bindings: input: touchscreen: elants_i2c: convert to YAML
        Input: add driver for the Cypress CY8CTMA140 touchscreen
        dt-bindings: touchscreen: Add CY8CTMA140 bindings
        Input: edt-ft5x06 - prefer asynchronous probe
        Input: edt-ft5x06 - improve power management operations
        Input: edt-ft5x06 - move parameter restore into helper
        Input: edt-ft5x06 - fix get_default register write access
        Input: atkbd - receive and use physcode->keycode mapping from FW
        ...
      49f13b09
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · 09102704
      Linus Torvalds authored
      Pull virtio updates from Michael Tsirkin:
      
       - virtio-mem: paravirtualized memory hotplug
      
       - support doorbell mapping for vdpa
      
       - config interrupt support in ifc
      
       - fixes all over the place
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: (40 commits)
        vhost/test: fix up after API change
        virtio_mem: convert device block size into 64bit
        virtio-mem: drop unnecessary initialization
        ifcvf: implement config interrupt in IFCVF
        vhost: replace -1 with VHOST_FILE_UNBIND in ioctls
        vhost_vdpa: Support config interrupt in vdpa
        ifcvf: ignore continuous setting same status value
        virtio-mem: Don't rely on implicit compiler padding for requests
        virtio-mem: Try to unplug the complete online memory block first
        virtio-mem: Use -ETXTBSY as error code if the device is busy
        virtio-mem: Unplug subblocks right-to-left
        virtio-mem: Drop manual check for already present memory
        virtio-mem: Add parent resource for all added "System RAM"
        virtio-mem: Better retry handling
        virtio-mem: Offline and remove completely unplugged memory blocks
        mm/memory_hotplug: Introduce offline_and_remove_memory()
        virtio-mem: Allow to offline partially unplugged memory blocks
        mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE
        virtio-mem: Paravirtualized memory hotunplug part 2
        virtio-mem: Paravirtualized memory hotunplug part 1
        ...
      09102704
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml · 84fc461d
      Linus Torvalds authored
      Pull UML updates from Richard Weinberger:
      
       - Use fdatasync() in ubd
      
       - Add a generic "fd" vector transport
      
       - Minor cleanups and fixes
      
      * tag 'for-linus-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:
        um: virtio: Replace zero-length array with flexible-array
        um: Use fdatasync() when mapping the UBD FSYNC command
        um: Do not evaluate compiler's library path when cleaning
        um: Neaten vu_err macro definition
        um: Add a generic "fd" vector transport
        um: Add include: memset() and memcpy() are in <string.h>
      84fc461d
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs · 0e083da7
      Linus Torvalds authored
      Pull UBI update from Richard Weinberger:
       "This contains a single change for UBI:
      
         - Select fastmap anchor PEBs considering wear level rules"
      
      * tag 'for-linus-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs:
        ubi: Select fastmap anchor PEBs considering wear level rules
      0e083da7
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · 6f51ab94
      Linus Torvalds authored
      Pull MTD updates from Richard Weinberger:
       "MTD core changes:
         - partition parser: Support MTD names containing one or more colons.
         - mtdblock: clear cache_state to avoid writing to bad blocks
           repeatedly.
      
        Raw NAND core changes:
         - Stop using nand_release(), patched all drivers.
         - Give more information about the ECC weakness when not matching the
           chip's requirement.
         - MAINTAINERS updates.
         - Support emulated SLC mode on MLC NANDs.
         - Support "constrained" controllers, adapt the core and ONFI/JEDEC
           table parsing and Micron's code.
         - Take check_only into account.
         - Add an invalid ECC mode to discriminate with valid ones.
         - Return an enum from of_get_nand_ecc_algo().
         - Drop OOB_FIRST placement scheme.
         - Introduce nand_extract_bits().
         - Ensure a consistent bitflips numbering.
         - BCH lib:
            - Allow easy bit swapping.
            - Rework a little bit the exported function names.
         - Fix nand_gpio_waitrdy().
         - Propage CS selection to sub operations.
         - Add a NAND_NO_BBM_QUIRK flag.
         - Give the possibility to verify a read operation is supported.
         - Add a helper to check supported operations.
         - Avoid indirect access to ->data_buf().
         - Rename the use_bufpoi variables.
         - Fix comments about the use of bufpoi.
         - Rename a NAND chip option.
         - Reorder the nand_chip->options flags.
         - Translate obscure bitfields into readable macros.
         - Timings:
            - Fix default values.
            - Add mode information to the timings structure.
      
        Raw NAND controller driver changes:
         - Fixed many error paths.
         - Arasan
            - New driver
         - Au1550nd:
            - Various cleanups
            - Migration to ->exec_op()
         - brcmnand:
            - Misc cleanup.
            - Support v2.1-v2.2 controllers.
            - Remove unused including <linux/version.h>.
            - Correctly verify erased pages.
            - Fix Hamming OOB layout.
         - Cadence
            - Make cadence_nand_attach_chip static.
         - Cafe:
            - Set the NAND_NO_BBM_QUIRK flag
         - cmx270:
            - Remove this controller driver.
         - cs553x:
            - Misc cleanup
            - Migration to ->exec_op()
         - Davinci:
            - Misc cleanup.
            - Migration to ->exec_op()
         - Denali:
            - Add more delays before latching incoming data
         - Diskonchip:
            - Misc cleanup
            - Migration to ->exec_op()
         - Fsmc:
            - Change to non-atomic bit operations.
         - GPMI:
            - Use nand_extract_bits()
            - Fix runtime PM imbalance.
         - Ingenic:
            - Migration to exec_op()
            - Fix the RB gpio active-high property on qi, lb60
            - Make qi_lb60_ooblayout_ops static.
         - Marvell:
            - Misc cleanup and small fixes
         - Nandsim:
            - Fix the error paths, driver wide.
         - Omap_elm:
            - Fix runtime PM imbalance.
         - STM32_FMC2:
            - Misc cleanups (error cases, comments, timeout valus, cosmetic
              changes).
      
        SPI NOR core changes:
         - Add, update support and fix few flashes.
         - Prepare BFPT parsing for JESD216 rev D.
         - Kernel doc fixes.
      
        CFI changes:
         - Support the absence of protection registers for Intel CFI flashes.
         - Replace zero-length array with flexible-arrays"
      
      * tag 'mtd/for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (208 commits)
        mtd: clear cache_state to avoid writing to bad blocks repeatedly
        mtd: parser: cmdline: Support MTD names containing one or more colons
        mtd: physmap_of_gemini: remove defined but not used symbol 'syscon_match'
        mtd: rawnand: Add an invalid ECC mode to discriminate with valid ones
        mtd: rawnand: Return an enum from of_get_nand_ecc_algo()
        mtd: rawnand: Drop OOB_FIRST placement scheme
        mtd: rawnand: Avoid a typedef
        mtd: Fix typo in mtd_ooblayout_set_databytes() description
        mtd: rawnand: Stop using nand_release()
        mtd: rawnand: nandsim: Reorganize ns_cleanup_module()
        mtd: rawnand: nandsim: Rename a label in ns_init_module()
        mtd: rawnand: nandsim: Manage lists on error in ns_init_module()
        mtd: rawnand: nandsim: Fix the label pointing on nand_cleanup()
        mtd: rawnand: nandsim: Free erase_block_wear on error
        mtd: rawnand: nandsim: Use an additional label when freeing the nandsim object
        mtd: rawnand: nandsim: Stop using nand_release()
        mtd: rawnand: nandsim: Free the partition names in ns_free()
        mtd: rawnand: nandsim: Free the allocated device on error in ns_init()
        mtd: rawnand: nandsim: Free partition names on error in ns_init()
        mtd: rawnand: nandsim: Fix the two ns_alloc_device() error paths
        ...
      6f51ab94
    • Alexey Gladkov's avatar
      proc: s_fs_info may be NULL when proc_kill_sb is called · 058f2e4d
      Alexey Gladkov authored
      syzbot found that proc_fill_super() fails before filling up sb->s_fs_info,
      deactivate_locked_super() will be called and sb->s_fs_info will be NULL.
      The proc_kill_sb() does not expect fs_info to be NULL which is wrong.
      
      Link: https://lore.kernel.org/lkml/0000000000002d7ca605a7b8b1c5@google.com
      Reported-by: syzbot+4abac52934a48af5ff19@syzkaller.appspotmail.com
      Fixes: fa10fed3 ("proc: allow to mount many instances of proc in one pid namespace")
      Signed-off-by: default avatarAlexey Gladkov <gladkov.alexey@gmail.com>
      Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
      058f2e4d
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 6f630784
      Linus Torvalds authored
      Pull clk updates from Stephen Boyd:
       "This time around we have four lines of diff in the core framework,
        removing a function that isn't used anymore. Otherwise the main new
        thing for the common clk framework is that it is selectable in the
        Kconfig language now. Hopefully this will let clk drivers and clk
        consumers be testable on more than the architectures that support the
        clk framework. The goal is to introduce some Kunit tests for the
        framework.
      
        Outside of the core framework we have the usual set of various driver
        updates and non-critical fixes. The dirstat shows that the new
        Baikal-T1 driver is the largest addition this time around in terms of
        lines of code. After that the x86 (Intel), Qualcomm, and Mediatek
        drivers introduce many lines to support new or upcoming SoCs. After
        that the dirstat shows the usual suspects working on their SoC support
        by fixing minor bugs, correcting data and converting some of their DT
        bindings to YAML.
      
        Core:
         - Allow the COMMON_CLK config to be selectable
      
        New Drivers:
         - Clk driver for Baikal-T1 SoCs
         - Mediatek MT6765 clock support
         - Support for Intel Agilex clks
         - Add support for X1830 and X1000 Ingenic SoC clk controllers
         - Add support for the new Renesas RZ/G1H (R8A7742) SoC
         - Add support for Qualcomm's MSM8939 Generic Clock Controller
      
        Updates:
         - Support IDT VersaClock 5P49V5925
         - Bunch of updates for HSDK clock generation unit (CGU) driver
         - Start making audio and GPU clks work on Marvell MMP2/MMP3 SoCs
         - Add some GPU, NPU, and UFS clks to Qualcomm SM8150 driver
         - Enable supply regulators for GPU gdscs on Qualcomm SoCs
         - Add support for Si5342, Si5344 and Si5345 chips
         - Support custom flags in Xilinx zynq firmware
         - Various small fixes to the Xilinx clk driver
         - A single minor rounding fix for the legacy Allwinner clock support
         - A few patches from Abel Vesa as preparation of adding audiomix
           clock support on i.MX
         - A couple of cleanups from Anson Huang for i.MX clk-sscg-pll and
           clk-pllv3 drivers
         - Drop dependency on ARM64 for i.MX8M clock driver, to support
           aarch32 mode on aarch64 hardware
         - A series from Peng Fan to improve i.MX8M clock drivers, using
           composite clock for core and bus clk slice
         - Set a better parent clock for flexcan on i.MX6UL to support CiA102
           defined bit rates
         - A couple changes for EMC frequency scaling on Tegra210
         - Support for CPU frequency scaling on Tegra20/Tegra30
         - New clk gate for CSI test pattern generator on Tegra210
         - Regression fixes for Samsung exynos542x and exynos5433 SoCs
         - Use of fallthrough; attribute for Samsung s3c24xx
         - Updates and fixup HDMI and video clocks on Meson8b
         - Fixup reset polarity on Meson8b
         - Fix GPU glitch free mux switch on Meson gx and g12
         - A minor fix for the currently unused suspend/resume handling on
           Renesas RZ/A1 and RZ/A2
         - Two more conversions of Renesas DT bindings to json-schema
         - Add support for the USB 2.0 clock selector on Renesas R-Car M3-W+"
      
      * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (155 commits)
        clk: mediatek: Remove ifr{0,1}_cfg_regs structures
        clk: baikal-t1: remove redundant assignment to variable 'divider'
        clk: baikal-t1: fix spelling mistake "Uncompatible" -> "Incompatible"
        dt-bindings: clock: Add a missing include to MMP Audio Clock binding
        dt: Add bindings for IDT VersaClock 5P49V5925
        clk: vc5: Add support for IDT VersaClock 5P49V6965
        clk: Add Baikal-T1 CCU Dividers driver
        clk: Add Baikal-T1 CCU PLLs driver
        dt-bindings: clk: Add Baikal-T1 CCU Dividers binding
        dt-bindings: clk: Add Baikal-T1 CCU PLLs binding
        clk: mediatek: assign the initial value to clk_init_data of mtk_mux
        clk: mediatek: Add MT6765 clock support
        clk: mediatek: add mt6765 clock IDs
        dt-bindings: clock: mediatek: document clk bindings vcodecsys for Mediatek MT6765 SoC
        dt-bindings: clock: mediatek: document clk bindings mipi0a for Mediatek MT6765 SoC
        dt-bindings: clock: mediatek: document clk bindings for Mediatek MT6765 SoC
        CLK: HSDK: CGU: add support for 148.5MHz clock
        CLK: HSDK: CGU: support PLL bypassing
        CLK: HSDK: CGU: check if PLL is bypassed first
        clk: clk-si5341: Add support for the Si5345 series
        ...
      6f630784
    • Linus Torvalds's avatar
      Merge tag 'for-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 3a2a8751
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "This time there are lots of changes. Quite a few changes to the core,
        lots of driver changes and one change to kobject core (with Ack from
        Greg).
      
        Summary:
      
        kobject:
         - Increase number of allowed uevent variables
      
        power-supply core:
         - Add power-supply type in uevent
         - Cleanup property handling in core
         - Make property and usb_type pointers const
         - Convert core power-supply DT binding to YAML
         - Cleanup HWMON code
         - Add new health status "calibration required"
         - Add new properties for manufacture date and capacity error margin
      
        battery drivers:
         - new cw2015 battery driver used by pine64 Pinebook Pro laptop
         - axp22: blacklist on Meegopad T02
         - sc27xx: support current/voltage reading
         - max17042: support time-to-empty reading
         - simple-battery: add more battery parameters
         - bq27xxx: convert DT binding document to YAML
         - sbs-battery: add TI BQ20Z65 support, fix technology property,
               convert DT binding to YAML, add option to disable charger
               broadcasts, add new properties: manufacture date, capacity
               error margin, average current, charge current and voltage and
               support calibration required health status
         - misc fixes
      
        charger drivers:
         - bq25890: cleanup, implement charge type, precharge current and
               input current limiting properties
         - bd70528: use new linear range helper library
         - bd99954: new charger driver
         - mp2629: new charger driver
         - misc fixes
      
        reboot drivers:
         - oxnas-restart: introduce new driver
         - syscon-reboot: convert DT binding to YAML, add parent syscon device
               support
         - misc fixes"
      
      * tag 'for-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (85 commits)
        power: supply: cw2015: Attach OF ID table to the driver
        power: reset: gpio-poweroff: add missing '\n' in dev_err()
        Revert "power: supply: sbs-battery: simplify read_read_string_data"
        Revert "power: supply: sbs-battery: add PEC support"
        dt-bindings: power: sbs-battery: Convert to yaml
        power: supply: sbs-battery: constify power-supply property array
        power: supply: sbs-battery: switch to i2c's probe_new
        power: supply: sbs-battery: switch from of_property_* to device_property_*
        power: supply: sbs-battery: add ability to disable charger broadcasts
        power: supply: sbs-battery: fix idle battery status
        power: supply: sbs-battery: add POWER_SUPPLY_HEALTH_CALIBRATION_REQUIRED support
        power: supply: sbs-battery: add MANUFACTURE_DATE support
        power: supply: sbs-battery: add POWER_SUPPLY_PROP_CONSTANT_CHARGE_CURRENT/VOLTAGE_MAX support
        power: supply: sbs-battery: Improve POWER_SUPPLY_PROP_TECHNOLOGY support
        power: supply: sbs-battery: add POWER_SUPPLY_PROP_CURRENT_AVG support
        power: supply: sbs-battery: add PEC support
        power: supply: sbs-battery: simplify read_read_string_data
        power: supply: sbs-battery: add POWER_SUPPLY_PROP_CAPACITY_ERROR_MARGIN support
        power: supply: sbs-battery: Add TI BQ20Z65 support
        power: supply: core: add POWER_SUPPLY_HEALTH_CALIBRATION_REQUIRED
        ...
      3a2a8751
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-5.8-rc1' of git://git.infradead.org/users/vkoul/slave-dma · c90e7945
      Linus Torvalds authored
      Pull dmaengine updates from Vinod Koul:
       "A fairly small dmaengine update which includes mostly driver updates
        (dmatest, dw-edma, ioat, mmp-tdma and k3-udma) along with Renesas
        binding update to json-schema"
      
      * tag 'dmaengine-5.8-rc1' of git://git.infradead.org/users/vkoul/slave-dma: (39 commits)
        dmaengine: imx-sdma: initialize all script addresses
        dmaengine: ti: k3-udma: Use proper return code in alloc_chan_resources
        dmaengine: ti: k3-udma: Remove udma_chan.in_ring_cnt
        dmaengine: ti: k3-udma: Add missing dma_sync call for rx flush descriptor
        dmaengine: at_xdmac: Replace zero-length array with flexible-array
        dmaengine: at_hdmac: Replace zero-length array with flexible-array
        dmaengine: qcom: bam_dma: Replace zero-length array with flexible-array
        dmaengine: ti: k3-udma: Use PTR_ERR_OR_ZERO() to simplify code
        dmaengine: moxart-dma: Drop pointless static qualifier in moxart_probe()
        dmaengine: sf-pdma: Simplify the error handling path in 'sf_pdma_probe()'
        dmaengine: qcom_hidma: use true,false for bool variable
        dmaengine: dw-edma: support local dma device transfer semantics
        dmaengine: Fix doc strings to satisfy validation script
        dmaengine: Include dmaengine.h into dmaengine.c
        dmaengine: dmatest: Describe members of struct dmatest_info
        dmaengine: dmatest: Describe members of struct dmatest_params
        dmaengine: dmatest: Allow negative timeout value to specify infinite wait
        Revert "dmaengine: dmatest: timeout value of -1 should specify infinite wait"
        dmaengine: stm32-dma: direct mode support through device tree
        dt-bindings: dma: add direct mode support through device tree in stm32-dma
        ...
      c90e7945
    • Geert Uytterhoeven's avatar
      Documentation/CodingStyle: Fix duplicate "are" typo · 77d22a43
      Geert Uytterhoeven authored
      The improved paragraph about line lengths contains a sentence with a
      duplicate word: there is one "are" at the end of a line, followed by a
      second one at the beginning of the next line.
      
      Drop the first one, as that one is part of the longest line.
      
      Fixes: bdc48fa1 ("checkpatch/coding-style: deprecate 80-column warning")
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      77d22a43
    • Andrew Morton's avatar
      arch/sparc/mm/srmmu.c: fix build · f7579007
      Andrew Morton authored
      "mm: consolidate pte_index() and pte_offset_*() definitions" was supposed
      to remove arch/sparc/mm/srmmu.c:pte_offset_kernel().
      
      Fixes: 974b9b2c ("mm: consolidate pte_index() and pte_offset_*() definitions")
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Cc: Mike Rapoport <rppt@linux.ibm.com>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f7579007
    • Rafael J. Wysocki's avatar
      Merge branch 'acpica' · ede439be
      Rafael J. Wysocki authored
      * acpica:
        ACPICA: Update version to 20200528
        ACPICA: iASL: add new OperationRegion subtype keyword PlatformRtMechanism
        ACPICA: acpidump: Removed dead code from oslinuxtbl.c
      ede439be
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpufreq' and 'pm-acpi' · 50dd154e
      Rafael J. Wysocki authored
      * pm-cpufreq:
        cpufreq: CPPC: add SW BOOST support
        cpufreq: change '.set_boost' to act on one policy
        cpufreq: tegra186: add CPUFREQ_NEED_INITIAL_FREQ_CHECK flag
      
      * pm-acpi:
        ACPI: PM: Avoid using power resources if there are none for D0
      50dd154e
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-opp' · 4c277e2f
      Rafael J. Wysocki authored
      * pm-opp:
        opp: Don't parse icc paths unnecessarily
        opp: Remove bandwidth votes when target_freq is zero
        opp: core: add regulators enable and disable
        opp: Reorder the code for !target_freq case
        opp: Expose bandwidth information via debugfs
        cpufreq: dt: Add support for interconnect bandwidth scaling
        opp: Update the bandwidth on OPP frequency changes
        opp: Add sanity checks in _read_opp_key()
        opp: Add support for parsing interconnect bandwidth
        interconnect: Remove unused module exit code from core
        interconnect: Disallow interconnect core to be built as a module
        interconnect: Add of_icc_get_by_index() helper function
        OPP: Add helpers for reading the binding properties
        dt-bindings: opp: Introduce opp-peak-kBps and opp-avg-kBps bindings
      4c277e2f
  2. 09 Jun, 2020 20 commits
    • Linus Torvalds's avatar
      Merge tag 'fuse-update-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse · 5b14671b
      Linus Torvalds authored
      Pull fuse updates from Miklos Szeredi:
      
       - Fix a rare deadlock in virtiofs
      
       - Fix st_blocks in writeback cache mode
      
       - Fix wrong checks in splice move causing spurious warnings
      
       - Fix a race between a GETATTR request and a FUSE_NOTIFY_INVAL_INODE
         notification
      
       - Use rb-tree instead of linear search for pages currently under
         writeout by userspace
      
       - Fix copy_file_range() inconsistencies
      
      * tag 'fuse-update-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
        fuse: copy_file_range should truncate cache
        fuse: fix copy_file_range cache issues
        fuse: optimize writepages search
        fuse: update attr_version counter on fuse_notify_inval_inode()
        fuse: don't check refcount after stealing page
        fuse: fix weird page warning
        fuse: use dump_page
        virtiofs: do not use fuse_fill_super_common() for device installation
        fuse: always allow query of st_dev
        fuse: always flush dirty data on close(2)
        fuse: invalidate inode attr in writeback cache mode
        fuse: Update stale comment in queue_interrupt()
        fuse: BUG_ON correction in fuse_dev_splice_write()
        virtiofs: Add mount option and atime behavior to the doc
        virtiofs: schedule blocking async replies in separate worker
      5b14671b
    • Linus Torvalds's avatar
      Merge tag 'ovl-update-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · 52435c86
      Linus Torvalds authored
      Pull overlayfs updates from Miklos Szeredi:
       "Fixes:
      
         - Resolve mount option conflicts consistently
      
         - Sync before remount R/O
      
         - Fix file handle encoding corner cases
      
         - Fix metacopy related issues
      
         - Fix an unintialized return value
      
         - Add missing permission checks for underlying layers
      
        Optimizations:
      
         - Allow multipe whiteouts to share an inode
      
         - Optimize small writes by inheriting SB_NOSEC from upper layer
      
         - Do not call ->syncfs() multiple times for sync(2)
      
         - Do not cache negative lookups on upper layer
      
         - Make private internal mounts longterm"
      
      * tag 'ovl-update-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs: (27 commits)
        ovl: remove unnecessary lock check
        ovl: make oip->index bool
        ovl: only pass ->ki_flags to ovl_iocb_to_rwf()
        ovl: make private mounts longterm
        ovl: get rid of redundant members in struct ovl_fs
        ovl: add accessor for ofs->upper_mnt
        ovl: initialize error in ovl_copy_xattr
        ovl: drop negative dentry in upper layer
        ovl: check permission to open real file
        ovl: call secutiry hook in ovl_real_ioctl()
        ovl: verify permissions in ovl_path_open()
        ovl: switch to mounter creds in readdir
        ovl: pass correct flags for opening real directory
        ovl: fix redirect traversal on metacopy dentries
        ovl: initialize OVL_UPPERDATA in ovl_lookup()
        ovl: use only uppermetacopy state in ovl_lookup()
        ovl: simplify setting of origin for index lookup
        ovl: fix out of bounds access warning in ovl_check_fb_len()
        ovl: return required buffer size for file handles
        ovl: sync dirty data when remounting to ro mode
        ...
      52435c86
    • Linus Torvalds's avatar
      Merge tag 'afs-fixes-20200609' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · 4964dd29
      Linus Torvalds authored
      Pull AFS fixes from David Howells:
       "A set of small patches to fix some things, most of them minor.
      
         - Fix a memory leak in afs_put_sysnames()
      
         - Fix an oops in AFS file locking
      
         - Fix new use of BUG()
      
         - Fix debugging statements containing %px
      
         - Remove afs_zero_fid as it's unused
      
         - Make afs_zap_data() static"
      
      * tag 'afs-fixes-20200609' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        afs: Make afs_zap_data() static
        afs: Remove afs_zero_fid as it's not used
        afs: Fix debugging statements with %px to be %p
        afs: Fix use of BUG()
        afs: Fix file locking
        afs: Fix memory leak in afs_put_sysnames()
      4964dd29
    • Stephen Boyd's avatar
      clk: mediatek: Remove ifr{0,1}_cfg_regs structures · 9ac1eafa
      Stephen Boyd authored
      These aren't used and the macros that reference them aren't used either.
      Remove the dead code to avoid compile warnings.
      
      Cc: Owen Chen <owen.chen@mediatek.com>
      Cc: Mars Cheng <mars.cheng@mediatek.com>
      Cc: Macpaul Lin <macpaul.lin@mediatek.com>
      Fixes: 1aca9939 ("clk: mediatek: Add MT6765 clock support")
      Reported-by: default avatarkbuild test robot <lkp@intel.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      Link: https://lore.kernel.org/r/20200609211847.27366-1-sboyd@kernel.org
      9ac1eafa
    • Colin Ian King's avatar
      clk: baikal-t1: remove redundant assignment to variable 'divider' · 45edc7e2
      Colin Ian King authored
      The variable divider is being initialized with a value that is never read
      and it is being updated later with a new value.  The initialization is
      redundant and can be removed.
      
      Addresses-Coverity: ("Unused value")
      Signed-off-by: default avatarColin Ian King <colin.king@canonical.com>
      Link: https://lore.kernel.org/r/20200602172435.70282-1-colin.king@canonical.comReviewed-by: default avatarSerge Semin <fancer.lancer@gmail.com>
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      45edc7e2
    • Colin Ian King's avatar
    • Lubomir Rintel's avatar
      dt-bindings: clock: Add a missing include to MMP Audio Clock binding · 30b23968
      Lubomir Rintel authored
      The include file for input clock in the example was missing, breaking the
      validation.
      Signed-off-by: default avatarLubomir Rintel <lkundrak@v3.sk>
      Reported-by: default avatarRob Herring <robh+dt@kernel.org>
      Link: https://lore.kernel.org/r/20200605065258.567858-1-lkundrak@v3.skAcked-by: default avatarRob Herring <robh@kernel.org>
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      30b23968
    • Arnd Bergmann's avatar
      Input: adi - work around module name confict · 751ad34f
      Arnd Bergmann authored
      Making module name conflicts a fatal error breaks sparc64 allmodconfig:
      
      Error log:
      error: the following would cause module name conflict:
        drivers/char/adi.ko
        drivers/input/joystick/adi.ko
      
      Renaming one of the modules would solve the problem, but then cause other
      problems because neither of them is automatically loaded and changing
      the name is likely to break any setup that relies on manually loading
      it by name.
      
      As there is probably no sparc64 system with this kind of ancient joystick
      attached, work around it by adding a Kconfig dependency that forbids
      them from both being modules.  It is still possible to build the joystick
      driver if the sparc64 adi driver is built-in.
      Reported-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Acked-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Link: https://lore.kernel.org/r/20200609100643.1245061-1-arnd@arndb.deSigned-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      751ad34f
    • Linus Torvalds's avatar
      Merge tag 'f2fs-for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 42612e77
      Linus Torvalds authored
      Pull f2fs updates from Jaegeuk Kim:
       "In this round, we've added some knobs to enhance compression feature
        and harden testing environment. In addition, we've fixed several bugs
        reported from Android devices such as long discarding latency, device
        hanging during quota_sync, etc.
      
        Enhancements:
         - support lzo-rle algorithm
         - add two ioctls to release and reserve blocks for compression
         - support partial truncation/fiemap on compressed file
         - introduce sysfs entries to attach IO flags explicitly
         - add iostat trace point along with read io stat
      
        Bug fixes:
         - fix long discard latency
         - flush quota data by f2fs_quota_sync correctly
         - fix to recover parent inode number for power-cut recovery
         - fix lz4/zstd output buffer budget
         - parse checkpoint mount option correctly
         - avoid inifinite loop to wait for flushing node/meta pages
         - manage discard space correctly
      
        And some refactoring and clean up patches were added"
      
      * tag 'f2fs-for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (51 commits)
        f2fs: attach IO flags to the missing cases
        f2fs: add node_io_flag for bio flags likewise data_io_flag
        f2fs: remove unused parameter of f2fs_put_rpages_mapping()
        f2fs: handle readonly filesystem in f2fs_ioc_shutdown()
        f2fs: avoid utf8_strncasecmp() with unstable name
        f2fs: don't return vmalloc() memory from f2fs_kmalloc()
        f2fs: fix retry logic in f2fs_write_cache_pages()
        f2fs: fix wrong discard space
        f2fs: compress: don't compress any datas after cp stop
        f2fs: remove unneeded return value of __insert_discard_tree()
        f2fs: fix wrong value of tracepoint parameter
        f2fs: protect new segment allocation in expand_inode_data
        f2fs: code cleanup by removing ifdef macro surrounding
        f2fs: avoid inifinite loop to wait for flushing node pages at cp_error
        f2fs: flush dirty meta pages when flushing them
        f2fs: fix checkpoint=disable:%u%%
        f2fs: compress: fix zstd data corruption
        f2fs: add compressed/gc data read IO stat
        f2fs: fix potential use-after-free issue
        f2fs: compress: don't handle non-compressed data in workqueue
        ...
      42612e77
    • Linus Torvalds's avatar
      Merge tag 'exfat-for-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat · ad57a102
      Linus Torvalds authored
      Pull exfat update from Namjae Jeon:
       "Bug fixes:
         - Fix memory leak on mount failure with iocharset= option
         - Fix incorrect update of stream entry
         - Fix cluster range validation error
      
        Clean-ups:
         - Remove unused code and unneeded assignment
         - Rename variables in exfat structure as specification
         - Reorganize boot sector analysis code
         - Simplify exfat_utf8_d_hash and exfat_utf8_d_cmp()
         - Optimize exfat entry cache functions
         - Improve wording of EXFAT_DEFAULT_IOCHARSET config option
      
       New Feature:
         - Add boot region verification"
      
      * tag 'exfat-for-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat:
        exfat: Fix potential use after free in exfat_load_upcase_table()
        exfat: fix range validation error in alloc and free cluster
        exfat: fix incorrect update of stream entry in __exfat_truncate()
        exfat: fix memory leak in exfat_parse_param()
        exfat: remove unnecessary reassignment of p_uniname->name_len
        exfat: standardize checksum calculation
        exfat: add boot region verification
        exfat: separate the boot sector analysis
        exfat: redefine PBR as boot_sector
        exfat: optimize dir-cache
        exfat: replace 'time_ms' with 'time_cs'
        exfat: remove the assignment of 0 to bool variable
        exfat: Remove unused functions exfat_high_surrogate() and exfat_low_surrogate()
        exfat: Simplify exfat_utf8_d_hash() for code points above U+FFFF
        exfat: Improve wording of EXFAT_DEFAULT_IOCHARSET config option
        exfat: Use a more common logging style
        exfat: Simplify exfat_utf8_d_cmp() for code points above U+FFFF
      ad57a102
    • Linus Torvalds's avatar
      x86: use proper parentheses around new uaccess macro argument uses · 3beff76b
      Linus Torvalds authored
      __get_kernel_nofault() didn't have the parentheses around the use of
      'src' and 'dst' macro arguments, making the casts potentially do the
      wrong thing.
      
      The parentheses aren't necessary with the current very limited use in
      mm/access.c, but it's bad form, and future use-cases might have very
      unexpected errors as a result.
      
      Do the same for unsafe_copy_loop() while at it, although in that case it
      is an entirely internal x86 uaccess helper macro that isn't used
      anywhere else and any other use would be invalid anyway.
      
      Fixes: fa94111d ("x86: use non-set_fs based maccess routines")
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3beff76b
    • David Howells's avatar
      afs: Make afs_zap_data() static · c68421bb
      David Howells authored
      Make afs_zap_data() static as it's only used in the file in which it is
      defined.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      c68421bb
    • David Howells's avatar
      afs: Remove afs_zero_fid as it's not used · 4a06fa54
      David Howells authored
      Remove afs_zero_fid as it's not used.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      4a06fa54
    • David Howells's avatar
      afs: Fix debugging statements with %px to be %p · fed79fd7
      David Howells authored
      Fix a couple of %px to be %p in debugging statements.
      
      Fixes: e49c7b2f ("afs: Build an abstraction around an "operation" concept")
      Fixes: 8a070a96 ("afs: Detect cell aliases 1 - Cells with root volumes")
      Reported-by: default avatarKees Cook <keescook@chromium.org>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Reviewed-by: default avatarKees Cook <keescook@chromium.org>
      fed79fd7
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · d1e521ad
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "No new features this release. Mostly clean ups, restructuring and
        documentation.
      
         - Have ftrace_bug() show ftrace errors before the WARN, as the WARN
           will reboot the box before the error messages are printed if
           panic_on_warn is set.
      
         - Have traceoff_on_warn disable tracing sooner (before prints)
      
         - Write a message to the trace buffer that its being disabled when
           disable_trace_on_warning() is set.
      
         - Separate out synthetic events from histogram code to let it be used
           by other parts of the kernel.
      
         - More documentation on histogram design.
      
         - Other small fixes and clean ups"
      
      * tag 'trace-v5.8' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing: Remove obsolete PREEMPTIRQ_EVENTS kconfig option
        tracing/doc: Fix ascii-art in histogram-design.rst
        tracing: Add a trace print when traceoff_on_warning is triggered
        ftrace,bug: Improve traceoff_on_warn
        selftests/ftrace: Distinguish between hist and synthetic event checks
        tracing: Move synthetic events to a separate file
        tracing: Fix events.rst section numbering
        tracing/doc: Fix typos in histogram-design.rst
        tracing: Add hist_debug trace event files for histogram debugging
        tracing: Add histogram-design document
        tracing: Check state.disabled in synth event trace functions
        tracing/probe: reverse arguments to list_add
        tools/bootconfig: Add a summary of test cases and return error
        ftrace: show debugging information when panic_on_warn set
      d1e521ad
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-kunit-5.8-rc1' of... · 595a56ac
      Linus Torvalds authored
      Merge tag 'linux-kselftest-kunit-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull Kunit updates from Shuah Khan:
       "This consists of:
      
         - Several config fragment fixes from Anders Roxell to improve test
           coverage.
      
         - Improvements to kunit run script to use defconfig as default and
           restructure the code for config/build/exec/parse from Vitor Massaru
           Iha and David Gow.
      
         - Miscellaneous documentation warn fix"
      
      * tag 'linux-kselftest-kunit-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        security: apparmor: default KUNIT_* fragments to KUNIT_ALL_TESTS
        fs: ext4: default KUNIT_* fragments to KUNIT_ALL_TESTS
        drivers: base: default KUNIT_* fragments to KUNIT_ALL_TESTS
        lib: Kconfig.debug: default KUNIT_* fragments to KUNIT_ALL_TESTS
        kunit: default KUNIT_* fragments to KUNIT_ALL_TESTS
        kunit: Kconfig: enable a KUNIT_ALL_TESTS fragment
        kunit: Fix TabError, remove defconfig code and handle when there is no kunitconfig
        kunit: use KUnit defconfig by default
        kunit: use --build_dir=.kunit as default
        Documentation: test.h - fix warnings
        kunit: kunit_tool: Separate out config/build/exec/parse
      595a56ac
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-5.8-rc1' of... · fc2fb38c
      Linus Torvalds authored
      Merge tag 'linux-kselftest-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest updates from Shuah Khan:
       "This consists of:
      
         - Several fixes from Masami Hiramatsu to improve coverage for lib and
           sysctl tests.
      
         - Clean up to vdso test and a new test for getcpu() from Mark Brown.
      
         - Add new gen_tar selftests Makefile target generate selftest package
           running "make gen_tar" in selftests directory from Veronika
           Kabatova.
      
         - Other miscellaneous fixes to timens, exec, tpm2 tests"
      
      * tag 'linux-kselftest-5.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests/sysctl: Make sysctl test driver as a module
        selftests/sysctl: Fix to load test_sysctl module
        lib: Make test_sysctl initialized as module
        lib: Make prime number generator independently selectable
        selftests/ftrace: Return unsupported if no error_log file
        selftests/ftrace: Use printf for backslash included command
        selftests/timens: handle a case when alarm clocks are not supported
        Kernel selftests: Add check if TPM devices are supported
        selftests: vdso: Add a selftest for vDSO getcpu()
        selftests: vdso: Use a header file to prototype parse_vdso API
        selftests: vdso: Rename vdso_test to vdso_test_gettimeofday
        selftests/exec: Verify execve of non-regular files fail
        selftests: introduce gen_tar Makefile target
      fc2fb38c
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · a5ad5742
      Linus Torvalds authored
      Merge even more updates from Andrew Morton:
      
       - a kernel-wide sweep of show_stack()
      
       - pagetable cleanups
      
       - abstract out accesses to mmap_sem - prep for mmap_sem scalability work
      
       - hch's user acess work
      
      Subsystems affected by this patch series: debug, mm/pagemap, mm/maccess,
      mm/documentation.
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (93 commits)
        include/linux/cache.h: expand documentation over __read_mostly
        maccess: return -ERANGE when probe_kernel_read() fails
        x86: use non-set_fs based maccess routines
        maccess: allow architectures to provide kernel probing directly
        maccess: move user access routines together
        maccess: always use strict semantics for probe_kernel_read
        maccess: remove strncpy_from_unsafe
        tracing/kprobes: handle mixed kernel/userspace probes better
        bpf: rework the compat kernel probe handling
        bpf:bpf_seq_printf(): handle potentially unsafe format string better
        bpf: handle the compat string in bpf_trace_copy_string better
        bpf: factor out a bpf_trace_copy_string helper
        maccess: unify the probe kernel arch hooks
        maccess: remove probe_read_common and probe_write_common
        maccess: rename strnlen_unsafe_user to strnlen_user_nofault
        maccess: rename strncpy_from_unsafe_strict to strncpy_from_kernel_nofault
        maccess: rename strncpy_from_unsafe_user to strncpy_from_user_nofault
        maccess: update the top of file comment
        maccess: clarify kerneldoc comments
        maccess: remove duplicate kerneldoc comments
        ...
      a5ad5742
    • Oleg Nesterov's avatar
      uprobes: ensure that uprobe->offset and ->ref_ctr_offset are properly aligned · 013b2deb
      Oleg Nesterov authored
      uprobe_write_opcode() must not cross page boundary; prepare_uprobe()
      relies on arch_uprobe_analyze_insn() which should validate "vaddr" but
      some architectures (csky, s390, and sparc) don't do this.
      
      We can remove the BUG_ON() check in prepare_uprobe() and validate the
      offset early in __uprobe_register(). The new IS_ALIGNED() check matches
      the alignment check in arch_prepare_kprobe() on supported architectures,
      so I think that all insns must be aligned to UPROBE_SWBP_INSN_SIZE.
      
      Another problem is __update_ref_ctr() which was wrong from the very
      beginning, it can read/write outside of kmap'ed page unless "vaddr" is
      aligned to sizeof(short), __uprobe_register() should check this too.
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Suggested-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: default avatarOleg Nesterov <oleg@redhat.com>
      Reviewed-by: default avatarSrikar Dronamraju <srikar@linux.vnet.ibm.com>
      Acked-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
      Tested-by: default avatarSven Schnelle <svens@linux.ibm.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      013b2deb
    • Luis Chamberlain's avatar
      include/linux/cache.h: expand documentation over __read_mostly · 4fa72523
      Luis Chamberlain authored
      __read_mostly can easily be misused by folks, its not meant for just
      read-only data.  There are performance reasons for using it, but we also
      don't provide any guidance about its use.  Provide a bit more guidance
      over its use.
      Signed-off-by: default avatarLuis Chamberlain <mcgrof@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Reviewed-by: default avatarKees Cook <keescook@chromium.org>
      Acked-by: default avatarChristoph Lameter <cl@linux.com>
      Acked-by: default avatarRafael Aquini <aquini@redhat.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Matthew Wilcox <willy@infradead.org>
      Link: http://lkml.kernel.org/r/20200507161424.2584-1-mcgrof@kernel.orgSigned-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4fa72523