summaryrefslogtreecommitdiffstats
path: root/drivers/net/xen-netback
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2023-05-23 16:03:42 +0200
committerLinus Walleij <linus.walleij@linaro.org>2023-05-29 11:27:08 +0200
commite36bfc0bc3ceb3ace1ff0ed5f9ed781395b6cbc5 (patch)
tree4c36403dfe2ad42376f8867cc570c164e0bc4501 /drivers/net/xen-netback
parentnetfs: Pass a pointer to virt_to_page() (diff)
downloadlinux-e36bfc0bc3ceb3ace1ff0ed5f9ed781395b6cbc5.tar.xz
linux-e36bfc0bc3ceb3ace1ff0ed5f9ed781395b6cbc5.zip
xen/netback: Pass (void *) to virt_to_page()
virt_to_page() takes a virtual address as argument but the driver passes an unsigned long, which works because the target platform(s) uses polymorphic macros to calculate the page. Since many architectures implement virt_to_pfn() as a macro, this function becomes polymorphic and accepts both a (unsigned long) and a (void *). Fix this up by an explicit (void *) cast. Cc: Wei Liu <wei.liu@kernel.org> Cc: Paul Durrant <paul@xen.org> Cc: xen-devel@lists.xenproject.org Cc: netdev@vger.kernel.org Acked-by: Wei Liu <wei.liu@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/net/xen-netback')
-rw-r--r--drivers/net/xen-netback/netback.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/xen-netback/netback.c b/drivers/net/xen-netback/netback.c
index c1501f41e2d8..caf0c815436c 100644
--- a/drivers/net/xen-netback/netback.c
+++ b/drivers/net/xen-netback/netback.c
@@ -689,7 +689,7 @@ static void xenvif_fill_frags(struct xenvif_queue *queue, struct sk_buff *skb)
prev_pending_idx = pending_idx;
txp = &queue->pending_tx_info[pending_idx].req;
- page = virt_to_page(idx_to_kaddr(queue, pending_idx));
+ page = virt_to_page((void *)idx_to_kaddr(queue, pending_idx));
__skb_fill_page_desc(skb, i, page, txp->offset, txp->size);
skb->len += txp->size;
skb->data_len += txp->size;