Loading drivers/block/aoe/aoe.h +9 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,15 @@ struct aoe_hdr { __be32 tag; }; #ifdef __KERNEL__ #include <linux/skbuff.h> static inline struct aoe_hdr *aoe_hdr(const struct sk_buff *skb) { return (struct aoe_hdr *)skb->mac.raw; } #endif struct aoe_atahdr { unsigned char aflags; unsigned char errfeat; Loading drivers/block/aoe/aoecmd.c +7 −7 Original line number Diff line number Diff line Loading @@ -118,7 +118,7 @@ aoecmd_ata_rw(struct aoedev *d, struct frame *f) /* initialize the headers & frame */ skb = f->skb; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); ah = (struct aoe_atahdr *) (h+1); skb_put(skb, sizeof *h + sizeof *ah); memset(h, 0, skb->len); Loading Loading @@ -207,7 +207,7 @@ aoecmd_cfg_pkts(ushort aoemajor, unsigned char aoeminor, struct sk_buff **tail) skb->dev = ifp; if (sl_tail == NULL) sl_tail = skb; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); memset(h, 0, sizeof *h + sizeof *ch); memset(h->dst, 0xff, sizeof h->dst); Loading Loading @@ -300,7 +300,7 @@ rexmit(struct aoedev *d, struct frame *f) aoechr_error(buf); skb = f->skb; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); ah = (struct aoe_atahdr *) (h+1); f->tag = n; h->tag = cpu_to_be32(n); Loading Loading @@ -529,7 +529,7 @@ aoecmd_ata_rsp(struct sk_buff *skb) char ebuf[128]; u16 aoemajor; hin = (struct aoe_hdr *) skb->mac.raw; hin = aoe_hdr(skb); aoemajor = be16_to_cpu(get_unaligned(&hin->major)); d = aoedev_by_aoeaddr(aoemajor, hin->minor); if (d == NULL) { Loading Loading @@ -561,7 +561,7 @@ aoecmd_ata_rsp(struct sk_buff *skb) calc_rttavg(d, tsince(f->tag)); ahin = (struct aoe_atahdr *) (hin+1); hout = (struct aoe_hdr *) f->skb->mac.raw; hout = aoe_hdr(f->skb); ahout = (struct aoe_atahdr *) (hout+1); buf = f->buf; Loading Loading @@ -695,7 +695,7 @@ aoecmd_ata_id(struct aoedev *d) /* initialize the headers & frame */ skb = f->skb; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); ah = (struct aoe_atahdr *) (h+1); skb_put(skb, sizeof *h + sizeof *ah); memset(h, 0, skb->len); Loading Loading @@ -726,7 +726,7 @@ aoecmd_cfg_rsp(struct sk_buff *skb) enum { MAXFRAMES = 16 }; u16 n; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); ch = (struct aoe_cfghdr *) (h+1); /* Loading drivers/block/aoe/aoenet.c +1 −1 Original line number Diff line number Diff line Loading @@ -123,7 +123,7 @@ aoenet_rcv(struct sk_buff *skb, struct net_device *ifp, struct packet_type *pt, goto exit; skb_push(skb, ETH_HLEN); /* (1) */ h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); n = be32_to_cpu(get_unaligned(&h->tag)); if ((h->verfl & AOEFL_RSP) == 0 || (n & 1<<31)) goto exit; Loading Loading
drivers/block/aoe/aoe.h +9 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,15 @@ struct aoe_hdr { __be32 tag; }; #ifdef __KERNEL__ #include <linux/skbuff.h> static inline struct aoe_hdr *aoe_hdr(const struct sk_buff *skb) { return (struct aoe_hdr *)skb->mac.raw; } #endif struct aoe_atahdr { unsigned char aflags; unsigned char errfeat; Loading
drivers/block/aoe/aoecmd.c +7 −7 Original line number Diff line number Diff line Loading @@ -118,7 +118,7 @@ aoecmd_ata_rw(struct aoedev *d, struct frame *f) /* initialize the headers & frame */ skb = f->skb; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); ah = (struct aoe_atahdr *) (h+1); skb_put(skb, sizeof *h + sizeof *ah); memset(h, 0, skb->len); Loading Loading @@ -207,7 +207,7 @@ aoecmd_cfg_pkts(ushort aoemajor, unsigned char aoeminor, struct sk_buff **tail) skb->dev = ifp; if (sl_tail == NULL) sl_tail = skb; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); memset(h, 0, sizeof *h + sizeof *ch); memset(h->dst, 0xff, sizeof h->dst); Loading Loading @@ -300,7 +300,7 @@ rexmit(struct aoedev *d, struct frame *f) aoechr_error(buf); skb = f->skb; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); ah = (struct aoe_atahdr *) (h+1); f->tag = n; h->tag = cpu_to_be32(n); Loading Loading @@ -529,7 +529,7 @@ aoecmd_ata_rsp(struct sk_buff *skb) char ebuf[128]; u16 aoemajor; hin = (struct aoe_hdr *) skb->mac.raw; hin = aoe_hdr(skb); aoemajor = be16_to_cpu(get_unaligned(&hin->major)); d = aoedev_by_aoeaddr(aoemajor, hin->minor); if (d == NULL) { Loading Loading @@ -561,7 +561,7 @@ aoecmd_ata_rsp(struct sk_buff *skb) calc_rttavg(d, tsince(f->tag)); ahin = (struct aoe_atahdr *) (hin+1); hout = (struct aoe_hdr *) f->skb->mac.raw; hout = aoe_hdr(f->skb); ahout = (struct aoe_atahdr *) (hout+1); buf = f->buf; Loading Loading @@ -695,7 +695,7 @@ aoecmd_ata_id(struct aoedev *d) /* initialize the headers & frame */ skb = f->skb; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); ah = (struct aoe_atahdr *) (h+1); skb_put(skb, sizeof *h + sizeof *ah); memset(h, 0, skb->len); Loading Loading @@ -726,7 +726,7 @@ aoecmd_cfg_rsp(struct sk_buff *skb) enum { MAXFRAMES = 16 }; u16 n; h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); ch = (struct aoe_cfghdr *) (h+1); /* Loading
drivers/block/aoe/aoenet.c +1 −1 Original line number Diff line number Diff line Loading @@ -123,7 +123,7 @@ aoenet_rcv(struct sk_buff *skb, struct net_device *ifp, struct packet_type *pt, goto exit; skb_push(skb, ETH_HLEN); /* (1) */ h = (struct aoe_hdr *) skb->mac.raw; h = aoe_hdr(skb); n = be32_to_cpu(get_unaligned(&h->tag)); if ((h->verfl & AOEFL_RSP) == 0 || (n & 1<<31)) goto exit; Loading