Skip to content
  1. Apr 07, 2018
    • Oliver O'Halloran's avatar
      libnvdimm: Add of_node to region and bus descriptors · 1ff19f48
      Oliver O'Halloran authored
      
      
      We want to be able to cross reference the region and bus devices
      with the device tree node that they were spawned from. libNVDIMM
      handles creating the actual devices for these internally, so we
      need to pass in a pointer to the relevant node in the descriptor.
      
      Signed-off-by: default avatarOliver O'Halloran <oohall@gmail.com>
      Acked-by: default avatarDan Williams <dan.j.williams@intel.com>
      Acked-by: default avatarBalbir Singh <bsingharora@gmail.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      1ff19f48
    • Dan Williams's avatar
      libnvdimm, region: quiet region probe · 60ce0f93
      Dan Williams authored
      
      
      The message about constraining number of online cpus to be less than or
      equal to ND_MAX_LANES (256) is only useful for block-aperture
      configurations and BTT. Make it debug since it is only relevant when
      debugging performance.
      
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      60ce0f93
    • Dan Williams's avatar
      libnvdimm, namespace: use a safe lookup for dimm device name · 4f867220
      Dan Williams authored
      
      
      The following NULL dereference results from incorrectly assuming that
      ndd is valid in this print:
      
        struct nvdimm_drvdata *ndd = to_ndd(&nd_region->mapping[i]);
      
        /*
         * Give up if we don't find an instance of a uuid at each
         * position (from 0 to nd_region->ndr_mappings - 1), or if we
         * find a dimm with two instances of the same uuid.
         */
        dev_err(&nd_region->dev, "%s missing label for %pUb\n",
                        dev_name(ndd->dev), nd_label->uuid);
      
       BUG: unable to handle kernel NULL pointer dereference at 0000000000000000
       IP: nd_region_register_namespaces+0xd67/0x13c0 [libnvdimm]
       PGD 0 P4D 0
       Oops: 0000 [#1] SMP PTI
       CPU: 43 PID: 673 Comm: kworker/u609:10 Not tainted 4.16.0-rc4+ #1
       [..]
       RIP: 0010:nd_region_register_namespaces+0xd67/0x13c0 [libnvdimm]
       [..]
       Call Trace:
        ? devres_add+0x2f/0x40
        ? devm_kmalloc+0x52/0x60
        ? nd_region_activate+0x9c/0x320 [libnvdimm]
        nd_region_probe+0x94/0x260 [libnvdimm]
        ? kernfs_add_one+0xe4/0x130
        nvdimm_bus_probe+0x63/0x100 [libnvdimm]
      
      Switch to using the nvdimm device directly.
      
      Fixes: 0e3b0d12 ("libnvdimm, namespace: allow multiple pmem...")
      Cc: <stable@vger.kernel.org>
      Reported-by: default avatarDave Jiang <dave.jiang@intel.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      4f867220
    • Dan Williams's avatar
      libnvdimm, dimm: fix dpa reservation vs uninitialized label area · c31898c8
      Dan Williams authored
      
      
      At initialization time the 'dimm' driver caches a copy of the memory
      device's label area and reserves address space for each of the
      namespaces defined.
      
      However, as can be seen below, the reservation occurs even when the
      index blocks are invalid:
      
       nvdimm nmem0: nvdimm_init_config_data: len: 131072 rc: 0
       nvdimm nmem0: config data size: 131072
       nvdimm nmem0: __nd_label_validate: nsindex0 labelsize 1 invalid
       nvdimm nmem0: __nd_label_validate: nsindex1 labelsize 1 invalid
       nvdimm nmem0: : pmem-6025e505: 0x1000000000 @ 0xf50000000 reserve <-- bad
      
      Gate dpa reservation on the presence of valid index blocks.
      
      Cc: <stable@vger.kernel.org>
      Fixes: 4a826c83 ("libnvdimm: namespace indices: read and validate")
      Reported-by: default avatarKrzysztof Rusocki <krzysztof.rusocki@intel.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      c31898c8
  2. Apr 06, 2018
  3. Apr 04, 2018
  4. Apr 03, 2018
  5. Mar 29, 2018
    • Dan Williams's avatar
      acpi, nfit: rework NVDIMM leaf method detection · 466d1493
      Dan Williams authored
      
      
      Some BIOSen do not handle 0-byte transfer lengths for the _LSR and _LSW
      (label storage read/write) methods. This causes Linux to fallback to the
      deprecated _DSM path, or otherwise disable label support.
      
      Introduce acpi_nvdimm_has_method() to detect whether a method is
      available rather than calling the method, require _LSI and _LSR to be
      paired, and require read support before enabling write support.
      
      Cc: <stable@vger.kernel.org>
      Fixes: 4b27db7e ("acpi, nfit: add support for the _LS...")
      Suggested-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      466d1493
  6. Mar 22, 2018
  7. Mar 16, 2018
  8. Mar 15, 2018
  9. Mar 07, 2018
  10. Mar 06, 2018
  11. Mar 05, 2018
    • Linus Torvalds's avatar
      Linux 4.16-rc4 · 661e50bc
      Linus Torvalds authored
      v4.16-rc4
      661e50bc
    • Linus Torvalds's avatar
      Merge branch 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e64b9562
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A small set of fixes for x86:
      
         - Add missing instruction suffixes to assembly code so it can be
           compiled by newer GAS versions without warnings.
      
         - Switch refcount WARN exceptions to UD2 as we did in general
      
         - Make the reboot on Intel Edison platforms work
      
         - A small documentation update so text and sample command match"
      
      * 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        Documentation, x86, resctrl: Make text and sample command match
        x86/platform/intel-mid: Handle Intel Edison reboot correctly
        x86/asm: Add instruction suffixes to bitops
        x86/entry/64: Add instruction suffix
        x86/refcounts: Switch to UD2 for exceptions
      e64b9562
    • Linus Torvalds's avatar
      Merge branch 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7225a442
      Linus Torvalds authored
      Pull x86/pti fixes from Thomas Gleixner:
       "Three fixes related to melted spectrum:
      
         - Sync the cpu_entry_area page table to initial_page_table on 32 bit.
      
           Otherwise suspend/resume fails because resume uses
           initial_page_table and triggers a triple fault when accessing the
           cpu entry area.
      
         - Zero the SPEC_CTL MRS on XEN before suspend to address a
           shortcoming in the hypervisor.
      
         - Fix another switch table detection issue in objtool"
      
      * 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/cpu_entry_area: Sync cpu_entry_area to initial_page_table
        objtool: Fix another switch table detection issue
        x86/xen: Zero MSR_IA32_SPEC_CTRL before suspend
      7225a442
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4c4ce302
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "A small set of fixes from the timer departement:
      
         - Add a missing timer wheel clock forward when migrating timers off a
           unplugged CPU to prevent operating on a stale clock base and
           missing timer deadlines.
      
         - Use the proper shift count to extract data from a register value to
           prevent evaluating unrelated bits
      
         - Make the error return check in the FSL timer driver work correctly.
           Checking an unsigned variable for less than zero does not really
           work well.
      
         - Clarify the confusing comments in the ARC timer code"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timers: Forward timer base before migrating timers
        clocksource/drivers/arc_timer: Update some comments
        clocksource/drivers/mips-gic-timer: Use correct shift count to extract data
        clocksource/drivers/fsl_ftm_timer: Fix error return checking
      4c4ce302
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ff8d5836
      Linus Torvalds authored
      Pull irq fixlet from Thomas Gleixner:
       "Just a documentation update for the missing device tree property of
        the R-Car M3N interrupt controller"
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        dt-bindings/irqchip/renesas-irqc: Document R-Car M3-N support
      ff8d5836
    • Linus Torvalds's avatar
      Merge tag 'for-4.16-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · af8c0816
      Linus Torvalds authored
      Pull btrfs fixes from David Sterba:
      
       - when NR_CPUS is large, a SRCU structure can significantly inflate
         size of the main filesystem structure that would not be possible to
         allocate by kmalloc, so the kvalloc fallback is used
      
       - improved error handling
      
       - fix endiannes when printing some filesystem attributes via sysfs,
         this is could happen when a filesystem is moved between different
         endianity hosts
      
       - send fixes: the NO_HOLE mode should not send a write operation for a
         file hole
      
       - fix log replay for for special files followed by file hardlinks
      
       - fix log replay failure after unlink and link combination
      
       - fix max chunk size calculation for DUP allocation
      
      * tag 'for-4.16-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        Btrfs: fix log replay failure after unlink and link combination
        Btrfs: fix log replay failure after linking special file and fsync
        Btrfs: send, fix issuing write op when processing hole in no data mode
        btrfs: use proper endianness accessors for super_copy
        btrfs: alloc_chunk: fix DUP stripe size handling
        btrfs: Handle btrfs_set_extent_delalloc failure in relocate_file_extent_cluster
        btrfs: handle failure of add_pending_csums
        btrfs: use kvzalloc to allocate btrfs_fs_info
      af8c0816
  12. Mar 04, 2018
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current-fixed' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 58bdf601
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "A driver fix and a documentation fix (which makes dependency handling
        for the next cycle easier)"
      
      * 'i2c/for-current-fixed' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: octeon: Prevent error message on bus error
        dt-bindings: at24: sort manufacturers alphabetically
      58bdf601
    • Linus Torvalds's avatar
      Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 20f14172
      Linus Torvalds authored
      Pull libnvdimm fixes from Dan Williams:
       "A 4.16 regression fix, three fixes for -stable, and a cleanup fix:
      
         - During the merge window support for the new ACPI NVDIMM Platform
           Capabilities structure disabled support for "deep flush", a
           force-unit- access like mechanism for persistent memory. Restore
           that mechanism.
      
         - VFIO like RDMA is yet one more memory registration / pinning
           interface that is incompatible with Filesystem-DAX. Disable long
           term pins of Filesystem-DAX mappings via VFIO.
      
         - The Filesystem-DAX detection to prevent long terms pins mistakenly
           also disabled Device-DAX pins which are not subject to the same
           block- map collision concerns.
      
         - Similar to the setup path, softlockup warnings can trigger in the
           shutdown path for large persistent memory namespaces. Teach
           for_each_device_pfn() to perform cond_resched() in all cases.
      
         - Boaz noticed that the might_sleep() in dax_direct_access() is stale
           as of the v4.15 kernel.
      
        These have received a build success notification from the 0day robot,
        and the longterm pin fixes have appeared in -next. However, I recently
        rebased the tree to remove some other fixes that need to be reworked
        after review feedback.
      
      * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        memremap: fix softlockup reports at teardown
        libnvdimm: re-enable deep flush for pmem devices via fsync()
        vfio: disable filesystem-dax page pinning
        dax: fix vma_is_fsdax() helper
        dax: ->direct_access does not sleep anymore
      20f14172
    • Linus Torvalds's avatar
      Merge tag 'kbuild-fixes-v4.16' of... · 0eb3412a
      Linus Torvalds authored
      Merge tag 'kbuild-fixes-v4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
      
      Pull Kbuild fixes from Masahiro Yamada:
      
       - suppress sparse warnings about unknown attributes
      
       - fix typos and stale comments
      
       - fix build error of arch/sh
      
       - fix wrong use of ld-option vs cc-ldoption
      
       - remove redundant GCC_PLUGINS_CFLAGS assignment
      
       - fix another memory leak of Kconfig
      
       - fix line number in error messages of Kconfig
      
       - do not write confusing CONFIG_DEFCONFIG_LIST out to .config
      
       - add xstrdup() to Kconfig to handle memory shortage errors
      
       - show also a Debian package name if ncurses is missing
      
      * tag 'kbuild-fixes-v4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        MAINTAINERS: take over Kconfig maintainership
        kconfig: fix line number in recursive inclusion error message
        Coccinelle: memdup: Fix typo in warning messages
        kconfig: Update ncurses package names for menuconfig
        kbuild/kallsyms: trivial typo fix
        kbuild: test --build-id linker flag by ld-option instead of cc-ldoption
        kbuild: drop superfluous GCC_PLUGINS_CFLAGS assignment
        kconfig: Don't leak choice names during parsing
        sh: fix build error for empty CONFIG_BUILTIN_DTB_SOURCE
        kconfig: set SYMBOL_AUTO to the symbol marked with defconfig_list
        kconfig: add xstrdup() helper
        kbuild: disable sparse warnings about unknown attributes
        Makefile: Fix lying comment re. silentoldconfig
      0eb3412a
    • Linus Torvalds's avatar
      Merge tag 'media/v4.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 7cf901b3
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
      
        - some build fixes with randconfigs
      
        - an m88ds3103 fix to prevent an OOPS if the chip doesn't provide the
          right version during probe (with can happen if the hardware hangs)
      
        - a potential out of array bounds reference in tvp5150
      
        - some fixes and improvements in the DVB memory mapped API (added for
          kernel 4.16)
      
      * tag 'media/v4.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        media: vb2: Makefile: place vb2-trace together with vb2-core
        media: Don't let tvp5150_get_vbi() go out of vbi_ram_default array
        media: dvb: update buffer mmaped flags and frame counter
        media: dvb: add continuity error indicators for memory mapped buffers
        media: dmxdev: Fix the logic that enables DMA mmap support
        media: dmxdev: fix error code for invalid ioctls
        media: m88ds3103: don't call a non-initalized function
        media: au0828: add VIDEO_V4L2 dependency
        media: dvb: fix DVB_MMAP dependency
        media: dvb: fix DVB_MMAP symbol name
        media: videobuf2: fix build issues with vb2-trace
        media: videobuf2: Add VIDEOBUF2_V4L2 Kconfig option for VB2 V4L2 part
      7cf901b3
    • Linus Torvalds's avatar
      Merge tag 'linux-watchdog-4.16-fixes-1' of git://www.linux-watchdog.org/linux-watchdog · d6d0972a
      Linus Torvalds authored
      Pull watchdog fixes from Wim Van Sebroeck:
      
       - rave-sp: add NVMEM dependency
      
       - build fixes for i6300esb_wdt, xen_wdt and sp5100_tco
      
      * tag 'linux-watchdog-4.16-fixes-1' of git://www.linux-watchdog.org/linux-watchdog:
        watchdog: sp5100_tco.c: fix potential build failure
        watchdog: xen_wdt: fix potential build failure
        watchdog: i6300esb: fix build failure
        watchdog: rave-sp: add NVMEM dependency
      d6d0972a
  13. Mar 03, 2018