[PATCH 1/3] vhost: fix build for powerpc
Bruce Richardson
bruce.richardson at intel.com
Fri Sep 1 16:59:57 CEST 2023
+PPC maintainer
On Thu, Aug 31, 2023 at 01:10:56PM +0100, Bruce Richardson wrote:
> When building on Ubuntu using the packaged powerpc compiler[1], a
> warning is issued about the print format of the __u64 values.
>
> ../../lib/vhost/vduse.c: In function ‘vduse_vring_setup’:
> ../../lib/vhost/vhost.h:676:17: error: format ‘%llx’ expects argument of
> type ‘long long unsigned int’, but argument 5 has type ‘__u64’ {aka
> ‘long unsigned int’} [-Werror=format=]
> 676 | "VHOST_CONFIG: (%s) " fmt, prefix, ##args)
> | ^~~~~~~~~~~~~~~~~~~~~
>
> Changing the format specifier to %lx, or to use PRIx64 breaks other
> builds, so the safest solution is to explicitly typecast the printed
> values to match the format string.
>
> [1] powerpc64le-linux-gnu-gcc (Ubuntu 12.3.0-1ubuntu1~23.04) 12.3.0
>
> Fixes: a9120db8b98b ("vhost: add VDUSE device startup")
> Cc: maxime.coquelin at redhat.com
> Cc: stable at dpdk.org
>
> Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
> ---
> lib/vhost/vduse.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/lib/vhost/vduse.c b/lib/vhost/vduse.c
> index 73ed424232..e2b6d35d37 100644
> --- a/lib/vhost/vduse.c
> +++ b/lib/vhost/vduse.c
> @@ -162,9 +162,12 @@ vduse_vring_setup(struct virtio_net *dev, unsigned int index)
>
> VHOST_LOG_CONFIG(dev->ifname, INFO, "VQ %u info:\n", index);
> VHOST_LOG_CONFIG(dev->ifname, INFO, "\tnum: %u\n", vq_info.num);
> - VHOST_LOG_CONFIG(dev->ifname, INFO, "\tdesc_addr: %llx\n", vq_info.desc_addr);
> - VHOST_LOG_CONFIG(dev->ifname, INFO, "\tdriver_addr: %llx\n", vq_info.driver_addr);
> - VHOST_LOG_CONFIG(dev->ifname, INFO, "\tdevice_addr: %llx\n", vq_info.device_addr);
> + VHOST_LOG_CONFIG(dev->ifname, INFO, "\tdesc_addr: %llx\n",
> + (unsigned long long)vq_info.desc_addr);
> + VHOST_LOG_CONFIG(dev->ifname, INFO, "\tdriver_addr: %llx\n",
> + (unsigned long long)vq_info.driver_addr);
> + VHOST_LOG_CONFIG(dev->ifname, INFO, "\tdevice_addr: %llx\n",
> + (unsigned long long)vq_info.device_addr);
> VHOST_LOG_CONFIG(dev->ifname, INFO, "\tavail_idx: %u\n", vq_info.split.avail_index);
> VHOST_LOG_CONFIG(dev->ifname, INFO, "\tready: %u\n", vq_info.ready);
>
> --
> 2.39.2
>
More information about the stable
mailing list