aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAnirban Chakraborty <anirban.chakraborty@qlogic.com>2009-03-05 14:07:02 -0500
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2009-03-10 10:27:54 -0400
commitee546b6e048586381462ce7bb51c7ddc03819619 (patch)
tree8d45dca886722cc351f0245b35955eca451aaeac /arch
parent605aa2bcd5e9dddc4666f12e0c19822809186d6d (diff)
[SCSI] qla2xxx: Correct vport delete bug.
Signed-off-by: Anirban Chakraborty <anirban.chakraborty@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'arch')
0 files changed, 0 insertions, 0 deletions
; * * // A ring of used descriptor heads with free-running index. * __u16 used_flags; * __u16 used_idx; * struct vring_used_elem used[num]; * }; */ static inline void vring_init(struct vring *vr, unsigned int num, void *p, unsigned int pagesize) { vr->num = num; vr->desc = p; vr->avail = p + num*sizeof(struct vring_desc); vr->used = (void *)(((unsigned long)&vr->avail->ring[num] + pagesize-1) & ~(pagesize - 1)); } static inline unsigned vring_size(unsigned int num, unsigned int pagesize) { return ((sizeof(struct vring_desc) * num + sizeof(__u16) * (2 + num) + pagesize - 1) & ~(pagesize - 1)) + sizeof(__u16) * 2 + sizeof(struct vring_used_elem) * num; } #ifdef __KERNEL__ #include <linux/irqreturn.h> struct virtio_device; struct virtqueue; struct virtqueue *vring_new_virtqueue(unsigned int num, struct virtio_device *vdev, void *pages, void (*notify)(struct virtqueue *vq), bool (*callback)(struct virtqueue *vq)); void vring_del_virtqueue(struct virtqueue *vq); irqreturn_t vring_interrupt(int irq, void *_vq); #endif /* __KERNEL__ */ #endif /* _LINUX_VIRTIO_RING_H */