Lines Matching defs:lut

103 	struct lut_entry *lut;  /* virt,phys addresses, objtotal entries */
192 netmap_mem_get_lut(struct netmap_mem_d *nmd, struct netmap_lut *lut)
197 rv = nmd->ops->nmd_get_lut(nmd, lut);
504 netmap_mem2_get_lut(struct netmap_mem_d *nmd, struct netmap_lut *lut)
506 lut->lut = nmd->pools[NETMAP_BUF_POOL].lut;
508 lut->plut = lut->lut;
510 lut->objtotal = nmd->pools[NETMAP_BUF_POOL].objtotal;
511 lut->objsize = nmd->pools[NETMAP_BUF_POOL]._objsize;
769 struct lut_entry *lut;
771 lut = vmalloc(n);
773 lut = nm_os_malloc(n);
775 return lut;
779 nm_free_lut(struct lut_entry *lut, u_int objtotal)
781 bzero(lut, sizeof(struct lut_entry) * objtotal);
783 vfree(lut);
785 nm_os_free(lut);
794 struct plut_entry *lut;
795 lut = vmalloc(n);
796 return lut;
800 nm_free_plut(struct plut_entry * lut)
802 vfree(lut);
826 pa = vtophys(p[i].lut[offset / p[i]._objsize].vaddr) +
829 pa = vtophys(p[i].lut[offset / p[i]._objsize].vaddr);
903 tempMdl = IoAllocateMdl(p->lut[0].vaddr, clsz, FALSE, FALSE, NULL);
911 /* create one entry per cluster, the lut[] has one entry per object */
914 MmInitializeMdl(tempMdl, p->lut[j*clobjs].vaddr, clsz);
990 const char *base = p->lut[i].vaddr;
1057 vaddr = p->lut[i * 32 + j].vaddr;
1104 void *base = p->lut[i * p->_clustentries].vaddr;
1173 struct lut_entry *lut = na->na_lut.lut;
1181 buf = lut[head].vaddr;
1285 if (p->lut) {
1292 * in the lut.
1295 free(p->lut[i].vaddr, M_NETMAP);
1297 nm_free_lut(p->lut, p->objtotal);
1299 p->lut = NULL;
1414 if (p->lut) {
1415 /* if the lut is already there we assume that also all the
1430 p->lut = nm_alloc_lut(p->objtotal);
1431 if (p->lut == NULL) {
1472 if (i % p->_clustentries == 0 && p->lut[i].vaddr)
1473 free(p->lut[i].vaddr, M_NETMAP);
1474 p->lut[i].vaddr = NULL;
1483 * Set lut state for all buffers in the current cluster.
1493 p->lut[i].vaddr = clust;
1495 p->lut[i].paddr = vtophys(clust);
1545 struct netmap_lut *lut;
1549 lut = &na->na_lut;
1558 (void)lut;
1562 (void)lut;
1566 if (lut->plut == NULL || na->pdev == NULL)
1569 if (lut->plut[i].paddr)
1570 netmap_unload_map(na, (bus_dma_tag_t) na->pdev, &lut->plut[i].paddr, p->_clustsize);
1572 nm_free_plut(lut->plut);
1573 lut->plut = NULL;
1584 struct netmap_lut *lut = &na->na_lut;
1594 (void)lut;
1598 (void)lut;
1602 if (lut->plut != NULL) {
1607 nm_prdis("allocating physical lut for %s", na->name);
1608 lut->plut = nm_alloc_plut(lim);
1609 if (lut->plut == NULL) {
1610 nm_prerr("Failed to allocate physical lut for %s", na->name);
1615 lut->plut[i].paddr = 0;
1621 if (p->lut[i].vaddr == NULL)
1624 error = netmap_load_map(na, (bus_dma_tag_t) na->pdev, &lut->plut[i].paddr,
1625 p->lut[i].vaddr, p->_clustsize);
1632 lut->plut[i + j].paddr = lut->plut[i + j - 1].paddr + p->_objsize;
2303 if (p->lut) {
2304 nm_free_lut(p->lut, p->objtotal);
2305 p->lut = NULL;
2409 p->lut = nm_alloc_lut(o->num);
2410 if (p->lut == NULL) {
2432 p->lut[j].vaddr = clust + off;
2434 p->lut[j].paddr = vtophys(p->lut[j].vaddr);
2436 nm_prdis("%s %d at %p", p->name, j, p->lut[j].vaddr);
2587 netmap_mem_pt_guest_get_lut(struct netmap_mem_d *nmd, struct netmap_lut *lut)
2595 *lut = ptnmd->buf_lut;
2668 /* Initialize the lut using the information contained in the
2675 /* allocate the lut */
2676 if (ptnmd->buf_lut.lut == NULL) {
2677 nm_prinf("allocating lut");
2678 ptnmd->buf_lut.lut = nm_alloc_lut(nbuffers);
2679 if (ptnmd->buf_lut.lut == NULL) {
2680 nm_prerr("lut allocation failed");
2692 ptnmd->buf_lut.lut[i].vaddr = vaddr;