Yup, it surely seems so. Florin
> On Apr 26, 2018, at 8:40 AM, Nicolau, Radu <radu.nico...@intel.com> wrote: > > Hi, > > If elements of the vector are 54 bytes and first is aligned, accessing the > second one should not generate instructions that assume it is aligned as > well. So based on that and your description, this is a gcc bug, right? The > issue does not occur on gcc 6.3, 6.4 but occurs on 7.2.0 and 7.3.1 (and I’ve > seen it a while ago on 5.x). > <> > Regards, > Radu > <>From: vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io> > [mailto:vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>] On Behalf Of Florin > Coras > Sent: Thursday, April 26, 2018 4:13 PM > To: Nicolau, Radu <radu.nico...@intel.com <mailto:radu.nico...@intel.com>> > Cc: vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io> > Subject: Re: [vpp-dev] segfault due to movaps unaligned access > > Hi Radu, > > The problem was that the vector was expected to have cacheline size aligned > data, but the elements in the vector were not a multiple of a cache line > (size was 54). As a result, the first element was aligned and the rest were > not. The vector infra just allocates an aligned chunk of memory, it does not > guarantee anything with respect to individual element placement. > > Hope it helps! > > Cheers, > Florin > > > On Apr 26, 2018, at 1:53 AM, Nicolau, Radu <radu.nico...@intel.com > <mailto:radu.nico...@intel.com>> wrote: > > Hi Florin, > > Thanks! The patch fixes the issue. > Any idea why is it happening? > > Regards, > Radu > > From: vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io> > [mailto:vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>] On Behalf Of Florin > Coras > Sent: Tuesday, April 24, 2018 11:25 PM > To: Nicolau, Radu <radu.nico...@intel.com <mailto:radu.nico...@intel.com>> > Cc: vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io> > Subject: Re: [vpp-dev] segfault due to movaps unaligned access > > Hi Radu, > > Making the crypto_worker_main_t a full cache line in size (see patch [1]) > seems to solve the issue. Could you confirm? > > Florin > > [1] https://gerrit.fd.io/r/#/c/12086/ <https://gerrit.fd.io/r/#/c/12086/> > > > > On Apr 24, 2018, at 9:23 AM, Radu Nicolau <radu.nico...@intel.com > <mailto:radu.nico...@intel.com>> wrote: > > Hello all, > > We’re seeing a weird issue, that is a segfault that looks to be caused by a > movaps instruction that is trying to access an address that is not 16 byte > aligned. > The call originates from a vec_validate_init_empty_aligned that has the > argument aligned to 16 bytes. > I have seen something like this in the past, we couldn’t find a root cause > and considered it a GCC bug (version 5 then), but now it pops up again on > version 7, so probably it isn’t. > Any idea? A snapshot of the gdb screen below. > > gcc (Ubuntu 7.2.0-8ubuntu3.2) 7.2.0 > https://postimg.cc/image/9jy4p38at/ <https://postimg.cc/image/9jy4p38at/> > > thanks and I will appreciate any help, > Radu > > >