search for: desc_pages

Displaying 4 results from an estimated 4 matches for "desc_pages".

2007 Aug 17
1
lguest virtio_descriptor structure on 64bit
Hello Rusty, while playing with your virtio descriptor code, I realized that the desc_pages data structure is not 64 bit safe. struct lguest_desc desc[NUM_DESCS] can be smaller than a page, as struct lguest_desc is 24 bytes on 64bit systems. Lets add a char padding to make the next page really page aligned. Btw. the new_io_desc.patch does not apply on current git. What base should I...
2007 Aug 17
1
lguest virtio_descriptor structure on 64bit
Hello Rusty, while playing with your virtio descriptor code, I realized that the desc_pages data structure is not 64 bit safe. struct lguest_desc desc[NUM_DESCS] can be smaller than a page, as struct lguest_desc is 24 bytes on 64bit systems. Lets add a char padding to make the next page really page aligned. Btw. the new_io_desc.patch does not apply on current git. What base should I...
2007 Aug 16
3
[kvm-devel] [PATCH 00/10] PV-IO v3
...sends A an interrupt. Now, if B is untrusted, this is more difficult. It needs to read the descriptor entries and the "pending" ring buffer, and write to the "used" ring buffer. We can use page protection to share these if we arrange things carefully, like so: struct desc_pages { /* Page of descriptors. */ struct lguest_desc desc[NUM_DESCS]; /* Next page: how we tell other side what buffers are available. */ unsigned int avail_idx; unsigned int available[NUM_DESCS]; char pad[PAGE_SIZE - (NUM_DESCS+1) *...
2007 Aug 16
3
[kvm-devel] [PATCH 00/10] PV-IO v3
...sends A an interrupt. Now, if B is untrusted, this is more difficult. It needs to read the descriptor entries and the "pending" ring buffer, and write to the "used" ring buffer. We can use page protection to share these if we arrange things carefully, like so: struct desc_pages { /* Page of descriptors. */ struct lguest_desc desc[NUM_DESCS]; /* Next page: how we tell other side what buffers are available. */ unsigned int avail_idx; unsigned int available[NUM_DESCS]; char pad[PAGE_SIZE - (NUM_DESCS+1) *...