Messages in this thread | | | Date | Tue, 27 Mar 2007 13:47:00 -0700 | From | Andrew Morton <> | Subject | Re: [patch resend v4] update ctime and mtime for mmaped write |
| |
On 27 Mar 2007 16:09:33 -0400 linux@horizon.com wrote:
> What part of "The msync() function writes all modified data to > permanent storage locations [...] For mappings to files, the msync() > function ensures that all write operations are completed as defined > for synchronised I/O data integrity completion." suggests that it's not > supposed to do disk I/O? How is that uselessly vague? >
Because for MS_ASYNC, "msync() shall return immediately once all the write operations are initiated or queued for servicing".
ie: the writes can complete one millisecond or one week later. We chose 30 seconds.
And this is not completely fatuous - before 2.6.17, MAP_SHARED pages could float about in memory in a dirty state for arbitrarily long periods - potentially for the entire application lifetime. It was quite reasonable for our MS_ASYNC implementation to do what it did: tell the VM about the dirtiness of these pages so they get written back soon.
Post-2.6.17 we preserved that behaviour. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |