于 2011年11月24日 11:01, KAMEZAWA Hiroyuki 写道:
On Wed, 23 Nov 2011 21:46:39 -0500
KOSAKI Motohiro<kosaki.motohiro@xxxxxxxxxxxxxx> wrote:
+ while (index< end) {
+ ret = shmem_getpage(inode, index,&page, SGP_WRITE, NULL);
If the 'page' for index exists before this call, this will return the page without
allocaton.
Then, the page may not be zero-cleared. I think the page should be zero-cleared.
No. fallocate shouldn't destroy existing data. It only ensure
subsequent file access don't make ENOSPC error.
FALLOC_FL_KEEP_SIZE
This flag allocates and initializes to zero the disk space
within the range specified by offset and len. ....
just manual is unclear ? it seems that the range [offset, offset+len) is
zero cleared after the call.
I think we should fix the man page, because at least ext4 doesn't clear
the original contents,
% echo hi > /tmp/foobar
% fallocate -n -l 1 -o 10 /tmp/foobar
% hexdump -Cv /tmp/foobar
00000000 68 69 0a |hi.|
00000003
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>