On do, 2016-03-03 at 11:26 +0100, Paul Bolle wrote: > Use the upper_32_bits() macro instead of the four line equivalent that > triggers a GCC warning on 32 bits x86: > drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c: In function > 'vmw_cmdbuf_header_submit': > drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c:297:25: warning: right > shift count >= width of type [-Wshift-count-overflow] > val = (header->handle >> 32); > ^ > > And use the lower_32_bits() macro instead of and-ing with a 32 bits > mask. > > Signed-off-by: Paul Bolle <pebolle@xxxxxxxxxx> > --- > Note: compile tested only (I don't use any of vmware's products). The warning can still be seen on v4.6-rc3 for 32 bits x86. This patch applies cleanly to that rc. Has anyone had a chance to look at this patch, and perhaps even test it? Thanks, Paul Bolle > drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c | 7 ++----- > 1 file changed, 2 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c > b/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c > index 67cebb23c940..aa04fb0159a7 100644 > --- a/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c > +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c > @@ -293,13 +293,10 @@ static int vmw_cmdbuf_header_submit(struct > vmw_cmdbuf_header *header) > struct vmw_cmdbuf_man *man = header->man; > u32 val; > > - if (sizeof(header->handle) > 4) > - val = (header->handle >> 32); > - else > - val = 0; > + val = upper_32_bits(header->handle); > vmw_write(man->dev_priv, SVGA_REG_COMMAND_HIGH, val); > > - val = (header->handle & 0xFFFFFFFFULL); > + val = lower_32_bits(header->handle); > val |= header->cb_context & SVGA_CB_CONTEXT_MASK; > vmw_write(man->dev_priv, SVGA_REG_COMMAND_LOW, val); > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel