> -----Original Message-----
> From: Brady, Alan
> Sent: Thursday, August 27, 2020 10:16 AM
> To: Jakub Kicinski <k...@kernel.org>; Nguyen, Anthony L
> <anthony.l.ngu...@intel.com>
> Cc: da...@davemloft.net; Michael, Alice <alice.mich...@intel.com>;
> netdev@vger.kernel.org; nhor...@redhat.com; sassm...@redhat.com;
> Kirsher, Jeffrey T <jeffrey.t.kirs...@intel.com>; Burra, Phani R
> <phani.r.bu...@intel.com>; Hay, Joshua A <joshua.a....@intel.com>; Chittim,
> Madhu <madhu.chit...@intel.com>; Linga, Pavan Kumar
> <pavan.kumar.li...@intel.com>; Skidmore, Donald C
> <donald.c.skidm...@intel.com>; Brandeburg, Jesse
> <jesse.brandeb...@intel.com>; Samudrala, Sridhar
> <sridhar.samudr...@intel.com>
> Subject: RE: [net-next v5 01/15] virtchnl: Extend AVF ops
> 
> > -----Original Message-----
> > From: Jakub Kicinski <k...@kernel.org>
> > Sent: Monday, August 24, 2020 12:43 PM
> > To: Nguyen, Anthony L <anthony.l.ngu...@intel.com>
> > Cc: da...@davemloft.net; Michael, Alice <alice.mich...@intel.com>;
> > netdev@vger.kernel.org; nhor...@redhat.com; sassm...@redhat.com;
> > Kirsher, Jeffrey T <jeffrey.t.kirs...@intel.com>; Brady, Alan
> > <alan.br...@intel.com>; Burra, Phani R <phani.r.bu...@intel.com>; Hay,
> > Joshua A <joshua.a....@intel.com>; Chittim, Madhu
> > <madhu.chit...@intel.com>; Linga, Pavan Kumar
> > <pavan.kumar.li...@intel.com>; Skidmore, Donald C
> > <donald.c.skidm...@intel.com>; Brandeburg, Jesse
> > <jesse.brandeb...@intel.com>; Samudrala, Sridhar
> > <sridhar.samudr...@intel.com>
> > Subject: Re: [net-next v5 01/15] virtchnl: Extend AVF ops
> >
> > On Mon, 24 Aug 2020 10:32:52 -0700 Tony Nguyen wrote:
> > > +struct virtchnl_rss_hash {
> > > + u64 hash;
> > > + u16 vport_id;
> > > +};
> > > +
> > > +VIRTCHNL_CHECK_STRUCT_LEN(16, virtchnl_rss_hash);
> >
> > I've added 32bit builds to my local setup since v4 was posted - looks
> > like there's a number of errors here. You can't assume u64 forces a
> > 64bit alignment. Best to specify the padding explicitly.
> >
> > FWIW these are the errors I got but there may be more:
> >
> 
> It seems like these are triggering on old messages too, curious why this 
> wasn't
> caught sooner.  Will fix, thanks.
> 
> -Alan

I managed to get a 32-bit build environment setup and found that we do indeed 
have alignment issues there on 32 bit systems for some of the new ops we added 
with the series.  However, I think I'm still missing something as it looks like 
you have errors triggering on much more than I found and I'm suspecting there 
might be a compile option I'm missing or perhaps my GCC version is older than 
yours.  E.g., I found issues in virtchnl_txq_info_v2, virtchnl_rxq_info_v2, 
virtchnl_config_rx_queues, and virtchnl_rss_hash.  It appears you have compile 
issues in virtchnl_get_capabilities (among others) however which did not 
trigger on mine.  Manual inspection indicates that it _should_ be triggering a 
failure and that your setup is more correct than mine.  I'm guessing some extra 
padding is getting included in some places and causing a false positive on the 
other alignment issues.  Are there any hints you can provide me that might help 
me more accurately reproduce this?

-Alan

Reply via email to