On Mon, Mar 19, 2018 at 04:53:35PM -0500, Eric Blake wrote: > Use the correct printf formats, so that a 32-bit compile doesn't > spit out lots of warnings about %lx being incompatible with uint64_t. > Broken since initial commit ef6d4ccd. > > Signed-off-by: Eric Blake <ebl...@redhat.com> > --- > > I don't know if 'make vm-build-ubuntu.i368' would catch this (it failed > for me for other reasons); I found it via a 32-bit rawhide VM. > > hw/rdma/rdma_backend.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/hw/rdma/rdma_backend.c b/hw/rdma/rdma_backend.c > index e306fba5344..89020fdcf62 100644 > --- a/hw/rdma/rdma_backend.c > +++ b/hw/rdma/rdma_backend.c > @@ -656,7 +656,8 @@ void rdma_backend_destroy_qp(RdmaBackendQP *qp) > #define CHK_ATTR(req, dev, member, fmt) ({ \ > pr_dbg("%s="fmt","fmt"\n", #member, dev.member, req->member); \ > if (req->member > dev.member) { \ > - warn_report("%s = 0x%lx is higher than host device capability > 0x%lx", \ > + warn_report("%s = 0x%" PRIx64 " is higher than host device " \ > + "capability 0x%" PRIx64, \ > #member, (uint64_t)req->member, (uint64_t)dev.member); \
Hmmm, interesting. I wonder why in first place to cast all members to uint64_t. Can you try the method that is used above in the call to pr_dbg, i.e. to use the given argument fmt? Something like this: warn_report("%s = "fmt" is higher than host device capability "fmt, \ #member, req->member, dev.member); \ > req->member = dev.member; \ > } \ > -- > 2.14.3 >