jim owens wrote: > Dave Chinner wrote: > > >The point of this SYNC flag is to ensure that you get nothing other > >than blocks mapped to disk - no delalloc regions, etc. The only sane > >way to do that is an atomic 'sync+map' operation. This is not a > >filesystem specific feature - it's what the SYNC flag should be > >defined as providing. > > If the real need is to force allocation then the flag should > be something like FIEMAP_FLAG_ALLOC and not need to do fsync > or any data flush, just ensure there is assigned storage. See also the huge time for fsync on ext3 in some circumstances (and why they had to patch Firefox 3 because of it). On ext3, FIEMAP_FLAG_ALLOC would be a no-op, but sync can take a long time. If the utilities using FIEMAP just need "no delalloc extents", they really should use an ALLOC flag, if only because forcing writeback, which may take a long time, is not what they are trying to accomplish. -- Jamie -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html