Lines Matching refs:desc

49       desc{0, 0, 0, 0}
68 desc = std::move(rhs.desc);
82 const Addr desc_addr(vq_addr + sizeof(desc) * _index);
85 desc = vtoh_legacy(guest_desc);
89 _index, desc.addr, desc.len, desc.flags, desc.next);
95 VirtDescriptor *desc(this);
97 desc->update();
98 } while ((desc = desc->next()) != NULL && desc != this);
100 if (desc == this)
112 _index, desc.addr, desc.len, desc.flags, desc.next);
115 uint8_t data[desc.len];
116 read(0, data, desc.len);
117 DDUMP(VIO, data, desc.len);
127 const VirtDescriptor *desc(this);
129 desc->dump();
130 } while ((desc = desc->next()) != NULL);
137 return queue->getDescriptor(desc.next);
147 this, desc.addr, desc.len, offset, (long)dst, size);
148 assert(size <= desc.len - offset);
152 memProxy->readBlob(desc.addr + offset, dst, size);
159 this, desc.addr, desc.len, offset, (long)src, size);
160 assert(size <= desc.len - offset);
164 memProxy->writeBlob(desc.addr + offset, src, size);
170 const VirtDescriptor *desc(this);
173 if (offset < desc->size()) {
174 const size_t chunk_size(std::min(desc->size() - offset, size));
175 desc->read(offset, dst, chunk_size);
180 offset -= desc->size();
182 } while ((desc = desc->next()) != NULL && desc->isIncoming() && size > 0);
193 VirtDescriptor *desc(this);
196 if (offset < desc->size()) {
197 const size_t chunk_size(std::min(desc->size() - offset, size));
198 desc->write(offset, src, chunk_size);
203 offset -= desc->size();
205 } while ((desc = desc->next()) != NULL && size > 0);
217 const VirtDescriptor *desc(this);
219 size += desc->size();
220 } while ((desc = desc->next()) != NULL);
290 VirtQueue::produceDescriptor(VirtDescriptor *desc, uint32_t len)
294 desc->index(), len, used.header.index);
297 e.id = desc->index();