| version 1.21.2.3, 1999/06/24 16:14:35 |
version 1.21.2.4, 1999/06/25 00:08:22 |
| Line 258 pr_rmpage(pp, ph) |
|
| Line 258 pr_rmpage(pp, ph) |
|
| pp->pr_npagefree++; |
pp->pr_npagefree++; |
| |
|
| if ((pp->pr_roflags & PR_PHINPAGE) == 0) { |
if ((pp->pr_roflags & PR_PHINPAGE) == 0) { |
| |
int s; |
| LIST_REMOVE(ph, ph_hashlist); |
LIST_REMOVE(ph, ph_hashlist); |
| |
s = splhigh(); |
| pool_put(&phpool, ph); |
pool_put(&phpool, ph); |
| |
splx(s); |
| } |
} |
| |
|
| if (pp->pr_curpage == ph) { |
if (pp->pr_curpage == ph) { |
| Line 313 pool_create(size, align, ioff, nitems, w |
|
| Line 316 pool_create(size, align, ioff, nitems, w |
|
| pool_destroy(pp); |
pool_destroy(pp); |
| return (NULL); |
return (NULL); |
| } |
} |
| int s; |
|
| } |
} |
| s = splhigh(); |
|
| |
|
| splx(s); |
|
| return (pp); |
return (pp); |
| } |
} |
| |
|
| Line 936 pool_prime_page(pp, storage) |
|
| Line 936 pool_prime_page(pp, storage) |
|
| caddr_t cp = storage; |
caddr_t cp = storage; |
| unsigned int align = pp->pr_align; |
unsigned int align = pp->pr_align; |
| unsigned int ioff = pp->pr_itemoffset; |
unsigned int ioff = pp->pr_itemoffset; |
| int n; |
int s, n; |
| |
|
| if ((pp->pr_roflags & PR_PHINPAGE) != 0) { |
if ((pp->pr_roflags & PR_PHINPAGE) != 0) { |
| ph = (struct pool_item_header *)(cp + pp->pr_phoffset); |
ph = (struct pool_item_header *)(cp + pp->pr_phoffset); |
| } else { |
} else { |
| |
s = splhigh(); |
| ph = pool_get(&phpool, PR_URGENT); |
ph = pool_get(&phpool, PR_URGENT); |
| |
splx(s); |
| LIST_INSERT_HEAD(&pp->pr_hashtab[PR_HASH_INDEX(pp, cp)], |
LIST_INSERT_HEAD(&pp->pr_hashtab[PR_HASH_INDEX(pp, cp)], |
| ph, ph_hashlist); |
ph, ph_hashlist); |
| } |
} |
| Line 1051 pool_catchup(pp) |
|
| Line 1053 pool_catchup(pp) |
|
| void |
void |
| pool_setlowat(pp, n) |
pool_setlowat(pp, n) |
| pool_handle_t pp; |
pool_handle_t pp; |
| int s, n; |
int n; |
| { |
{ |
| int error; |
int error; |
| |
|
| simple_lock(&pp->pr_slock); |
simple_lock(&pp->pr_slock); |
| s = splhigh(); |
|
| |
|
| splx(s); |
|
| pp->pr_minitems = n; |
pp->pr_minitems = n; |
| pp->pr_minpages = (n == 0) |
pp->pr_minpages = (n == 0) |
| ? 0 |
? 0 |