Revision 4759d386d55fef452d692bf101167914437e848e authored by Linus Torvalds on 01 January 2017, 20:27:05 UTC, committed by Linus Torvalds on 01 January 2017, 20:27:05 UTC
Pull DAX updates from Dan Williams:
 "The completion of Jan's DAX work for 4.10.

  As I mentioned in the libnvdimm-for-4.10 pull request, these are some
  final fixes for the DAX dirty-cacheline-tracking invalidation work
  that was merged through the -mm, ext4, and xfs trees in -rc1. These
  patches were prepared prior to the merge window, but we waited for
  4.10-rc1 to have a stable merge base after all the prerequisites were
  merged.

  Quoting Jan on the overall changes in these patches:

     "So I'd like all these 6 patches to go for rc2. The first three
      patches fix invalidation of exceptional DAX entries (a bug which
      is there for a long time) - without these patches data loss can
      occur on power failure even though user called fsync(2). The other
      three patches change locking of DAX faults so that ->iomap_begin()
      is called in a more relaxed locking context and we are safe to
      start a transaction there for ext4"

  These have received a build success notification from the kbuild
  robot, and pass the latest libnvdimm unit tests. There have not been
  any -next releases since -rc1, so they have not appeared there"

* 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
  ext4: Simplify DAX fault path
  dax: Call ->iomap_begin without entry lock during dax fault
  dax: Finish fault completely when loading holes
  dax: Avoid page invalidation races and unnecessary radix tree traversals
  mm: Invalidate DAX radix tree entries only if appropriate
  ext2: Return BH_New buffers for zeroed blocks
2 parent s 238d1d0 + 1db1754
History
File Mode Size
Kconfig -rw-r--r-- 3.3 KB
Makefile -rw-r--r-- 818 bytes
array.c -rw-r--r-- 19.8 KB
base.c -rw-r--r-- 83.6 KB
cmdline.c -rw-r--r-- 651 bytes
consoles.c -rw-r--r-- 2.2 KB
cpuinfo.c -rw-r--r-- 564 bytes
devices.c -rw-r--r-- 1.4 KB
fd.c -rw-r--r-- 7.7 KB
fd.h -rw-r--r-- 500 bytes
generic.c -rw-r--r-- 14.0 KB
inode.c -rw-r--r-- 12.4 KB
internal.h -rw-r--r-- 8.2 KB
interrupts.c -rw-r--r-- 1.1 KB
kcore.c -rw-r--r-- 15.6 KB
kmsg.c -rw-r--r-- 1.5 KB
loadavg.c -rw-r--r-- 1.1 KB
meminfo.c -rw-r--r-- 5.3 KB
namespaces.c -rw-r--r-- 4.1 KB
nommu.c -rw-r--r-- 3.2 KB
page.c -rw-r--r-- 6.9 KB
proc_net.c -rw-r--r-- 4.6 KB
proc_sysctl.c -rw-r--r-- 39.2 KB
proc_tty.c -rw-r--r-- 4.7 KB
root.c -rw-r--r-- 4.8 KB
self.c -rw-r--r-- 1.7 KB
softirqs.c -rw-r--r-- 993 bytes
stat.c -rw-r--r-- 5.6 KB
task_mmu.c -rw-r--r-- 41.7 KB
task_nommu.c -rw-r--r-- 7.2 KB
thread_self.c -rw-r--r-- 1.9 KB
uptime.c -rw-r--r-- 1.2 KB
version.c -rw-r--r-- 761 bytes
vmcore.c -rw-r--r-- 29.9 KB

back to top