aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlavio Cruz <flaviocruz@gmail.com>2022-12-06 00:33:41 -0500
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2022-12-06 21:27:53 +0100
commitc925ed9fd3bf4d4fb8a3e6306cda19040cd54627 (patch)
treebb974414bebe35c7dfa24e0396425d1fd5f3d19a
parent2a7263559572f178322451a6a1e0a43dc90cdb32 (diff)
downloadgnumach-c925ed9fd3bf4d4fb8a3e6306cda19040cd54627.tar.gz
gnumach-c925ed9fd3bf4d4fb8a3e6306cda19040cd54627.tar.bz2
gnumach-c925ed9fd3bf4d4fb8a3e6306cda19040cd54627.zip
Define vm_size_t and vm_offset_t as __mach_uintptr_t.
This allows *printf to use %zd/%zu/%zx to print vm_size_t and vm_offset_t. Warnings using the incorrect specifiers were fixed. Note that MACH_PORT_NULL became just 0 because GCC thinks that we were comparing a pointer to a character (due to it being an unsigned int) so I removed the explicit cast. Message-Id: <Y47UNdcUF35Ag4Vw@reue>
-rw-r--r--device/ds_routines.c2
-rw-r--r--i386/i386/io_map.c2
-rw-r--r--i386/i386at/autoconf.c2
-rw-r--r--i386/i386at/com.c8
-rw-r--r--i386/i386at/lpr.c2
-rw-r--r--i386/include/mach/i386/vm_types.h4
-rw-r--r--i386/intel/pmap.c6
-rw-r--r--include/mach/port.h2
-rw-r--r--kern/ipc_kobject.c2
-rw-r--r--vm/vm_fault.c2
-rw-r--r--vm/vm_map.c8
11 files changed, 20 insertions, 20 deletions
diff --git a/device/ds_routines.c b/device/ds_routines.c
index c883aec7..ba233a91 100644
--- a/device/ds_routines.c
+++ b/device/ds_routines.c
@@ -1501,7 +1501,7 @@ device_map(
static void
ds_no_senders(mach_no_senders_notification_t *notification)
{
- printf("ds_no_senders called! device_port=0x%lx count=%d\n",
+ printf("ds_no_senders called! device_port=0x%zx count=%d\n",
notification->not_header.msgh_remote_port,
notification->not_count);
}
diff --git a/i386/i386/io_map.c b/i386/i386/io_map.c
index 96062243..3e45f316 100644
--- a/i386/i386/io_map.c
+++ b/i386/i386/io_map.c
@@ -49,7 +49,7 @@ io_map(
*/
start = kernel_virtual_start;
kernel_virtual_start += round_page(size);
- printf("stealing kernel virtual addresses %08lx-%08lx\n", start, kernel_virtual_start);
+ printf("stealing kernel virtual addresses %08zx-%08zx\n", start, kernel_virtual_start);
}
else {
(void) kmem_alloc_pageable(kernel_map, &start, round_page(size));
diff --git a/i386/i386at/autoconf.c b/i386/i386at/autoconf.c
index 0b1251f5..8dc0b3ea 100644
--- a/i386/i386at/autoconf.c
+++ b/i386/i386at/autoconf.c
@@ -133,7 +133,7 @@ void take_dev_irq(
printf("The device below will clobber IRQ %d (%p).\n", pic, ivect[pic]);
printf("You have two devices at the same IRQ.\n");
printf("This won't work. Reconfigure your hardware and try again.\n");
- printf("%s%d: port = %lx, spl = %ld, pic = %d.\n",
+ printf("%s%d: port = %zx, spl = %zd, pic = %d.\n",
dev->name, dev->unit, dev->address,
dev->sysdep, dev->sysdep1);
while (1);
diff --git a/i386/i386at/com.c b/i386/i386at/com.c
index d5842d8f..8bd80206 100644
--- a/i386/i386at/com.c
+++ b/i386/i386at/com.c
@@ -235,7 +235,7 @@ comattach(struct bus_device *dev)
}
take_dev_irq(dev);
- printf(", port = %lx, spl = %ld, pic = %d. (DOS COM%d)",
+ printf(", port = %zx, spl = %zu, pic = %d. (DOS COM%d)",
dev->address, dev->sysdep, dev->sysdep1, unit+1);
/* comcarrier[unit] = addr->flags;*/
@@ -861,11 +861,11 @@ void compr_addr(vm_offset_t addr)
/* The two line_stat prints may show different values, since
* touching some of the registers constitutes changing them.
*/
- printf("LINE_STAT(%lu) %x\n",
+ printf("LINE_STAT(%zu) %x\n",
LINE_STAT(addr), inb(LINE_STAT(addr)));
- printf("TXRX(%lu) %x, INTR_ENAB(%lu) %x, INTR_ID(%lu) %x, LINE_CTL(%lu) %x,\n\
-MODEM_CTL(%lu) %x, LINE_STAT(%lu) %x, MODEM_STAT(%lu) %x\n",
+ printf("TXRX(%zu) %x, INTR_ENAB(%zu) %x, INTR_ID(%zu) %x, LINE_CTL(%zu) %x,\n\
+MODEM_CTL(%zu) %x, LINE_STAT(%zu) %x, MODEM_STAT(%zu) %x\n",
TXRX(addr), inb(TXRX(addr)),
INTR_ENAB(addr), inb(INTR_ENAB(addr)),
INTR_ID(addr), inb(INTR_ID(addr)),
diff --git a/i386/i386at/lpr.c b/i386/i386at/lpr.c
index 9b55a5f2..7cef127c 100644
--- a/i386/i386at/lpr.c
+++ b/i386/i386at/lpr.c
@@ -98,7 +98,7 @@ void lprattach(struct bus_device *dev)
}
take_dev_irq(dev);
- printf(", port = %lx, spl = %ld, pic = %d.",
+ printf(", port = %zx, spl = %zd, pic = %d.",
dev->address, dev->sysdep, dev->sysdep1);
lprinfo[unit] = dev;
diff --git a/i386/include/mach/i386/vm_types.h b/i386/include/mach/i386/vm_types.h
index a50665c8..86e8563a 100644
--- a/i386/include/mach/i386/vm_types.h
+++ b/i386/include/mach/i386/vm_types.h
@@ -72,7 +72,7 @@ typedef unsigned long long_natural_t;
* A vm_offset_t is a type-neutral pointer,
* e.g. an offset into a virtual memory space.
*/
-typedef unsigned long vm_offset_t;
+typedef __mach_uintptr_t vm_offset_t;
typedef vm_offset_t * vm_offset_array_t;
/*
@@ -94,7 +94,7 @@ typedef unsigned long long rpc_phys_addr_t;
* expressing the difference between two
* vm_offset_t entities.
*/
-typedef unsigned long vm_size_t;
+typedef __mach_uintptr_t vm_size_t;
typedef vm_size_t * vm_size_array_t;
/*
diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
index 0f2ad641..00a18402 100644
--- a/i386/intel/pmap.c
+++ b/i386/intel/pmap.c
@@ -1973,13 +1973,13 @@ void pmap_enter(
phys_addr_t old_pa;
assert(pa != vm_page_fictitious_addr);
- if (pmap_debug) printf("pmap(%lx, %llx)\n", v, (unsigned long long) pa);
+ if (pmap_debug) printf("pmap(%zx, %llx)\n", v, (unsigned long long) pa);
if (pmap == PMAP_NULL)
return;
#if !MACH_KDB
if (pmap == kernel_pmap && (v < kernel_virtual_start || v >= kernel_virtual_end))
- panic("pmap_enter(%lx, %llx) falls in physical memory area!\n", v, (unsigned long long) pa);
+ panic("pmap_enter(%zx, %llx) falls in physical memory area!\n", v, (unsigned long long) pa);
#endif
#if !(__i486__ || __i586__ || __i686__)
if (pmap == kernel_pmap && (prot & VM_PROT_WRITE) == 0
@@ -2036,7 +2036,7 @@ Retry:
* Would have to enter the new page-table page in
* EVERY pmap.
*/
- panic("pmap_expand kernel pmap to %#lx", v);
+ panic("pmap_expand kernel pmap to %#zx", v);
}
/*
diff --git a/include/mach/port.h b/include/mach/port.h
index caa6b713..e38be614 100644
--- a/include/mach/port.h
+++ b/include/mach/port.h
@@ -70,7 +70,7 @@ typedef int *rpc_signature_info_t;
* that a port right was present, but it died.
*/
-#define MACH_PORT_NULL ((mach_port_t) 0)
+#define MACH_PORT_NULL 0 /* works with both user and kernel ports */
#define MACH_PORT_DEAD ((mach_port_t) ~0)
#define MACH_PORT_VALID(name) \
diff --git a/kern/ipc_kobject.c b/kern/ipc_kobject.c
index 5ced4037..cb6fe592 100644
--- a/kern/ipc_kobject.c
+++ b/kern/ipc_kobject.c
@@ -327,7 +327,7 @@ ipc_kobject_destroy(
default:
#if MACH_ASSERT
- printf("ipc_kobject_destroy: port 0x%p, kobj 0x%lx, type %d\n",
+ printf("ipc_kobject_destroy: port 0x%p, kobj 0x%zd, type %d\n",
port, port->ip_kobject, ip_kotype(port));
#endif /* MACH_ASSERT */
break;
diff --git a/vm/vm_fault.c b/vm/vm_fault.c
index df7b2c41..e1dfb06e 100644
--- a/vm/vm_fault.c
+++ b/vm/vm_fault.c
@@ -652,7 +652,7 @@ vm_fault_return_t vm_fault_page(
m->offset + object->paging_offset,
PAGE_SIZE, access_required)) != KERN_SUCCESS) {
if (object->pager && rc != MACH_SEND_INTERRUPTED)
- printf("%s(0x%p, 0x%p, 0x%lx, 0x%x, 0x%x) failed, %x\n",
+ printf("%s(0x%p, 0x%p, 0x%zx, 0x%x, 0x%x) failed, %x\n",
"memory_object_data_request",
object->pager,
object->pager_request,
diff --git a/vm/vm_map.c b/vm/vm_map.c
index 0dec1f20..ceeb91ee 100644
--- a/vm/vm_map.c
+++ b/vm/vm_map.c
@@ -694,7 +694,7 @@ vm_map_find_entry_anywhere(struct vm_map *map,
if (himask + max != 0) {
/* high bits do not continue up to the end */
- printf("invalid mask %lx\n", mask);
+ printf("invalid mask %zx\n", mask);
return NULL;
}
@@ -737,7 +737,7 @@ restart:
max_size = size + mask;
if (max_size < size) {
- printf("max_size %lx got smaller than size %lx with mask %lx\n",
+ printf("max_size %zd got smaller than size %zd with mask %zd\n",
max_size, size, mask);
goto error;
}
@@ -773,7 +773,7 @@ restart:
assert(end <= (entry->vme_end + entry->gap_size));
if (end > max) {
/* Does not respect the allowed maximum */
- printf("%lx does not respect %lx\n", end, max);
+ printf("%zx does not respect %zx\n", end, max);
return NULL;
}
*startp = start;
@@ -939,7 +939,7 @@ vm_map_pmap_enter(
if (vm_map_pmap_enter_print) {
printf("vm_map_pmap_enter:");
- printf("map: %p, addr: %lx, object: %p, offset: %lx\n",
+ printf("map: %p, addr: %zx, object: %p, offset: %zx\n",
map, addr, object, offset);
}