Hi Allison, Currently, punch hole flushes all pages to disk and releases pages in page cache, and then calls ext4_ext_map_blocks. Assume that if a new page in the punching's range is mapped after releasing pages and before down_write i_data_sem, then ext4_ext_map_blocks will release map info of the page in extent tree. However, up layers does not know this, and they think the page is mapped. I can not find how punch hole handle the situation above. Could you shed a light on it? -- Best Wishes Yongqiang Yang -- 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