nbd_request_entry
status_t nbd_alloc_request(struct nbd_device *dev, struct nbd_request_entry **req, uint32 type, off_t from, size_t len, const char *data);
status_t nbd_queue_request(struct nbd_device *dev, struct nbd_request_entry *req);
status_t nbd_dequeue_request(struct nbd_device *dev, uint64 handle, struct nbd_request_entry **req);
status_t nbd_free_request(struct nbd_device *dev, struct nbd_request_entry *req);
status_t nbd_post_request(struct nbd_device *dev, struct nbd_request_entry *req);
status_t nbd_alloc_request(struct nbd_device *dev, struct nbd_request_entry **req, uint32 type, off_t from, size_t len, const char *data)
struct nbd_request_entry *r;
r = malloc(sizeof(struct nbd_request_entry) + (w ? 0 : len));
r->buffer = (void *)(w ? data : (((char *)r) + sizeof(struct nbd_request_entry)));
status_t nbd_queue_request(struct nbd_device *dev, struct nbd_request_entry *req)
status_t nbd_dequeue_request(struct nbd_device *dev, uint64 handle, struct nbd_request_entry **req)
struct nbd_request_entry *r, *prev;
status_t nbd_free_request(struct nbd_device *dev, struct nbd_request_entry *req)
struct nbd_request_entry *req = NULL;
status_t nbd_post_request(struct nbd_device *dev, struct nbd_request_entry *req)
struct nbd_request_entry *req;
struct nbd_request_entry *req;
struct nbd_request_entry *next;
struct nbd_request_entry *reqs;