瀏覽代碼

skb_array: add wrappers for resizing

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Jason Wang 9 年之前
父節點
當前提交
bf900b3dbe
共有 1 個文件被更改,包括 9 次插入0 次删除
  1. 9 0
      include/linux/skb_array.h

+ 9 - 0
include/linux/skb_array.h

@@ -161,6 +161,15 @@ static inline int skb_array_resize(struct skb_array *a, int size, gfp_t gfp)
 	return ptr_ring_resize(&a->ring, size, gfp, __skb_array_destroy_skb);
 	return ptr_ring_resize(&a->ring, size, gfp, __skb_array_destroy_skb);
 }
 }
 
 
+static inline int skb_array_resize_multiple(struct skb_array **rings,
+					    int nrings, int size, gfp_t gfp)
+{
+	BUILD_BUG_ON(offsetof(struct skb_array, ring));
+	return ptr_ring_resize_multiple((struct ptr_ring **)rings,
+					nrings, size, gfp,
+					__skb_array_destroy_skb);
+}
+
 static inline void skb_array_cleanup(struct skb_array *a)
 static inline void skb_array_cleanup(struct skb_array *a)
 {
 {
 	ptr_ring_cleanup(&a->ring, __skb_array_destroy_skb);
 	ptr_ring_cleanup(&a->ring, __skb_array_destroy_skb);