Fix some style(9) and formatting problems. tabsize 4 formatting doesn't

look too great with 'more' etc.

Approved by: dyson (with a minor grumble :-)
This commit is contained in:
Peter Wemm 1997-09-21 11:41:12 +00:00
parent d95fc683ed
commit af866d9a23
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=29657
2 changed files with 119 additions and 101 deletions

View File

@ -18,7 +18,7 @@
* 5. Modifications may be freely made to this file if the above conditions
* are met.
*
* $Id: vm_zone.c,v 1.6 1997/09/01 03:17:32 bde Exp $
* $Id: vm_zone.c,v 1.7 1997/09/21 04:24:26 dyson Exp $
*/
#include <sys/param.h>
@ -65,7 +65,7 @@ int sysctl_vm_zone SYSCTL_HANDLER_ARGS;
* name name of zone.
* size size of zone entries.
* nentries number of zone entries allocated (only ZONE_INTERRUPT.)
* flags ZONE_INTERRUPT -- items can be allocated at interrupt time.
* flags ZONE_INTERRUPT -- items can be allocated at interrupt time.
* zalloc number of pages allocated when memory is needed.
*
* Note that when using ZONE_INTERRUPT, the size of the zone is limited
@ -75,7 +75,8 @@ int sysctl_vm_zone SYSCTL_HANDLER_ARGS;
*/
int
zinitna(vm_zone_t z, vm_object_t obj, char *name, int size,
int nentries, int flags, int zalloc) {
int nentries, int flags, int zalloc)
{
int totsize;
if ((z->zflags & ZONE_BOOT) == 0) {
@ -107,9 +108,8 @@ zinitna(vm_zone_t z, vm_object_t obj, char *name, int size,
totsize = round_page(z->zsize * nentries);
z->zkva = kmem_alloc_pageable(kernel_map, totsize);
if (z->zkva == 0) {
if (z->zkva == 0)
return 0;
}
z->zpagemax = totsize / PAGE_SIZE;
if (obj == NULL) {
@ -126,7 +126,7 @@ zinitna(vm_zone_t z, vm_object_t obj, char *name, int size,
}
if ( z->zsize > PAGE_SIZE)
if (z->zsize > PAGE_SIZE)
z->zfreemin = 1;
else
z->zfreemin = PAGE_SIZE / z->zsize;
@ -148,8 +148,10 @@ zinitna(vm_zone_t z, vm_object_t obj, char *name, int size,
* initialization call.
*/
vm_zone_t
zinit(char *name, int size, int nentries, int flags, int zalloc) {
zinit(char *name, int size, int nentries, int flags, int zalloc)
{
vm_zone_t z;
z = (vm_zone_t) malloc(sizeof (struct vm_zone), M_ZONE, M_NOWAIT);
if (z == NULL)
return NULL;
@ -168,8 +170,8 @@ zinit(char *name, int size, int nentries, int flags, int zalloc) {
* only be called before full VM startup.
*/
void
zbootinit(vm_zone_t z, char *name, int size, void *item, int nitems) {
zbootinit(vm_zone_t z, char *name, int size, void *item, int nitems)
{
int i;
z->zname = name;
@ -209,15 +211,18 @@ zbootinit(vm_zone_t z, char *name, int size, void *item, int nitems) {
* Zone critical region locks.
*/
static inline int
zlock(vm_zone_t z) {
zlock(vm_zone_t z)
{
int s;
s = splhigh();
simple_lock(&z->zlock);
return s;
}
static inline void
zunlock(vm_zone_t z, int s) {
zunlock(vm_zone_t z, int s)
{
simple_unlock(&z->zlock);
splx(s);
}
@ -243,9 +248,11 @@ zunlock(vm_zone_t z, int s) {
* and are not interrupt safe, but are fast.
*/
void *
zalloci(vm_zone_t z) {
zalloci(vm_zone_t z)
{
int s;
void *item;
s = zlock(z);
item = _zalloc(z);
zunlock(z, s);
@ -253,8 +260,10 @@ zalloci(vm_zone_t z) {
}
void
zfreei(vm_zone_t z, void *item) {
zfreei(vm_zone_t z, void *item)
{
int s;
s = zlock(z);
_zfree(z, item);
zunlock(z, s);
@ -265,7 +274,8 @@ zfreei(vm_zone_t z, void *item) {
* Internal zone routine. Not to be called from external (non vm_zone) code.
*/
void *
_zget(vm_zone_t z) {
_zget(vm_zone_t z)
{
int i;
vm_page_t m;
int nitems, nbytes;
@ -276,14 +286,16 @@ _zget(vm_zone_t z) {
if (z->zflags & ZONE_INTERRUPT) {
item = (char *) z->zkva + z->zpagecount * PAGE_SIZE;
for( i = 0; ((i < z->zalloc) && (z->zpagecount < z->zpagemax)); i++) {
for (i = 0; ((i < z->zalloc) && (z->zpagecount < z->zpagemax));
i++) {
m = vm_page_alloc( z->zobj, z->zpagecount, z->zallocflag);
if (m == NULL) {
m = vm_page_alloc(z->zobj, z->zpagecount,
z->zallocflag);
if (m == NULL)
break;
}
pmap_kenter(z->zkva + z->zpagecount * PAGE_SIZE, VM_PAGE_TO_PHYS(m));
pmap_kenter(z->zkva + z->zpagecount * PAGE_SIZE,
VM_PAGE_TO_PHYS(m));
z->zpagecount++;
}
nitems = (i * PAGE_SIZE) / z->zsize;
@ -297,14 +309,16 @@ _zget(vm_zone_t z) {
#if 0
if (z->zname)
printf("zalloc: %s, %d (0x%x --> 0x%x)\n",
z->zname, z->zalloc, item, (char *)item + nbytes);
z->zname, z->zalloc, item,
(char *)item + nbytes);
else
printf("zalloc: XXX(%d), %d (0x%x --> 0x%x)\n",
z->zsize, z->zalloc, item, (char *)item + nbytes);
z->zsize, z->zalloc, item,
(char *)item + nbytes);
for(i=0;i<nbytes;i+=PAGE_SIZE) {
printf("(%x, %x)", (char *) item + i, pmap_kextract( (char *) item + i));
}
for (i = 0; i < nbytes; i += PAGE_SIZE)
printf("(%x, %x)", (char *) item + i,
pmap_kextract((char *) item + i));
printf("\n");
#endif
nitems = nbytes / z->zsize;
@ -350,62 +364,63 @@ sysctl_vm_zone SYSCTL_HANDLER_ARGS
char tmpname[14];
for (curzone = zlist; curzone; curzone = nextzone) {
int i;
int len;
int offset;
nextzone = curzone->znext;
len = strlen(curzone->zname);
if (len >= (sizeof(tmpname) - 1))
len = (sizeof(tmpname) - 1);
for(i = 0; i < sizeof(tmpname) - 1; i++)
tmpname[i] = ' ';
tmpname[i] = 0;
memcpy(tmpname, curzone->zname, len);
tmpname[len] = ':';
offset = 0;
if (curzone == zlist) {
offset = 1;
tmpbuf[0] = '\n';
}
sprintf(tmpbuf + offset,
"%s limit=%8.8u, used=%6.6u, free=%6.6u, requests=%8.8u\n",
tmpname, curzone->zmax,
(curzone->ztotal - curzone->zfreecnt),
curzone->zfreecnt, curzone->znalloc);
int i;
int len;
int offset;
len = strlen((char *)tmpbuf);
if (nextzone == NULL) {
tmpbuf[len - 1] = 0;
}
nextzone = curzone->znext;
len = strlen(curzone->zname);
if (len >= (sizeof(tmpname) - 1))
len = (sizeof(tmpname) - 1);
for(i = 0; i < sizeof(tmpname) - 1; i++)
tmpname[i] = ' ';
tmpname[i] = 0;
memcpy(tmpname, curzone->zname, len);
tmpname[len] = ':';
offset = 0;
if (curzone == zlist) {
offset = 1;
tmpbuf[0] = '\n';
}
error = SYSCTL_OUT(req, tmpbuf, len);
sprintf(tmpbuf + offset,
"%s limit=%8.8u, used=%6.6u, free=%6.6u, requests=%8.8u\n",
tmpname, curzone->zmax,
(curzone->ztotal - curzone->zfreecnt),
curzone->zfreecnt, curzone->znalloc);
if (error)
return (error);
len = strlen((char *)tmpbuf);
if (nextzone == NULL)
tmpbuf[len - 1] = 0;
error = SYSCTL_OUT(req, tmpbuf, len);
if (error)
return (error);
}
return (0);
}
#if defined(DIAGNOSTIC)
void
zerror(int error) {
zerror(int error)
{
char *msg;
switch (error) {
case ZONE_ERROR_INVALID:
case ZONE_ERROR_INVALID:
msg = "zone: invalid zone";
break;
case ZONE_ERROR_NOTFREE:
case ZONE_ERROR_NOTFREE:
msg = "zone: entry not free";
break;
case ZONE_ERROR_ALREADYFREE:
case ZONE_ERROR_ALREADYFREE:
msg = "zone: freeing free entry";
break;
default:
default:
msg = "zone: invalid error";
break;
}
panic(msg);
}
#endif

View File

@ -1,4 +1,3 @@
/*
* Copyright (c) 1997 John S. Dyson
* All rights reserved.
@ -19,51 +18,52 @@
* 5. Modifications may be freely made to this file if the above conditions
* are met.
*
* $Id: vm_zone.h,v 1.5 1997/08/10 00:12:13 dyson Exp $
* $Id: vm_zone.h,v 1.6 1997/09/21 04:24:27 dyson Exp $
*/
#if !defined(_SYS_ZONE_H)
#define _SYS_ZONE_H
#define ZONE_INTERRUPT 1 /* Use this if you need to allocate at int time */
#define ZONE_BOOT 16 /* This is an internal flag used by zbootinit */
#define ZONE_INTERRUPT 1 /* Use this if you need to allocate at int time */
#define ZONE_BOOT 16 /* This is an internal flag used by zbootinit */
#include <machine/param.h>
#include <sys/lock.h>
typedef struct vm_zone {
struct simplelock zlock; /* lock for data structure */
void *zitems; /* linked list of items */
int zfreecnt; /* free entries */
int zfreemin; /* minimum number of free entries */
int znalloc; /* number of allocations */
vm_offset_t zkva; /* Base kva of zone */
int zpagecount; /* Total # of allocated pages */
int zpagemax; /* Max address space */
int zmax; /* Max number of entries allocated */
int ztotal; /* Total entries allocated now */
int zsize; /* size of each entry */
int zalloc; /* hint for # of pages to alloc */
int zflags; /* flags for zone */
int zallocflag; /* flag for allocation */
struct vm_object *zobj; /* object to hold zone */
char *zname; /* name for diags */
struct vm_zone *znext; /* list of zones for sysctl */
struct simplelock zlock; /* lock for data structure */
void *zitems; /* linked list of items */
int zfreecnt; /* free entries */
int zfreemin; /* minimum number of free entries */
int znalloc; /* number of allocations */
vm_offset_t zkva; /* Base kva of zone */
int zpagecount; /* Total # of allocated pages */
int zpagemax; /* Max address space */
int zmax; /* Max number of entries allocated */
int ztotal; /* Total entries allocated now */
int zsize; /* size of each entry */
int zalloc; /* hint for # of pages to alloc */
int zflags; /* flags for zone */
int zallocflag; /* flag for allocation */
struct vm_object *zobj; /* object to hold zone */
char *zname; /* name for diags */
struct vm_zone *znext; /* list of zones for sysctl */
} *vm_zone_t;
void zerror __P((int)) __dead2;
vm_zone_t zinit __P((char *name, int size, int nentries, int flags, int zalloc));
int zinitna __P((vm_zone_t z, struct vm_object *obj, char *name, int size,
int nentries, int flags, int zalloc));
static void * zalloc __P((vm_zone_t z));
static void zfree __P((vm_zone_t z, void *item));
void * zalloci __P((vm_zone_t z));
void zfreei __P((vm_zone_t z, void *item));
void zbootinit __P((vm_zone_t z, char *name, int size, void *item, int nitems));
void * _zget __P((vm_zone_t z));
void zerror __P((int)) __dead2;
vm_zone_t zinit __P((char *name, int size, int nentries, int flags,
int zalloc));
int zinitna __P((vm_zone_t z, struct vm_object *obj, char *name,
int size, int nentries, int flags, int zalloc));
static void * zalloc __P((vm_zone_t z));
static void zfree __P((vm_zone_t z, void *item));
void * zalloci __P((vm_zone_t z));
void zfreei __P((vm_zone_t z, void *item));
void zbootinit __P((vm_zone_t z, char *name, int size, void *item,
int nitems));
void * _zget __P((vm_zone_t z));
#define ZONE_ERROR_INVALID 0
#define ZONE_ERROR_NOTFREE 1
@ -79,7 +79,8 @@ void * _zget __P((vm_zone_t z));
* Frees an item back to a specified zone.
*/
static __inline__ void *
_zalloc(vm_zone_t z) {
_zalloc(vm_zone_t z)
{
void *item;
#if defined(DIAGNOSTIC)
@ -87,10 +88,9 @@ _zalloc(vm_zone_t z) {
zerror(ZONE_ERROR_INVALID);
#endif
if (z->zfreecnt <= z->zfreemin) {
if (z->zfreecnt <= z->zfreemin)
return _zget(z);
}
item = z->zitems;
z->zitems = ((void **) item)[0];
#if defined(DIAGNOSTIC)
@ -98,17 +98,18 @@ _zalloc(vm_zone_t z) {
zerror(ZONE_ERROR_NOTFREE);
((void **) item)[1] = 0;
#endif
z->zfreecnt--;
z->znalloc++;
return item;
}
static __inline__ void
_zfree(vm_zone_t z, void *item) {
_zfree(vm_zone_t z, void *item)
{
((void **) item)[0] = z->zitems;
#if defined(DIAGNOSTIC)
if ((( void **) item)[1] == (void *) ZENTRY_FREE)
if (((void **) item)[1] == (void *) ZENTRY_FREE)
zerror(ZONE_ERROR_ALREADYFREE);
((void **) item)[1] = (void *) ZENTRY_FREE;
#endif
@ -117,7 +118,8 @@ _zfree(vm_zone_t z, void *item) {
}
static __inline__ void *
zalloc(vm_zone_t z) {
zalloc(vm_zone_t z)
{
#if defined(SMP)
return zalloci(z);
#else
@ -126,7 +128,8 @@ zalloc(vm_zone_t z) {
}
static __inline__ void
zfree(vm_zone_t z, void *item) {
zfree(vm_zone_t z, void *item)
{
#if defined(SMP)
zfreei(z, item);
#else