| Summary: | swap | ||
|---|---|---|---|
| Product: | Base System | Reporter: | dancy <dancy> |
| Component: | kern | Assignee: | Matt Dillon <dillon> |
| Status: | Closed FIXED | ||
| Severity: | Affects Only Me | ||
| Priority: | Normal | ||
| Version: | 4.0-RELEASE | ||
| Hardware: | Any | ||
| OS: | Any | ||
|
Description
dancy
2000-07-29 00:10:01 UTC
Responsible Changed From-To: freebsd-bugs->dillon Matt's code, he'll know what questions to ask. ----Next_Part(Wed_Oct_11_03:50:20_2000)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit This problem is caused by incorrect calculation of nswap (by not taking the device stripe size into account). - Tor Egge ----Next_Part(Wed_Oct_11_03:50:20_2000)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Index: sys/vm/vm_swap.c =================================================================== RCS file: /home/ncvs/src/sys/vm/vm_swap.c,v retrieving revision 1.104 diff -u -r1.104 vm_swap.c --- sys/vm/vm_swap.c 2000/05/05 09:59:14 1.104 +++ sys/vm/vm_swap.c 2000/10/11 00:02:37 @@ -291,8 +291,8 @@ * DEV_BSIZE'd. */ - if (nblks * nswdev > nswap) - nswap = (nblks+1) * nswdev; + if ((nblks + dmmax) * nswdev > nswap) + nswap = (nblks + dmmax) * nswdev; if (swapblist == NULL) swapblist = blist_create(nswap); ----Next_Part(Wed_Oct_11_03:50:20_2000)---- State Changed From-To: open->closed Committed a patch substantially similar to Tor's suggestion to -STABLE. Will commit to -current momentarily. |