大きなテキストファイルをawkで処理するときにcatで投げ込むと速い理由のような事象が発生する原因についての推察。
自信はあまりない!
- __do_page_cache_readaheadは、次にreadaheadを実行すべきページについてのみReadaheadフラグをたてる
- 次にreadaheadを実行すべきページ「以降の全てのページ」ではない
- do_generic_file_readはReadaheadフラグの立っているページをreadするタイミングでpage_cache_async_readaheadを呼ぶ
- page_cache_async_readaheadはBDI_sync_congestedが立っている場合はreadaheadしない