| version 1.34.2.1, 2000/06/22 17:09:16 |
version 1.35, 2000/05/31 15:03:54 |
| Line 404 pool_init(pp, size, align, ioff, flags, |
|
| Line 404 pool_init(pp, size, align, ioff, flags, |
|
| /* |
/* |
| * Check arguments and construct default values. |
* Check arguments and construct default values. |
| */ |
*/ |
| if (!powerof2(pagesz)) |
if (!powerof2(pagesz) || pagesz > PAGE_SIZE) |
| panic("pool_init: page size invalid (%lx)\n", (u_long)pagesz); |
panic("pool_init: page size invalid (%lx)\n", (u_long)pagesz); |
| |
|
| if (alloc == NULL && release == NULL) { |
if (alloc == NULL && release == NULL) { |
| Line 594 _pool_get(pp, flags, file, line) |
|
| Line 594 _pool_get(pp, flags, file, line) |
|
| } |
} |
| #endif |
#endif |
| |
|
| if (__predict_false(curproc == NULL && doing_shutdown == 0 && |
if (__predict_false(curproc == NULL && (flags & PR_WAITOK) != 0)) |
| (flags & PR_WAITOK) != 0)) |
|
| panic("pool_get: must have NOWAIT"); |
panic("pool_get: must have NOWAIT"); |
| |
|
| simple_lock(&pp->pr_slock); |
simple_lock(&pp->pr_slock); |
| Line 1026 pool_prime_page(pp, storage) |
|
| Line 1025 pool_prime_page(pp, storage) |
|
| unsigned int ioff = pp->pr_itemoffset; |
unsigned int ioff = pp->pr_itemoffset; |
| int s, n; |
int s, n; |
| |
|
| if (((u_long)cp & (pp->pr_pagesz - 1)) != 0) |
|
| panic("pool_prime_page: %s: unaligned page", pp->pr_wchan); |
|
| |
|
| 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 { |