summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/x86/machine/biosmem.c2
-rw-r--r--vm/vm_kmem.c2
-rw-r--r--vm/vm_object.c6
-rw-r--r--vm/vm_page.c24
-rw-r--r--vm/vm_page.h18
5 files changed, 25 insertions, 27 deletions
diff --git a/arch/x86/machine/biosmem.c b/arch/x86/machine/biosmem.c
index fc03614c..370c5615 100644
--- a/arch/x86/machine/biosmem.c
+++ b/arch/x86/machine/biosmem.c
@@ -712,7 +712,7 @@ biosmem_bootalloc(unsigned int nr_pages)
{
unsigned long addr, size;
- size = vm_page_ptoa(nr_pages);
+ size = vm_page_ptob(nr_pages);
if (size == 0) {
boot_panic(biosmem_panic_inval_msg);
diff --git a/vm/vm_kmem.c b/vm/vm_kmem.c
index dc204f85..101c9815 100644
--- a/vm/vm_kmem.c
+++ b/vm/vm_kmem.c
@@ -150,7 +150,7 @@ vm_kmem_alloc(size_t size)
error = pmap_enter(kernel_pmap, start, vm_page_to_pa(page),
VM_PROT_READ | VM_PROT_WRITE, PMAP_PEF_GLOBAL);
- if (error || (start - va == vm_page_ptoa(1000))) {
+ if (error || (start - va == vm_page_ptob(1000))) {
goto error;
}
}
diff --git a/vm/vm_object.c b/vm/vm_object.c
index 649d8577..679f3537 100644
--- a/vm/vm_object.c
+++ b/vm/vm_object.c
@@ -74,7 +74,7 @@ vm_object_insert(struct vm_object *object, struct vm_page *page,
goto error;
}
- error = rdxtree_insert(&object->pages, vm_page_atop(offset), page);
+ error = rdxtree_insert(&object->pages, vm_page_btop(offset), page);
if (error) {
goto error;
@@ -109,7 +109,7 @@ vm_object_remove(struct vm_object *object, uint64_t start, uint64_t end)
mutex_lock(&object->lock);
for (offset = start; offset < end; offset += PAGE_SIZE) {
- page = rdxtree_remove(&object->pages, vm_page_atop(offset));
+ page = rdxtree_remove(&object->pages, vm_page_btop(offset));
if (page == NULL) {
continue;
@@ -133,7 +133,7 @@ vm_object_lookup(struct vm_object *object, uint64_t offset)
llsync_read_enter();
do {
- page = rdxtree_lookup(&object->pages, vm_page_atop(offset));
+ page = rdxtree_lookup(&object->pages, vm_page_btop(offset));
if (page == NULL) {
break;
diff --git a/vm/vm_page.c b/vm/vm_page.c
index 7b0eb3e0..49c2c11e 100644
--- a/vm/vm_page.c
+++ b/vm/vm_page.c
@@ -266,13 +266,13 @@ vm_page_zone_free_to_buddy(struct vm_page_zone *zone, struct vm_page *page,
pa = page->phys_addr;
while (order < (VM_PAGE_NR_FREE_LISTS - 1)) {
- buddy_pa = pa ^ vm_page_ptoa(1 << order);
+ buddy_pa = pa ^ vm_page_ptob(1 << order);
if ((buddy_pa < zone->start) || (buddy_pa >= zone->end)) {
break;
}
- buddy = &zone->pages[vm_page_atop(buddy_pa - zone->start)];
+ buddy = &zone->pages[vm_page_btop(buddy_pa - zone->start)];
if (buddy->order != order) {
break;
@@ -281,8 +281,8 @@ vm_page_zone_free_to_buddy(struct vm_page_zone *zone, struct vm_page *page,
vm_page_free_list_remove(&zone->free_lists[order], buddy);
buddy->order = VM_PAGE_ORDER_UNLISTED;
order++;
- pa &= -vm_page_ptoa(1 << order);
- page = &zone->pages[vm_page_atop(pa - zone->start)];
+ pa &= -vm_page_ptob(1 << order);
+ page = &zone->pages[vm_page_btop(pa - zone->start)];
}
vm_page_free_list_insert(&zone->free_lists[order], page);
@@ -383,7 +383,7 @@ vm_page_zone_compute_pool_size(struct vm_page_zone *zone)
{
phys_addr_t size;
- size = vm_page_atop(vm_page_zone_size(zone)) / VM_PAGE_CPU_POOL_RATIO;
+ size = vm_page_btop(vm_page_zone_size(zone)) / VM_PAGE_CPU_POOL_RATIO;
if (size == 0) {
size = 1;
@@ -411,7 +411,7 @@ vm_page_zone_init(struct vm_page_zone *zone, phys_addr_t start, phys_addr_t end,
}
zone->pages = pages;
- zone->pages_end = pages + vm_page_atop(vm_page_zone_size(zone));
+ zone->pages_end = pages + vm_page_btop(vm_page_zone_size(zone));
mutex_init(&zone->lock);
for (i = 0; i < ARRAY_SIZE(zone->free_lists); i++) {
@@ -422,7 +422,7 @@ vm_page_zone_init(struct vm_page_zone *zone, phys_addr_t start, phys_addr_t end,
i = zone - vm_page_zones;
for (pa = zone->start; pa < zone->end; pa += PAGE_SIZE) {
- vm_page_init(&pages[vm_page_atop(pa - zone->start)], i, pa);
+ vm_page_init(&pages[vm_page_btop(pa - zone->start)], i, pa);
}
}
@@ -712,7 +712,7 @@ vm_page_setup(void)
nr_pages = 0;
for (i = 0; i < vm_page_zones_size; i++) {
- nr_pages += vm_page_atop(vm_page_boot_zone_size(&vm_page_boot_zones[i]));
+ nr_pages += vm_page_btop(vm_page_boot_zone_size(&vm_page_boot_zones[i]));
}
table_size = vm_page_round(nr_pages * sizeof(struct vm_page));
@@ -730,9 +730,9 @@ vm_page_setup(void)
zone = &vm_page_zones[i];
boot_zone = &vm_page_boot_zones[i];
vm_page_zone_init(zone, boot_zone->start, boot_zone->end, table);
- page = zone->pages + vm_page_atop(boot_zone->avail_start
+ page = zone->pages + vm_page_btop(boot_zone->avail_start
- boot_zone->start);
- end = zone->pages + vm_page_atop(boot_zone->avail_end
+ end = zone->pages + vm_page_btop(boot_zone->avail_end
- boot_zone->start);
while (page < end) {
@@ -741,7 +741,7 @@ vm_page_setup(void)
page++;
}
- table += vm_page_atop(vm_page_zone_size(zone));
+ table += vm_page_btop(vm_page_zone_size(zone));
}
while (va < (uintptr_t)table) {
@@ -783,7 +783,7 @@ vm_page_lookup(phys_addr_t pa)
zone = &vm_page_zones[i];
if ((pa >= zone->start) && (pa < zone->end)) {
- return &zone->pages[vm_page_atop(pa - zone->start)];
+ return &zone->pages[vm_page_btop(pa - zone->start)];
}
}
diff --git a/vm/vm_page.h b/vm/vm_page.h
index 4ca34209..70a0091a 100644
--- a/vm/vm_page.h
+++ b/vm/vm_page.h
@@ -41,18 +41,16 @@
#include <vm/vm_object_types.h>
/*
- * Address/page conversion and rounding macros (not inline functions to
+ * Byte/page conversion and rounding macros (not inline functions to
* be easily usable on both virtual and physical addresses, which may not
* have the same type size).
- *
- * TODO Rename btop and ptob.
*/
-#define vm_page_atop(addr) ((addr) >> PAGE_SHIFT)
-#define vm_page_ptoa(page) ((page) << PAGE_SHIFT)
-#define vm_page_trunc(addr) P2ALIGN(addr, PAGE_SIZE)
-#define vm_page_round(addr) P2ROUND(addr, PAGE_SIZE)
-#define vm_page_end(addr) P2END(addr, PAGE_SIZE)
-#define vm_page_aligned(addr) P2ALIGNED(addr, PAGE_SIZE)
+#define vm_page_btop(bytes) ((bytes) >> PAGE_SHIFT)
+#define vm_page_ptob(pages) ((pages) << PAGE_SHIFT)
+#define vm_page_trunc(bytes) P2ALIGN(bytes, PAGE_SIZE)
+#define vm_page_round(bytes) P2ROUND(bytes, PAGE_SIZE)
+#define vm_page_end(bytes) P2END(bytes, PAGE_SIZE)
+#define vm_page_aligned(bytes) P2ALIGNED(bytes, PAGE_SIZE)
/*
* Zone selectors.
@@ -109,7 +107,7 @@ void vm_page_set_type(struct vm_page *page, unsigned int order,
static inline unsigned int
vm_page_order(size_t size)
{
- return iorder2(vm_page_atop(vm_page_round(size)));
+ return iorder2(vm_page_btop(vm_page_round(size)));
}
static inline phys_addr_t