# git rev-parse -q --verify 7d3bf613e99abbd96ac7b90ee3694a246c975021^{commit} 7d3bf613e99abbd96ac7b90ee3694a246c975021 already have revision, skipping fetch # git checkout -q -f -B kisskb 7d3bf613e99abbd96ac7b90ee3694a246c975021 # git clean -qxdf # < git log -1 # commit 7d3bf613e99abbd96ac7b90ee3694a246c975021 # Merge: a381884 930218a # Author: Linus Torvalds # Date: Fri Jun 8 17:21:52 2018 -0700 # # Merge tag 'libnvdimm-for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm # # Pull libnvdimm updates from Dan Williams: # "This adds a user for the new 'bytes-remaining' updates to # memcpy_mcsafe() that you already received through Ingo via the # x86-dax- for-linus pull. # # Not included here, but still targeting this cycle, is support for # handling memory media errors (poison) consumed via userspace dax # mappings. # # Summary: # # - DAX broke a fundamental assumption of truncate of file mapped # pages. The truncate path assumed that it is safe to disconnect a # pinned page from a file and let the filesystem reclaim the physical # block. With DAX the page is equivalent to the filesystem block. # Introduce dax_layout_busy_page() to enable filesystems to wait for # pinned DAX pages to be released. Without this wait a filesystem # could allocate blocks under active device-DMA to a new file. # # - DAX arranges for the block layer to be bypassed and uses # dax_direct_access() + copy_to_iter() to satisfy read(2) calls. # However, the memcpy_mcsafe() facility is available through the pmem # block driver. In order to safely handle media errors, via the DAX # block-layer bypass, introduce copy_to_iter_mcsafe(). # # - Fix cache management policy relative to the ACPI NFIT Platform # Capabilities Structure to properly elide cache flushes when they # are not necessary. The table indicates whether CPU caches are # power-fail protected. Clarify that a deep flush is always performed # on REQ_{FUA,PREFLUSH} requests" # # * tag 'libnvdimm-for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: (21 commits) # dax: Use dax_write_cache* helpers # libnvdimm, pmem: Do not flush power-fail protected CPU caches # libnvdimm, pmem: Unconditionally deep flush on *sync # libnvdimm, pmem: Complete REQ_FLUSH => REQ_PREFLUSH # acpi, nfit: Remove ecc_unit_size # dax: dax_insert_mapping_entry always succeeds # libnvdimm, e820: Register all pmem resources # libnvdimm: Debug probe times # linvdimm, pmem: Preserve read-only setting for pmem devices # x86, nfit_test: Add unit test for memcpy_mcsafe() # pmem: Switch to copy_to_iter_mcsafe() # dax: Report bytes remaining in dax_iomap_actor() # dax: Introduce a ->copy_to_iter dax operation # uio, lib: Fix CONFIG_ARCH_HAS_UACCESS_MCSAFE compilation # xfs, dax: introduce xfs_break_dax_layouts() # xfs: prepare xfs_break_layouts() for another layout type # xfs: prepare xfs_break_layouts() to be called with XFS_MMAPLOCK_EXCL # mm, fs, dax: handle layout changes to pinned dax mappings # mm: fix __gup_device_huge vs unmap # mm: introduce MEMORY_DEVICE_FS_DAX and CONFIG_DEV_PAGEMAP_OPS # ... # < /opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-gcc --version # < git log --format=%s --max-count=1 7d3bf613e99abbd96ac7b90ee3694a246c975021 # < make -s -j 80 ARCH=arm O=/kisskb/build/linus_pleb_defconfig_arm CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi- pleb_defconfig # make -s -j 80 ARCH=arm O=/kisskb/build/linus_pleb_defconfig_arm CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi- /kisskb/src/net/Makefile:24: CC cannot link executables. Skipping bpfilter. :1332:2: warning: #warning syscall io_pgetevents not implemented [-Wcpp] /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:183:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c: In function 'proc_reg_open': /kisskb/src/include/linux/list.h:65:12: warning: 'pdeo' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c:340:21: note: 'pdeo' was declared here /kisskb/src/net/Makefile:24: CC cannot link executables. Skipping bpfilter. Completed OK # rm -rf /kisskb/build/linus_pleb_defconfig_arm # Build took: 0:00:32.720064