#define XENVIF_TX_CB(skb) ((struct xenvif_tx_cb *)(skb)->cb)
-static inline void xenvif_tx_create_gop(struct xenvif *vif,
- u16 pending_idx,
- struct xen_netif_tx_request *txp,
- struct gnttab_map_grant_ref *gop)
+static inline void xenvif_tx_create_map_op(struct xenvif *vif,
+ u16 pending_idx,
+ struct xen_netif_tx_request *txp,
+ struct gnttab_map_grant_ref *mop)
{
- vif->pages_to_map[gop-vif->tx_map_ops] = vif->mmap_pages[pending_idx];
- gnttab_set_map_op(gop, idx_to_kaddr(vif, pending_idx),
+ vif->pages_to_map[mop-vif->tx_map_ops] = vif->mmap_pages[pending_idx];
+ gnttab_set_map_op(mop, idx_to_kaddr(vif, pending_idx),
GNTMAP_host_map | GNTMAP_readonly,
txp->gref, vif->domid);
shinfo->nr_frags++, txp++, gop++) {
index = pending_index(vif->pending_cons++);
pending_idx = vif->pending_ring[index];
- xenvif_tx_create_gop(vif, pending_idx, txp, gop);
+ xenvif_tx_create_map_op(vif, pending_idx, txp, gop);
frag_set_pending_idx(&frags[shinfo->nr_frags], pending_idx);
}
shinfo->nr_frags++, txp++, gop++) {
index = pending_index(vif->pending_cons++);
pending_idx = vif->pending_ring[index];
- xenvif_tx_create_gop(vif, pending_idx, txp, gop);
+ xenvif_tx_create_map_op(vif, pending_idx, txp, gop);
frag_set_pending_idx(&frags[shinfo->nr_frags],
pending_idx);
}
static int xenvif_tx_check_gop(struct xenvif *vif,
struct sk_buff *skb,
- struct gnttab_map_grant_ref **gopp)
+ struct gnttab_map_grant_ref **gopp_map)
{
- struct gnttab_map_grant_ref *gop = *gopp;
+ struct gnttab_map_grant_ref *gop_map = *gopp_map;
u16 pending_idx = XENVIF_TX_CB(skb)->pending_idx;
struct skb_shared_info *shinfo = skb_shinfo(skb);
struct pending_tx_info *tx_info;
struct sk_buff *first_skb = NULL;
/* Check status of header. */
- err = gop->status;
+ err = gop_map->status;
if (unlikely(err))
xenvif_idx_release(vif, pending_idx, XEN_NETIF_RSP_ERROR);
else
- xenvif_grant_handle_set(vif, pending_idx , gop->handle);
+ xenvif_grant_handle_set(vif, pending_idx , gop_map->handle);
/* Skip first skb fragment if it is on same page as header fragment. */
start = (frag_get_pending_idx(&shinfo->frags[0]) == pending_idx);
tx_info = &vif->pending_tx_info[pending_idx];
/* Check error status: if okay then remember grant handle. */
- newerr = (++gop)->status;
+ newerr = (++gop_map)->status;
if (likely(!newerr)) {
- xenvif_grant_handle_set(vif, pending_idx , gop->handle);
+ xenvif_grant_handle_set(vif,
+ pending_idx,
+ gop_map->handle);
/* Had a previous error? Invalidate this fragment. */
if (unlikely(err))
xenvif_idx_unmap(vif, pending_idx);
}
}
- *gopp = gop + 1;
+ *gopp_map = gop_map + 1;
return err;
}
}
}
- xenvif_tx_create_gop(vif, pending_idx, &txreq, gop);
+ xenvif_tx_create_map_op(vif, pending_idx, &txreq, gop);
gop++;
static int xenvif_tx_submit(struct xenvif *vif)
{
- struct gnttab_map_grant_ref *gop = vif->tx_map_ops;
+ struct gnttab_map_grant_ref *gop_map = vif->tx_map_ops;
struct sk_buff *skb;
int work_done = 0;
txp = &vif->pending_tx_info[pending_idx].req;
/* Check the remap error code. */
- if (unlikely(xenvif_tx_check_gop(vif, skb, &gop))) {
+ if (unlikely(xenvif_tx_check_gop(vif, skb, &gop_map))) {
netdev_dbg(vif->dev, "netback grant failed.\n");
skb_shinfo(skb)->nr_frags = 0;
kfree_skb(skb);
/* Called after netfront has transmitted */
int xenvif_tx_action(struct xenvif *vif, int budget)
{
- unsigned nr_gops;
+ unsigned nr_mops;
int work_done, ret;
if (unlikely(!tx_work_todo(vif)))
return 0;
- nr_gops = xenvif_tx_build_gops(vif, budget);
+ nr_mops = xenvif_tx_build_gops(vif, budget);
- if (nr_gops == 0)
+ if (nr_mops == 0)
return 0;
ret = gnttab_map_refs(vif->tx_map_ops,
NULL,
vif->pages_to_map,
- nr_gops);
+ nr_mops);
BUG_ON(ret);
work_done = xenvif_tx_submit(vif);