Page MenuHomeFreeBSD

swap_pager: fix seek_data with invalid first page
ClosedPublic

Authored by dougm on Nov 26 2024, 6:06 PM.
Tags
None
Referenced Files
F107428931: D47767.diff
Tue, Jan 14, 1:02 AM
Unknown Object (File)
Sat, Jan 11, 12:39 PM
Unknown Object (File)
Sat, Jan 11, 10:00 AM
Unknown Object (File)
Mon, Jan 6, 10:29 AM
Unknown Object (File)
Mon, Jan 6, 7:38 AM
Unknown Object (File)
Mon, Jan 6, 1:05 AM
Unknown Object (File)
Sun, Jan 5, 9:56 PM
Unknown Object (File)
Sun, Dec 29, 9:30 PM
Subscribers

Details

Summary

Correct swap_pager_seek_data so that, when the first lookup finds no valid pages, second and subsequent lookups are attempted anyway.

This was broken by db08b0b04deced766c3b5f07bcfb82333666226c.

Test Plan

marklmi@yahoo.com reported the problem, and reports that this change resolved it.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

dougm requested review of this revision.Nov 26 2024, 6:06 PM
dougm created this revision.
dougm added a reviewer: markj.
This revision is now accepted and ready to land.Nov 26 2024, 6:11 PM

This was broken by db08b0b04deced766c3b5f07bcfb82333666226c.

In mail thread, @des suggests that the problem exists on stable/14 as well, but the above-mentioned commit is not present there, so at least one of the two claims is wrong. Which one is it?

In mail thread, @des suggests that the problem exists on stable/14 as well,

No, I said it occurs in a 14 jail on a 15 host. It does not occur in a 13 jail because 13's install(1) does not use copy_file_range(2) and therefore does not trip over the bug in the host's 15 kernel.