From 818dca5f6e64e5db7ff40c860a17b8a6bbe1af30 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Thu, 4 Jan 2007 23:51:02 +0000 Subject: 2006-12-30 Richard Braun Add alignment support in the zone allocator. * kern/zalloc.c (ALIGN_SIZE_UP): New macro. (zinit): New `align' parameter. (zget_space): Likewise. (zalloc): Updated call to zget_space() with the zone alignment. * kern/zalloc.h (zone): New member `align'. (zinit): Declaration updated as required. * device/dev_lookup.c (dev_lookup_init): Updated call to zinit() with alignment of 0. * device/dev_pager.c (dev_pager_hash_init): Likewise. (device_pager_init): Likewise. * device/ds_routines.c (ds_init): Likewise. (ds_trap_init): Likewise. * device/net_io.c (net_io_init): Likewise. * i386/i386/fpu.c (fpu_module_init): Likewise. * i386/i386/pcb.c (pcb_module_init): Likewise. * i386/intel/pmap.c (pmap_init): Likewise. * ipc/ipc_init.c (ipc_bootstrap): Likewise. * ipc/ipc_marequest.c (ipc_marequest_init): Likewise. * kern/act.c (global_act_init): Likewise. * kern/kalloc.c (kalloc_init): Likewise. * kern/processor.c (pset_sys_init): Likewise. * kern/task.c (task_init): Likewise. * kern/thread.c (thread_init): Likewise. * kern/zalloc.c (zone_bootstrap): Likewise. * vm/vm_external.c (vm_external_module_initialize): Likewise. * vm/vm_fault.c (vm_fault_init): Likewise. * vm/vm_map.c (vm_map_init): Likewise. * vm/vm_object.c (vm_object_bootstrap): Likewise. * vm/vm_resident.c (vm_page_module_init): Likewise. --- device/dev_lookup.c | 2 +- device/dev_pager.c | 2 ++ device/ds_routines.c | 4 ++-- device/net_io.c | 2 ++ 4 files changed, 7 insertions(+), 3 deletions(-) (limited to 'device') diff --git a/device/dev_lookup.c b/device/dev_lookup.c index 746c394b..3243a2c2 100644 --- a/device/dev_lookup.c +++ b/device/dev_lookup.c @@ -401,7 +401,7 @@ dev_lookup_init() simple_lock_init(&dev_port_lock); - dev_hdr_zone = zinit(sizeof(struct mach_device), + dev_hdr_zone = zinit(sizeof(struct mach_device), 0, sizeof(struct mach_device) * NDEVICES, PAGE_SIZE, FALSE, diff --git a/device/dev_pager.c b/device/dev_pager.c index 26263302..6779d8e7 100644 --- a/device/dev_pager.c +++ b/device/dev_pager.c @@ -174,6 +174,7 @@ void dev_pager_hash_init(void) size = sizeof(struct dev_pager_entry); dev_pager_hash_zone = zinit( size, + 0, size * 1000, PAGE_SIZE, FALSE, @@ -727,6 +728,7 @@ void device_pager_init(void) */ size = sizeof(struct dev_pager); dev_pager_zone = zinit(size, + 0, (vm_size_t) size * 1000, PAGE_SIZE, FALSE, diff --git a/device/ds_routines.c b/device/ds_routines.c index 303d6f74..0abd75bf 100644 --- a/device/ds_routines.c +++ b/device/ds_routines.c @@ -1471,7 +1471,7 @@ void ds_init() */ device_io_map->wait_for_space = TRUE; - io_inband_zone = zinit(sizeof(io_buf_ptr_inband_t), + io_inband_zone = zinit(sizeof(io_buf_ptr_inband_t), 0, 1000 * sizeof(io_buf_ptr_inband_t), 10 * sizeof(io_buf_ptr_inband_t), FALSE, @@ -1519,7 +1519,7 @@ zone_t io_trap_zone; void ds_trap_init(void) { - io_trap_zone = zinit(IOTRAP_REQSIZE, + io_trap_zone = zinit(IOTRAP_REQSIZE, 0, 256 * IOTRAP_REQSIZE, 16 * IOTRAP_REQSIZE, FALSE, diff --git a/device/net_io.c b/device/net_io.c index 71d92b46..b565aa3f 100644 --- a/device/net_io.c +++ b/device/net_io.c @@ -1494,6 +1494,7 @@ net_io_init() size = sizeof(struct net_rcv_port); net_rcv_zone = zinit(size, + 0, size * 1000, PAGE_SIZE, FALSE, @@ -1501,6 +1502,7 @@ net_io_init() size = sizeof(struct net_hash_entry); net_hash_entry_zone = zinit(size, + 0, size * 100, PAGE_SIZE, FALSE, -- cgit v1.2.3