svn commit: r319627 - head/sys/vm
Alan Cox
alc at FreeBSD.org
Tue Jun 6 16:52:08 UTC 2017
Author: alc
Date: Tue Jun 6 16:52:07 2017
New Revision: 319627
URL: https://svnweb.freebsd.org/changeset/base/319627
Log:
Starting in r118390, swaponsomething() began to reserve the blocks at the
beginning of a swap area for a disk label. However, neither r118390 nor
r118544, which increased the reservation from one to two blocks, correctly
accounted for these blocks when updating the variable "swap_pager_avail".
This change corrects that error.
Reviewed by: kib
MFC after: 5 days
Modified:
head/sys/vm/swap_pager.c
Modified: head/sys/vm/swap_pager.c
==============================================================================
--- head/sys/vm/swap_pager.c Tue Jun 6 16:04:27 2017 (r319626)
+++ head/sys/vm/swap_pager.c Tue Jun 6 16:52:07 2017 (r319627)
@@ -2203,7 +2203,7 @@ swaponsomething(struct vnode *vp, void *id, u_long nbl
sp->sw_end = dvbase + nblks;
TAILQ_INSERT_TAIL(&swtailq, sp, sw_list);
nswapdev++;
- swap_pager_avail += nblks;
+ swap_pager_avail += nblks - 2;
swap_total += (vm_ooffset_t)nblks * PAGE_SIZE;
swapon_check_swzone(swap_total / PAGE_SIZE);
swp_sizecheck();
More information about the svn-src-all
mailing list