net: Convert skb_frag_t to bio_vec

There are a lot of users of frag->page_offset, so use a union
to avoid converting those users today.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Matthew Wilcox (Oracle) 2019-07-22 20:08:31 -07:00 коммит произвёл David S. Miller
Родитель b8b576a16f
Коммит 8842d285ba
2 изменённых файлов: 6 добавлений и 8 удалений

Просмотреть файл

@ -18,7 +18,10 @@
struct bio_vec {
struct page *bv_page;
unsigned int bv_len;
unsigned int bv_offset;
union {
__u32 page_offset;
unsigned int bv_offset;
};
};
struct bvec_iter {

Просмотреть файл

@ -14,6 +14,7 @@
#include <linux/compiler.h>
#include <linux/time.h>
#include <linux/bug.h>
#include <linux/bvec.h>
#include <linux/cache.h>
#include <linux/rbtree.h>
#include <linux/socket.h>
@ -308,13 +309,7 @@ extern int sysctl_max_skb_frags;
*/
#define GSO_BY_FRAGS 0xFFFF
typedef struct skb_frag_struct skb_frag_t;
struct skb_frag_struct {
struct page *bv_page;
unsigned int bv_len;
__u32 page_offset;
};
typedef struct bio_vec skb_frag_t;
/**
* skb_frag_size - Returns the size of a skb fragment