1. 13 Nov, 2017 11 commits
    • Arnd Bergmann's avatar
      /proc/module: fix building without kallsyms · e4a8ca3b
      Arnd Bergmann authored
      As reported by kernelci and other build bots, we now get a link
      failure without CONFIG_KALLSYMS:
      
        module.c:(.text+0xf2c): undefined reference to `kallsyms_show_value'
      
      This adds a dummy helper with the same name that can be used
      for compilation. It's not entirely clear to me what this
      should return for !CONFIG_KALLSYMS, I picked an unconditional
      'false', which leads to the module address being unavailable
      to user space.
      
      Link: https://kernelci.org/build/mainline/branch/master/kernel/v4.14-5-g516fb7f2e73d/
      Fixes: 516fb7f2 ("/proc/module: use the same logic as /proc/kallsyms for address exposure")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      e4a8ca3b
    • Arnd Bergmann's avatar
      kallsyms: fix building without printk · 01c313dd
      Arnd Bergmann authored
      Building kallsyms fails without CONFIG_PRINTK due to a missing
      declaration:
      
        kernel/kallsyms.c: In function 'kallsyms_show_value':
        kernel/kallsyms.c:670:10: error: 'kptr_restrict' undeclared (first use in this function); did you mean 'keyring_restrict'?
      
      This moves the declaration outside of the #ifdef guard, the definition
      is already available without CONFIG_PRINTK.
      
      Fixes: c0f3ea15 ("stop using '%pK' for /proc/kallsyms pointer values")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      [ I clearly need to start doing "allnoconfig" builds too, or just have a
        test branch for the 0day robot - Linus ]
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      01c313dd
    • Linus Torvalds's avatar
      Merge tag 'regmap-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · 37c6b6f2
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "After several quiet kernel releases we've got a couple of new features
        in regmap, support for using hwspinlocks as the lock for the internal
        data structures and a helper for polling on regmap_fields. The Kconfig
        dependencies on hwspinlocks were annoyingly difficult to squash
        between things behaving surprisingly and randconfig, I could've
        squashed those commits down but might've have caused hassle with other
        trees trying to use the new support.
      
         - support for using a hwspinlock to protect the regmap
      
         - an iopoll style helper for regmap_field"
      
      * tag 'regmap-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: Fix unused warning
        regmap: Try to work around Kconfig exploding on HWSPINLOCK
        regmap: Clean up hwspinlock on regmap exit
        regmap: Also protect hwspinlock in error handling path
        regmap: Add a config option for hwspinlock
        regmap: Add hardware spinlock support
        regmap: avoid -Wint-in-bool-context warning
        regmap: add iopoll-like polling macro for regmap_field
        regmap: constify regmap_bus structures
        regmap: Avoid namespace collision within macro & tidy up
      37c6b6f2
    • Linus Torvalds's avatar
      Merge tag 'spi-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · e75427c6
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "This release is almost entirely driver changes, there's a couple of
        fixes in the core but otherwise it's all drivers:
      
         - fix for mixed dynamic and static bus number assignment.
      
         - fixes for some leaks arising from confusing lifetime rules during
           device unregistration and improved documentation to try to help
           avoid this in the future.
      
         - fixes to make the native chip select support for i.MX usable.
      
         - slave mode support for i.MX.
      
         - support for Coldfire MCF5441x DSPI, Renesas R8A7443/5 and
           Spreadtrum ADI"
      
      * tag 'spi-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (31 commits)
        spi: imx: Don't require platform data chipselect array
        spi: imx: Fix failure path leak on GPIO request error
        spi: imx: GPIO based chip selects should not be required
        spi: sh-msiof: remove redundant pointer dev
        spi: s3c64xx: remove redundant pointer sci
        spi: spi-fsl-dspi: enabling Coldfire mcf5441x dspi
        spi: fix IDR collision on systems with both fixed and dynamic SPI bus numbers
        spi: orion: remove redundant assignment of status to zero
        spi: sh-msiof: Fix DMA transfer size check
        spi: imx: Fix failure path leak on GPIO request error
        spi: spi-axi: fix potential use-after-free after deregistration
        spi: document odd controller reference handling
        spi: fix use-after-free at controller deregistration
        spi: sprd: Fix the possible negative value of BIT()
        spi: sprd-adi: fix platform_no_drv_owner.cocci warnings
        spi: a3700: Change SPI mode before asserting chip-select
        spi: tegra114: correct register name in definition
        spi: spreadtrum adi: add hwspinlock dependency
        spi: sh-msiof: Use of_device_get_match_data() helper
        spi: rspi: Use of_device_get_match_data() helper
        ...
      e75427c6
    • Linus Torvalds's avatar
      Merge tag 'regulator-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 5f194bf4
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "A very quiet release for regulator, there's some new device support in
        existing drivers here and a few fixes but nothing in the core.
      
        Summary:
      
         - New device support for Allwinner AXP813, Dialog DA223/4/5 and
           Qualcomm PMI8994"
      
      * tag 'regulator-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        regulator: tps65218: remove unused tps_info structure
        regulator: tps65218: Fix strobe assignment
        regulator: qcom_spmi: Include offset when translating voltages
        regulator: qcom_spmi: Add support for pmi8994
        regulator: da9211: update for supporting da9223/4/5
        ASoC: pfuze100: Remove leading zero from '@08' notation
        regulator: axp20x: Simplify axp20x_is_polyphase_slave implementation
        regulator: axp20x: Add support for AXP813 regulators
      5f194bf4
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v4.15' of... · 1e19bded
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon updates from Guenter Roeck:
      
       - drivers for MAX31785 and MAX6621
      
       - support for AMD family 17h (Ryzen, Threadripper) temperature sensors
      
       - various driver cleanups and minor improvements
      
      * tag 'hwmon-for-linus-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (30 commits)
        dt-bindings: pmbus: Add Maxim MAX31785 documentation
        pmbus: Add driver for Maxim MAX31785 Intelligent Fan Controller
        hwmon: (aspeed-pwm-tacho) Sort headers
        hwmon: (xgene) Minor clean up of ifdef and acpi_match_table reference
        hwmon: (max6621) Inverted if condition in max6621_read()
        hwmon: (asc7621) remove redundant assignment to newval
        hwmon: (xgene) Support hwmon v2
        hwmon: (gpio-fan) Fix null pointer dereference at probe
        hwmon: (gpio-fan) Convert to use GPIO descriptors
        hwmon: (gpio-fan) Rename GPIO line state variables
        hwmon: (gpio-fan) Get rid of the gpio alarm struct
        hwmon: (gpio-fan) Get rid of platform data struct
        hwmon: (gpio-fan) Mandate OF_GPIO and cut pdata path
        hwmon: (gpio-fan) Send around device pointer
        hwmon: (gpio-fan) Localize platform data
        hwmon: (gpio-fan) Use local variable pointers
        hwmon: (gpio-fan) Move DT bindings to the right place
        Documentation: devicetree: add max6621 device
        hwmon: (max6621) Add support for Maxim MAX6621 temperature sensor
        hwmon: (w83793) make const array watchdog_minors static, reduces object code size
        ...
      1e19bded
    • Linus Torvalds's avatar
      Merge tag 'edac_for_4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 1ec16991
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
       "The usual pile of bugfixes, cleanups and minor driver enhancements.
      
        Worth noting are the changes to ghes_edac to use a whitelist of
        known-good platforms on which GHES error reporting works relatively
        reliably. By Toshi Kani and Borislav Petkov"
      
      * tag 'edac_for_4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC, sb_edac: Fix missing break in switch
        MAINTAINERS: Split Cavium EDAC entry and add myself
        EDAC, sb_edac: Fix missing DIMM sysfs entries with KNL SNC2/SNC4 mode
        EDAC, skx_edac: Handle systems with segmented PCI busses
        EDAC, thunderx: Remove suspend/resume support
        EDAC, skx_edac: Fix detection of single-rank DIMMs
        EDAC, sb_edac: Don't create a second memory controller if HA1 is not present
        EDAC: Add owner check to the x86 platform drivers
        EDAC: Add helper which returns the loaded platform driver
        EDAC, ghes: Add platform check
        EDAC, ghes: Model a single, logical memory controller
        EDAC, ghes: Remove symbol exports
        EDAC: Handle return value of kasprintf()
      1ec16991
    • Linus Torvalds's avatar
      Merge tag 'docs-4.15' of git://git.lwn.net/linux · 7832681b
      Linus Torvalds authored
      Pull documentation updates from Jonathan Corbet:
       "A relatively calm cycle for the docs tree again.
      
        - The old driver statement has been added to the kernel docs.
      
        - We have a couple of new helper scripts. find-unused-docs.sh from
          Sayli Karnic will point out kerneldoc comments that are not actually
          used in the documentation. Jani Nikula's
          documentation-file-ref-check finds references to non-existing files.
      
        - A new ftrace document from Steve Rostedt.
      
        - Vinod Koul converted the dmaengine docs to RST
      
        Beyond that, it's mostly simple fixes.
      
        This set reaches outside of Documentation/ a bit more than most. In
        all cases, the changes are to comment docs, mostly from Randy, in
        places where there didn't seem to be anybody better to take them"
      
      * tag 'docs-4.15' of git://git.lwn.net/linux: (52 commits)
        documentation: fb: update list of available compiled-in fonts
        MAINTAINERS: update DMAengine documentation location
        dmaengine: doc: ReSTize pxa_dma doc
        dmaengine: doc: ReSTize dmatest doc
        dmaengine: doc: ReSTize client API doc
        dmaengine: doc: ReSTize provider doc
        dmaengine: doc: Add ReST style dmaengine document
        ftrace/docs: Add documentation on how to use ftrace from within the kernel
        bug-hunting.rst: Fix an example and a typo in a Sphinx tag
        scripts: Add a script to find unused documentation
        samples: Convert timers to use timer_setup()
        documentation: kernel-api: add more info on bitmap functions
        Documentation: fix selftests related file refs
        Documentation: fix ref to power basic-pm-debugging
        Documentation: fix ref to trace stm content
        Documentation: fix ref to coccinelle content
        Documentation: fix ref to workqueue content
        Documentation: fix ref to sphinx/kerneldoc.py
        Documentation: fix locking rt-mutex doc refs
        docs: dev-tools: correct Coccinelle version number
        ...
      7832681b
    • Linus Torvalds's avatar
      /proc/module: use the same logic as /proc/kallsyms for address exposure · 516fb7f2
      Linus Torvalds authored
      The (alleged) users of the module addresses are the same: kernel
      profiling.
      
      So just expose the same helper and format macros, and unify the logic.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      516fb7f2
    • Linus Torvalds's avatar
      modules: make sysfs attribute files readable by owner only · 277642dc
      Linus Torvalds authored
      This code goes back to the historical bitkeeper tree commit 3f7b0672
      ("Module section offsets in /sys/module"), where Jonathan Corbet wanted
      to show people how to debug loadable modules.
      
      See
      
          https://lwn.net/Articles/88052/
      
      from June 2004.
      
      To expose the required load address information, Jonathan added the
      sections subdirectory for every module in /sys/modules, and made them
      S_IRUGO - readable by everybody.
      
      It was a more innocent time, plus those S_IRxxx macro names are a lot
      more confusing than the octal numbers are, so maybe it wasn't even
      intentional.  But here we are, thirteen years later, and I'll just change
      it to S_IRUSR instead.
      
      Let's see if anybody even notices.
      
      Cc: Jonathan Corbet <corbet@lwn.net>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      277642dc
    • Linus Torvalds's avatar
      Merge branch 'kallsyms-restrictions' · 9d560410
      Linus Torvalds authored
      Merge /proc/kallsyms pointer value restrictions.
      
      Instead of using %pK, and making it about root access (at the wrong
      time, no less), make the whole choice of whether to show the actual
      pointer value be very explicit to the kallsyms code.
      
      In particular, we can now default to not doing so, and yet avoid
      annoying kernel profiling by actually looking at whether kernel
      profiling is allowed or not (by default it is not).
      
      This is all mostly preparation for the real "let's stop leaking kernel
      addresses" work that Tobin Harding is working on.
      
      Small steps.
      
      * kallsyms-restrictions:
        stop using '%pK' for /proc/kallsyms pointer values
      9d560410
  2. 12 Nov, 2017 4 commits
    • Randy Dunlap's avatar
      modpost: detect modules without a MODULE_LICENSE · ba1029c9
      Randy Dunlap authored
      Partially revert commit 2fa36568 ("kbuild: soften MODULE_LICENSE
      check") so that modpost detects modules that do not have a
      MODULE_LICENSE.
      
      Sam's commit also changed the fatal error to a warning, which I am
      leaving as is.
      
      This gives advance notice of when a module has no license and will taint
      the kernel if the module is loaded.
      
      This produces the following warnings on x86_64 allmodconfig:
      
          MODPOST 6520 modules
        WARNING: modpost: missing MODULE_LICENSE() in drivers/auxdisplay/img-ascii-lcd.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/gpio/gpio-ath79.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/gpio/gpio-iop.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/iio/accel/kxsd9-i2c.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/iio/adc/qcom-vadc-common.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/media/platform/mtk-vcodec/mtk-vcodec-common.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/media/platform/soc_camera/soc_scale_crop.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/mtd/nand/denali_pci.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/net/phy/cortina.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/pinctrl/pxa/pinctrl-pxa2xx.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/power/reset/zx-reboot.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/rpmsg/qcom_glink_native.o
        WARNING: modpost: missing MODULE_LICENSE() in drivers/staging/comedi/drivers/ni_atmio.o
        WARNING: modpost: missing MODULE_LICENSE() in net/9p/9pnet_xen.o
        WARNING: modpost: missing MODULE_LICENSE() in sound/soc/codecs/snd-soc-pcm512x-spi.o
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Cc: Sam Ravnborg <sam@ravnborg.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ba1029c9
    • Linus Torvalds's avatar
      Linux 4.14 · bebc6082
      Linus Torvalds authored
      bebc6082
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 152bbb43
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A set of small fixes:
      
         - make KGDB work again which got broken by the conversion of WARN()
           to #UD. The WARN fixup needs to run before the notifier callchain,
           otherwise KGDB tries to handle it and crashes.
      
         - disable KASAN in the ORC unwinder to prevent false positive KASAN
           warnings
      
         - prevent default mapping above 47bit when 5 level page tables are
           enabled
      
         - make the delay calibration optimization work correctly, which had
           the conditionals the wrong way around and was operating on data
           which was not yet updated.
      
         - remove the bogus X86_TRAP_BP trap init from the default IDT init
           table, which broke 32bit int3 handling by overwriting the correct
           int3 setup.
      
         - replace this_cpu* with boot_cpu_data access in the preemptible
           oprofile init code"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/debug: Handle warnings before the notifier chain, to fix KGDB crash
        x86/mm: Fix ELF_ET_DYN_BASE for 5-level paging
        x86/idt: Remove X86_TRAP_BP initialization in idt_setup_traps()
        x86/oprofile/ppro: Do not use __this_cpu*() in preemptible context
        x86/unwind: Disable KASAN checking in the ORC unwinder
        x86/smpboot: Make optimization of delay calibration work correctly
      152bbb43
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 69581c74
      Linus Torvalds authored
      Pull perf tool fixes from Thomas Gleixner:
       "A small set of fixes for perf tool:
      
         - synchronize the i915 drm header to avoid the 'out of date' warning
      
         - make sure that perf trace cleans up its temporary files on exit
      
         - unbreak the build with newer flex versions
      
         - add missing braces in the eBPF parsing rules"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tooling/headers: Sync the tools/include/uapi/drm/i915_drm.h UAPI header
        perf trace: Call machine__exit() at exit
        perf tools: Fix eBPF event specification parsing
        perf tools: Add "reject" option for parse-events.l
      69581c74
  3. 11 Nov, 2017 8 commits
  4. 10 Nov, 2017 17 commits