Page MenuHomeFreeBSD

D5623.1784826966.diff
No OneTemporary

Size
2 KB
Referenced Files
None
Subscribers
None

D5623.1784826966.diff

Index: sys/mips/include/param.h
===================================================================
--- sys/mips/include/param.h
+++ sys/mips/include/param.h
@@ -146,12 +146,14 @@
#define SEGSHIFT (PAGE_SHIFT + NPTEPGSHIFT + NPDEPGSHIFT)
#define NBSEG (1ul << SEGSHIFT)
#define PDRSHIFT (PAGE_SHIFT + NPTEPGSHIFT)
+#define PDRSIZE (1ul << PDRSHIFT)
#define PDRMASK ((1 << PDRSHIFT) - 1)
#else
#define NPDEPGSHIFT 10 /* LOG2(NPTEPG) */
#define SEGSHIFT (PAGE_SHIFT + NPTEPGSHIFT)
#define NBSEG (1 << SEGSHIFT) /* bytes/segment */
#define PDRSHIFT SEGSHIFT /* alias for SEG in 32 bit */
+#define PDRSIZE (1ul << PDRSHIFT)
#define PDRMASK ((1 << PDRSHIFT) - 1)
#endif
#define NBPDR (1 << PDRSHIFT) /* bytes/pagedir */
Index: sys/mips/mips/pmap.c
===================================================================
--- sys/mips/mips/pmap.c
+++ sys/mips/mips/pmap.c
@@ -3388,18 +3388,18 @@
{
vm_offset_t superpage_offset;
- if (size < NBSEG)
+ if (size < PDRSIZE)
return;
if (object != NULL && (object->flags & OBJ_COLORED) != 0)
offset += ptoa(object->pg_color);
- superpage_offset = offset & SEGMASK;
- if (size - ((NBSEG - superpage_offset) & SEGMASK) < NBSEG ||
- (*addr & SEGMASK) == superpage_offset)
+ superpage_offset = offset & PDRMASK;
+ if (size - ((PDRSIZE - superpage_offset) & PDRMASK) < PDRSIZE ||
+ (*addr & PDRMASK) == superpage_offset)
return;
- if ((*addr & SEGMASK) < superpage_offset)
- *addr = (*addr & ~SEGMASK) + superpage_offset;
+ if ((*addr & PDRMASK) < superpage_offset)
+ *addr = (*addr & ~PDRMASK) + superpage_offset;
else
- *addr = ((*addr + SEGMASK) & ~SEGMASK) + superpage_offset;
+ *addr = ((*addr + PDRMASK) & ~PDRMASK) + superpage_offset;
}
#ifdef DDB
Index: sys/mips/mips/pmap_mips64.c
===================================================================
--- sys/mips/mips/pmap_mips64.c
+++ sys/mips/mips/pmap_mips64.c
@@ -5243,18 +5243,18 @@
{
vm_offset_t superpage_offset;
- if (size < NBSEG)
+ if (size < PDRSIZE)
return;
if (object != NULL && (object->flags & OBJ_COLORED) != 0)
offset += ptoa(object->pg_color);
- superpage_offset = offset & SEGMASK;
- if (size - ((NBSEG - superpage_offset) & SEGMASK) < NBSEG ||
- (*addr & SEGMASK) == superpage_offset)
+ superpage_offset = offset & PDRMASK;
+ if (size - ((PDRSIZE - superpage_offset) & PDRMASK) < PDRSIZE ||
+ (*addr & PDRMASK) == superpage_offset)
return;
- if ((*addr & SEGMASK) < superpage_offset)
- *addr = (*addr & ~SEGMASK) + superpage_offset;
+ if ((*addr & PDRMASK) < superpage_offset)
+ *addr = (*addr & ~PDRMASK) + superpage_offset;
else
- *addr = ((*addr + SEGMASK) & ~SEGMASK) + superpage_offset;
+ *addr = ((*addr + PDRMASK) & ~PDRMASK) + superpage_offset;
}
#ifdef DDB

File Metadata

Mime Type
text/plain
Expires
Thu, Jul 23, 5:16 PM (1 h, 43 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29240489
Default Alt Text
D5623.1784826966.diff (2 KB)

Event Timeline