Re: [PATCH] virtio, ring: Use ALIGN macros in virtio_ring.h

2011-04-26 Thread Michael S. Tsirkin
On Tue, Apr 26, 2011 at 12:11:10PM +0800, Liu Yuan wrote:
 From: Liu Yuan tailai...@taobao.com
 
 
 Signed-off-by: Liu Yuan tailai...@taobao.com

Issue is, these functions are exported to userspace,
which does not have these macros.

 ---
  include/linux/virtio_ring.h |8 +++-
  1 files changed, 3 insertions(+), 5 deletions(-)
 
 diff --git a/include/linux/virtio_ring.h b/include/linux/virtio_ring.h
 index e4d144b..6299050 100644
 --- a/include/linux/virtio_ring.h
 +++ b/include/linux/virtio_ring.h
 @@ -99,15 +99,13 @@ static inline void vring_init(struct vring *vr, unsigned 
 int num, void *p,
   vr-num = num;
   vr-desc = p;
   vr-avail = p + num*sizeof(struct vring_desc);
 - vr-used = (void *)(((unsigned long)vr-avail-ring[num] + align-1)
 -  ~(align - 1));
 + vr-used = (void *)PTR_ALIGN(vr-avail-ring[num], align);
  }
  
  static inline unsigned vring_size(unsigned int num, unsigned long align)
  {
 - return ((sizeof(struct vring_desc) * num + sizeof(__u16) * (2 + num)
 -  + align - 1)  ~(align - 1))
 - + sizeof(__u16) * 2 + sizeof(struct vring_used_elem) * num;
 + return ((sizeof(struct vring_desc) * num + ALIGN(sizeof(__u16) * (2 + 
 num), align))
 + + sizeof(__u16) * 2 + sizeof(struct vring_used_elem) * num);
  }
  
  #ifdef __KERNEL__
 -- 
 1.7.1
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/virtualization


Re: [PATCH] virtio, ring: Use ALIGN macros in virtio_ring.h

2011-04-26 Thread Liu Yuan
On 04/26/2011 03:42 PM, Michael S. Tsirkin wrote:
 On Tue, Apr 26, 2011 at 12:11:10PM +0800, Liu Yuan wrote:
 From: Liu Yuantailai...@taobao.com


 Signed-off-by: Liu Yuantailai...@taobao.com
 Issue is, these functions are exported to userspace,
 which does not have these macros.

Ah, thanks, I should have noticed the '#ifdef __KERNEL__' just below the 
lines I touched.

Thanks,
Yuan
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/virtualization