On Wed, Jul 31, 2013 at 08:46:45PM -0400, Theodore Ts'o wrote: > On Thu, Aug 01, 2013 at 10:23:41AM +1000, Dave Chinner wrote: > > On Wed, Jul 31, 2013 at 06:01:54PM -0400, Theodore Ts'o wrote: > > > Have you considered what happens if you have a 10 megabyte file, of > > > which the first 5 megs are mmap'ed into a userspace process. > > > > > > Now suppose you call COLLAPASE_RANGE on a one megabyte range starting > > > at offset 1024k from the beginning of the file. > > > > > > Does the right thing happen to the mmap'ed region in memory? > > > > Implementation detail. like a hole punch, it needs to invalidate the > > range that it is operating over so mmap()d regions are refaulted > > after the operation is done. > > It's not just the range that it's operating on, but also the region > beyond the range that's been collapsed out. Yes, that's part of "the range that it is operating over". > A quick eyeball of the patch didn't seem to show any code that handled > this, which is why I asked the question. Right, but really it's the least of the problems I've noticed - the XFS code is fundamentally broken in many ways - once I've finished commenting on it, I'll have a quick look to see if the ext4 code has the same fundamental flaws.... Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs