Page MenuHomeFreeBSD

D21272.id60905.diff
No OneTemporary

D21272.id60905.diff

Index: head/sys/vm/vm_reserv.c
===================================================================
--- head/sys/vm/vm_reserv.c
+++ head/sys/vm/vm_reserv.c
@@ -316,7 +316,8 @@
for (segind = 0; segind < vm_phys_nsegs; segind++) {
seg = &vm_phys_segs[segind];
paddr = roundup2(seg->start, VM_LEVEL_0_SIZE);
- while (paddr + VM_LEVEL_0_SIZE <= seg->end) {
+ while (paddr + VM_LEVEL_0_SIZE > paddr && paddr +
+ VM_LEVEL_0_SIZE <= seg->end) {
rv = &vm_reserv_array[paddr >> VM_LEVEL_0_SHIFT];
fullpop += rv->popcnt == VM_LEVEL_0_NPAGES;
paddr += VM_LEVEL_0_SIZE;
@@ -1055,7 +1056,8 @@
for (segind = 0; segind < vm_phys_nsegs; segind++) {
seg = &vm_phys_segs[segind];
paddr = roundup2(seg->start, VM_LEVEL_0_SIZE);
- while (paddr + VM_LEVEL_0_SIZE <= seg->end) {
+ while (paddr + VM_LEVEL_0_SIZE > paddr && paddr +
+ VM_LEVEL_0_SIZE <= seg->end) {
rv = &vm_reserv_array[paddr >> VM_LEVEL_0_SHIFT];
rv->pages = PHYS_TO_VM_PAGE(paddr);
rv->domain = seg->domain;

File Metadata

Mime Type
text/plain
Expires
Sat, Nov 15, 8:27 AM (3 h, 29 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25321193
Default Alt Text
D21272.id60905.diff (1007 B)

Event Timeline