> @@ -1181,8 +1258,22 @@ page_ok: > * When a sequential read accesses a page several times, > * only mark it as accessed the first time. > */ > - if (prev_index != index || offset != prev_offset) > - mark_page_accessed(page); > + if (prev_index != index || offset != prev_offset) { > + int mode; > + > + mode = filemap_get_cache(mapping, index); > + switch (mode) { > + case FILEMAP_CACHE_NORMAL: > + mark_page_accessed(page); > + break; > + case FILEMAP_CACHE_ONCE: > + mark_page_usedonce(page); > + break; > + default: > + WARN_ON_ONCE(1); > + break; Here is generic_file_read, right? Why don't you care write and page fault? ÿôèº{.nÇ+?·?®??+%?Ëÿ±éݶ¥?wÿº{.nÇ+?·¥?{±ýûz÷¥þ)í?æèw*jg¬±¨¶????Ý¢jÿ¾«þG«?éÿ¢¸¢·¦j:+v?¨?wèjØm¶?ÿþø¯ù®w¥þ?àþf£¢·h??â?úÿ?Ù¥