Re: [PATCH 2/2] Use char * for struct drm_dp_aux_msg's buffer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It's GCC's -Wpointer-arith.

I'm stealing your code for another project that happened to have it on
by default. I'm trying to look for opportunities to contribute back
positive changes :-)

On Wed, May 23, 2018 at 11:09:28AM +0200, Daniel Vetter wrote:
> On Tue, May 22, 2018 at 11:33:35AM +0300, Jani Nikula wrote:
> > On Mon, 21 May 2018, Maya Rashish <coypu@xxxxxxx> wrote:
> > > In drm_dp_i2c_drain_msg we do msg.buffer += err which isn't
> > > legal for void *.
> > 
> > Well, this isn't pedantic C, it's GCC. There are tons of pointer
> > arithmetics for void pointers all over the kernel.
> 
> I thought C99 even deprecated char * as the generic pointer, recommending
> void * instead, which guarantees the exact same pointer arithmetic as char
> * (but has the special casting rules).
> 
> Which static checker came up with this?
> -Daniel
> 
> > 
> > BR,
> > Jani.
> > 
> > > ---
> > >  include/drm/drm_dp_helper.h | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/include/drm/drm_dp_helper.h b/include/drm/drm_dp_helper.h
> > > index 62903bae..06f9a61f 100644
> > > --- a/include/drm/drm_dp_helper.h
> > > +++ b/include/drm/drm_dp_helper.h
> > > @@ -1058,7 +1058,7 @@ struct drm_dp_aux_msg {
> > >  	unsigned int address;
> > >  	u8 request;
> > >  	u8 reply;
> > > -	void *buffer;
> > > +	char *buffer;
> > >  	size_t size;
> > >  };
> > 
> > -- 
> > Jani Nikula, Intel Open Source Graphics Center
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@xxxxxxxxxxxxxxxxxxxxx
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel
> 
> -- 
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux