(Reported by Leah Neukirchen.)
We routinely read some very large things on almost every invocation (available_filter_functions, kallmodsyms, module.ranges etc). We are doing all this with the default stdio buffer size, which is 1K. We should at least be using PAGE_SIZE: using more than that is risky for /proc but for stuff read out of /lib/modules etc we should probably go all the way to 64K.
This is a bit fiddly since it means we need to manage the stdio buffer lifetimes ourselves, so it's worth trying on one big one in /proc first to see if it has any effect. But it might well be worthwhile in the upcoming performance push.
(Reported by Leah Neukirchen.)
We routinely read some very large things on almost every invocation (available_filter_functions, kallmodsyms, module.ranges etc). We are doing all this with the default stdio buffer size, which is 1K. We should at least be using PAGE_SIZE: using more than that is risky for /proc but for stuff read out of /lib/modules etc we should probably go all the way to 64K.
This is a bit fiddly since it means we need to manage the stdio buffer lifetimes ourselves, so it's worth trying on one big one in /proc first to see if it has any effect. But it might well be worthwhile in the upcoming performance push.