On Wed, Aug 23, 2017 at 02:26:52PM -0700, rdodgen@xxxxxxxxx wrote: > From: Randy Dodgen <dodgen@xxxxxxxxxx> > > If an ext4 filesystem is mounted with both the DAX and read-only > options, executables on that filesystem will fail to start (claiming > 'Segmentation fault') due to the fault handler returning > VM_FAULT_SIGBUS. > > This is due to the DAX fault handler (see ext4_dax_huge_fault) > attempting to write to the journal when FAULT_FLAG_WRITE is set. This is > the wrong behavior for write faults which will lead to a COW page; in > particular, this fails for readonly mounts. > > This change avoids journal writes for faults that are expected to COW. > > It might be the case that this could be better handled in > ext4_iomap_begin / ext4_iomap_end (called via iomap_ops inside > dax_iomap_fault). These is some overlap already (e.g. grabbing journal > handles). > > Signed-off-by: Randy Dodgen <dodgen@xxxxxxxxxx> Cool, looks good from the DAX point of view. You can add: Reviewed-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>