On Mon, Jun 20, 2011 at 02:29:24PM -0700, Joel Becker wrote: > Oh god you're making the world scary. Are you guaranteeing that > all allocation changes are locked out by the time we get into > file_aio_write() and file_aio_read()? This is not obvious to me. I have no idea how ocfs2's internal allocator locking works, but this patch doesn't change it. What this patch touches is exclusion between truncate and pending direct I/O requests, and even there only the implementation and not the semantics. The old and new semantics are that you may have either 1 ongoing truncate OR n (>= 0; <= ATOMIC_T_MAX) ongoing direct I/O reads or writes before that was enforced using the i_alloc_sem rw_semaphore, including non-owner releases of it from AIO code, in the new code it's done using a combination of i_mutex which was already taken in the truncate path, and when starting new direct I/O requests, and the new i_dio_count counter. > > Joel > > -- > > "Glory is fleeting, but obscurity is forever." > - Napoleon Bonaparte > > http://www.jlbec.org/ > jlbec@xxxxxxxxxxxx ---end quoted text--- -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html