Reducing vm_pageout_page_count when the machine has less than 8MB of
physical memory is pointless, since we haven't run on such machines in
ages.
Details
- Reviewers
kib markj - Commits
- rGf6ed52c1f010: vm: Stop reducing vm_pageout_page_count at startup
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
If making it const, what is the point of keeping it as a variable (4 bytes + accessing them in code) instead of pre-processor symbol? This would also remove some VLAs from the kernel.
Yes please, it's used to size some stack-allocated arrays. It should probably be defined using the preprocessor, if only because that's what we'd typically do today when reimplementing that code.
BTW, I believe that the current size (32) was tailored for the old MAXPHYS 128k value.
Do we want to utilize the full maxphys-sized writes (now default to 1M, tunable), or at least tweak the pageout size according to maxphys? If yes, then in fact making vm_pageout_page_count constant is not right, but we also need to remove VLAs.
Me too.
Do we want to utilize the full maxphys-sized writes (now default to 1M, tunable), or at least tweak the pageout size according to maxphys? If yes, then in fact making vm_pageout_page_count constant is not right, but we also need to remove VLAs.
Probably, but I'm not sure. It seems more likely to me that vm_object_page_collect_flush() would benefit, than vm_pageout_cluster(). Do we have any existing benchmarks?
For now, I propose to commit just the originally proposed change to vm_pageout_init(). Okay?