trans_virtio.c (0b28330e39bbe0ffee4c56b09fc415fcec595ea3) | trans_virtio.c (dc3f5e68f846eec38fb31d78f0b6e83633ad375e) |
---|---|
1/* 2 * The Virtio 9p transport driver 3 * 4 * This is a block based transport driver based on the lguest block driver 5 * code. 6 * 7 * Copyright (C) 2007, 2008 Eric Van Hensbergen, IBM Corporation 8 * --- 123 unchanged lines hidden (view full) --- 132{ 133 struct virtio_chan *chan = vq->vdev->priv; 134 struct p9_fcall *rc; 135 unsigned int len; 136 struct p9_req_t *req; 137 138 P9_DPRINTK(P9_DEBUG_TRANS, ": request done\n"); 139 | 1/* 2 * The Virtio 9p transport driver 3 * 4 * This is a block based transport driver based on the lguest block driver 5 * code. 6 * 7 * Copyright (C) 2007, 2008 Eric Van Hensbergen, IBM Corporation 8 * --- 123 unchanged lines hidden (view full) --- 132{ 133 struct virtio_chan *chan = vq->vdev->priv; 134 struct p9_fcall *rc; 135 unsigned int len; 136 struct p9_req_t *req; 137 138 P9_DPRINTK(P9_DEBUG_TRANS, ": request done\n"); 139 |
140 while ((rc = chan->vq->vq_ops->get_buf(chan->vq, &len)) != NULL) { | 140 while ((rc = virtqueue_get_buf(chan->vq, &len)) != NULL) { |
141 P9_DPRINTK(P9_DEBUG_TRANS, ": rc %p\n", rc); 142 P9_DPRINTK(P9_DEBUG_TRANS, ": lookup tag %d\n", rc->tag); 143 req = p9_tag_lookup(chan->client, rc->tag); 144 req->status = REQ_STATUS_RCVD; 145 p9_client_cb(chan->client, req); 146 } 147} 148 --- 55 unchanged lines hidden (view full) --- 204 205 out = pack_sg_list(chan->sg, 0, VIRTQUEUE_NUM, req->tc->sdata, 206 req->tc->size); 207 in = pack_sg_list(chan->sg, out, VIRTQUEUE_NUM-out, rdata, 208 client->msize); 209 210 req->status = REQ_STATUS_SENT; 211 | 141 P9_DPRINTK(P9_DEBUG_TRANS, ": rc %p\n", rc); 142 P9_DPRINTK(P9_DEBUG_TRANS, ": lookup tag %d\n", rc->tag); 143 req = p9_tag_lookup(chan->client, rc->tag); 144 req->status = REQ_STATUS_RCVD; 145 p9_client_cb(chan->client, req); 146 } 147} 148 --- 55 unchanged lines hidden (view full) --- 204 205 out = pack_sg_list(chan->sg, 0, VIRTQUEUE_NUM, req->tc->sdata, 206 req->tc->size); 207 in = pack_sg_list(chan->sg, out, VIRTQUEUE_NUM-out, rdata, 208 client->msize); 209 210 req->status = REQ_STATUS_SENT; 211 |
212 if (chan->vq->vq_ops->add_buf(chan->vq, chan->sg, out, in, req->tc) < 0) { | 212 if (virtqueue_add_buf(chan->vq, chan->sg, out, in, req->tc) < 0) { |
213 P9_DPRINTK(P9_DEBUG_TRANS, 214 "9p debug: virtio rpc add_buf returned failure"); 215 return -EIO; 216 } 217 | 213 P9_DPRINTK(P9_DEBUG_TRANS, 214 "9p debug: virtio rpc add_buf returned failure"); 215 return -EIO; 216 } 217 |
218 chan->vq->vq_ops->kick(chan->vq); | 218 virtqueue_kick(chan->vq); |
219 220 P9_DPRINTK(P9_DEBUG_TRANS, "9p debug: virtio request kicked\n"); 221 return 0; 222} 223 224static ssize_t p9_mount_tag_show(struct device *dev, 225 struct device_attribute *attr, char *buf) 226{ --- 203 unchanged lines hidden --- | 219 220 P9_DPRINTK(P9_DEBUG_TRANS, "9p debug: virtio request kicked\n"); 221 return 0; 222} 223 224static ssize_t p9_mount_tag_show(struct device *dev, 225 struct device_attribute *attr, char *buf) 226{ --- 203 unchanged lines hidden --- |