> -----Original Message----- > From: David Marchand <david.march...@redhat.com> > Sent: Tuesday, September 21, 2021 4:30 PM > To: Peng, ZhihongX <zhihongx.p...@intel.com> > Cc: Burakov, Anatoly <anatoly.bura...@intel.com>; David Christensen > <d...@linux.vnet.ibm.com>; Ananyev, Konstantin > <konstantin.anan...@intel.com>; step...@networkplumber.org; > dev@dpdk.org; Lin, Xueqin <xueqin....@intel.com> > Subject: Re: [dpdk-dev] [PATCH] Enable AddressSanitizer feature on DPDK > > On Mon, Sep 20, 2021 at 9:41 PM David Christensen > <d...@linux.vnet.ibm.com> wrote: > > >>> We do not have a ppc platform, so there is no adaptation. > > >>> doc/guides/prog_guide/asan.rst has stated that we currently only > > >>> support Linux x86_64. You can adapt according to the following > > >>> documents, > > >> the main work is to modify the base address according to the platform. > > >>> Documents: > > >>> https://github.com/google/sanitizers/wiki/AddressSanitizer > > >>> https://github.com/llvm/llvm-project/tree/main/compiler-rt > > >> > > >> Understand you don't have such a platform. I looked into it and > > >> suggest the following change in lib/eal/common/malloc_elem.h: > > >> > > >> #define ASAN_SHADOW_GRAIN_SIZE 8 > > >> #define ASAN_SHADOW_SCALE 3 > > >> #ifdef RTE_ARCH_PPC_64 > > >> #define ASAN_SHADOW_OFFSET 0x020000000000 #else #define > > >> ASAN_SHADOW_OFFSET 0x00007fff8000 #endif > > >> #define ASAN_MEM_FREE_FLAG 0xfd > > >> #define ASAN_MEM_REDZONE_FLAG 0xfa > > >> #define ASAN_MEM_TO_SHADOW(mem) (((mem) >> > > >> ASAN_SHADOW_SCALE) + > > >> ASAN_SHADOW_OFFSET) > > >> > > >> > > >> This resolves the segmentation error I receive. > > >> > > >> Dave > > >> > > > > > > Great, good information for dpdk asan tool. Because we can't do many > > > tests, so when this patch is merged into the main line, you can > > > submit the ppc architecture patch. > > > > If your argument is that this is x86 only then please ensure it can't > > be enabled on non-x86 platforms such as ARM and PPC. I can then > > easily submit a follow-on patch to enable for PPC. > > > > As the patch currently stands it enables ASAN on a non-tested platform > > and provides an unexpected error for some users when it can easily be > > avoided. I'd advise not accepting the patch as currently presented. > > Please make sure only x86_64 gets this code enabled. > I'll wait for a new revision, thanks.
V4 will enable platform macro switch. > > -- > David Marchand