Date: Fri, 20 Oct 2017 02:52:59 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 223059] [patch] consider skipped 2 pages in sw_nblks and add size check before blist_alloc Message-ID: <bug-223059-8-lSgBArf9Hg@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-223059-8@https.bugs.freebsd.org/bugzilla/> References: <bug-223059-8@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D223059 --- Comment #2 from ota@j.email.ne.jp --- (In reply to Alan Cox from comment #1) I've seen 2 conditions when blist_alloc() failed massively. One case is when sizes of swap devices are imbalanced especially when one of them are significantly small or large, one or some of others gets filled. The other case is when more devices are added to avoid swap space exhaustio= n.=20 As soon as all existing devices are fulled, new ones will pick up all I/Os. In any cases, if a machine is busy swapping out pages, I also agree that failures of blist_alloc() are minor in performance as well. Also, blist_alloc needs to find a contentious region. Even if remaining blo= cks is more than requested, blist_alloc can fail due to fragmentation. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-223059-8-lSgBArf9Hg>