| version 1.208, 2012/01/27 19:48:40 |
version 1.209, 2012/02/01 02:27:23 |
| Line 197 sokvaunreserve(vsize_t len) |
|
| Line 197 sokvaunreserve(vsize_t len) |
|
| */ |
*/ |
| |
|
| vaddr_t |
vaddr_t |
| sokvaalloc(vsize_t len, struct socket *so) |
sokvaalloc(vaddr_t sva, vsize_t len, struct socket *so) |
| { |
{ |
| vaddr_t lva; |
vaddr_t lva; |
| |
|
| Line 212 sokvaalloc(vsize_t len, struct socket *s |
|
| Line 212 sokvaalloc(vsize_t len, struct socket *s |
|
| * allocate kva. |
* allocate kva. |
| */ |
*/ |
| |
|
| lva = uvm_km_alloc(kernel_map, len, 0, UVM_KMF_VAONLY | UVM_KMF_WAITVA); |
lva = uvm_km_alloc(kernel_map, len, atop(sva) & uvmexp.colormask, |
| |
UVM_KMF_COLORMATCH | UVM_KMF_VAONLY | UVM_KMF_WAITVA); |
| if (lva == 0) { |
if (lva == 0) { |
| sokvaunreserve(len); |
sokvaunreserve(len); |
| return (0); |
return (0); |
| Line 349 sosend_loan(struct socket *so, struct ui |
|
| Line 350 sosend_loan(struct socket *so, struct ui |
|
| |
|
| KASSERT(npgs <= M_EXT_MAXPAGES); |
KASSERT(npgs <= M_EXT_MAXPAGES); |
| |
|
| lva = sokvaalloc(len, so); |
lva = sokvaalloc(sva, len, so); |
| if (lva == 0) |
if (lva == 0) |
| return 0; |
return 0; |
| |
|