Linus Torvalds 4759d386d5 Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm
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
2017-01-01 12:27:05 -08:00
..
2016-12-14 20:42:45 -08:00
2016-12-16 11:23:34 -08:00
2016-11-17 23:19:00 +01:00
2016-12-19 08:16:26 -08:00
2016-12-15 12:03:32 -08:00
2016-12-14 10:49:33 -08:00
2016-12-15 16:03:25 -08:00
2016-09-14 20:37:50 +02:00
2016-12-13 11:10:36 -08:00
2016-12-15 12:46:48 -08:00
2016-12-22 22:58:37 -05:00
2016-10-19 14:34:36 -04:00
2016-12-14 10:49:33 -08:00
2016-12-08 13:31:11 -05:00
2016-12-17 21:27:44 -05:00
2016-10-25 11:08:28 +08:00
2016-12-08 16:37:33 -08:00
2016-09-27 21:20:53 -04:00
2016-12-13 11:18:24 -08:00
2016-10-07 18:46:30 -07:00
2016-12-05 19:01:16 -05:00
2016-12-13 11:42:18 -08:00
2016-12-13 11:42:18 -08:00
2016-10-28 08:48:16 -06:00
2016-11-25 10:15:13 -08:00
2016-12-05 19:01:16 -05:00
2016-12-05 18:58:32 -05:00
2016-12-15 13:49:34 -08:00
2016-12-25 17:21:22 +01:00
2016-12-25 17:21:22 +01:00
2016-11-30 14:36:01 +11:00
2016-09-14 09:18:09 -06:00
2016-09-20 23:20:32 +02:00
2016-12-14 20:12:43 -08:00
2016-12-16 09:26:42 -08:00
2016-12-12 18:55:06 -08:00
2016-12-25 17:21:23 +01:00
2016-09-27 12:33:47 +02:00
2016-11-17 08:24:48 -07:00
2016-12-06 11:05:46 +01:00
2016-12-16 00:13:41 +02:00
2016-11-26 11:18:02 -08:00
2016-12-08 13:18:35 -05:00
2016-11-16 18:32:02 -05:00
2016-12-19 17:29:44 -05:00
2016-12-12 18:55:07 -08:00
2016-11-10 17:03:35 +01:00
2016-12-06 10:17:03 +02:00
2016-12-15 12:46:48 -08:00
2016-12-15 12:46:48 -08:00
2016-12-08 14:21:47 -05:00
2016-10-31 16:18:30 -04:00
2016-10-14 11:36:59 -07:00
2016-12-13 11:42:18 -08:00
2016-12-13 11:42:18 -08:00
2016-09-27 21:52:00 -04:00
2016-12-13 16:07:55 -08:00
2016-11-15 16:34:27 -08:00
2016-09-20 04:43:36 -04:00
2016-10-31 15:45:18 -07:00
2016-12-25 17:21:22 +01:00
2016-09-06 18:30:20 +02:00
2016-10-05 18:23:36 -04:00
2016-12-25 17:21:22 +01:00
2016-12-09 22:12:21 -05:00
2016-12-12 18:55:08 -08:00
2016-12-25 17:21:22 +01:00