From: oulijun <oulijun@huawei.com>
To: David Marchand <david.marchand@redhat.com>
Cc: "users@dpdk.org" <users@dpdk.org>,
"jerinj@marvell.com" <jerinj@marvell.com>,
"ndabilpuram@marvell.com" <ndabilpuram@marvell.com>,
"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-users] [dpdk-dev] 【meson build fail for octeontx2】
Date: Tue, 3 Nov 2020 19:21:44 +0800 [thread overview]
Message-ID: <8e0db1d1-b0c7-ae49-a658-c91ea7ae3d69@huawei.com> (raw)
In-Reply-To: <CAJFAV8yAZa_wq=6qZQK=Spm7xUsbDVt-0huH9kntSO96cdDRQQ@mail.gmail.com>
在 2020/10/27 16:31, David Marchand 写道:
> On Tue, Oct 27, 2020 at 8:43 AM oulijun <oulijun@huawei.com> wrote:
>>
>> Hi
>> I am trying to build dpdk-next-net code based Kunpeng920(ARM64) platform used meson build. However, it is build fail.
>> The libtmp_rte_event_octeontx2 build error happened. The output as follows:
>>
>> [1986/2298] Compiling C object drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o
>> FAILED: drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o
>> cc -Idrivers/libtmp_rte_event_octeontx2.a.p -Idrivers -I../drivers -Idrivers/event/octeontx2 -I../drivers/event/octeontx2 -Idrivers/crypto/octeontx2 -I../drivers/crypto/octeontx2 -Idrivers/common/cpt -I../drivers/common/cpt -Ilib/librte_eventdev -I../lib/librte_eventdev -I. -I.. -Iconfig -I../config -Ilib/librte_eal/include -I../lib/librte_eal/include -Ilib/librte_eal/linux/include -I../lib/librte_eal/linux/include -Ilib/librte_eal/arm/include -I../lib/librte_eal/arm/include -Ilib/librte_eal/common -I../lib/librte_eal/common -Ilib/librte_eal -I../lib/librte_eal -Ilib/librte_kvargs -I../lib/librte_kvargs -Ilib/librte_metrics -I../lib/librte_metrics -Ilib/librte_telemetry -I../lib/librte_telemetry -Ilib/librte_ring -I../lib/librte_ring -Ilib/librte_ethdev -I../lib/librte_ethdev -Ilib/librte_net -I../lib/librte_net -Ilib/librte_mbuf -I../lib/librte_mbuf -Ilib/librte_mempool -I../lib/librte_mempool -Ilib/librte_meter -I../lib/librte_meter -Ilib/librte_hash -I../lib/librte_hash -Ilib/librte_timer -I../lib/librte_timer -Ilib/librte_cryptodev -I../lib/librte_cryptodev -Idrivers/bus/pci -I../drivers/bus/pci -I../drivers/bus/pci/linux -Ilib/librte_pci -I../lib/librte_pci -Idrivers/common/octeontx2 -I../drivers/common/octeontx2 -Idrivers/mempool/octeontx2 -I../drivers/mempool/octeontx2 -Idrivers/net/octeontx2 -I../drivers/net/octeontx2 -Idrivers/crypto/octeontx -I../drivers/crypto/octeontx -Ilib/librte_security -I../lib/librte_security -Idrivers/bus/vdev -I../drivers/bus/vdev -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -include rte_config.h -Wextra -Wcast-qual -Wdeprecated -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -fPIC -march=armv8-a+crc -DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -MD -MQ drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o -MF drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o.d -o drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o -c ../drivers/event/octeontx2/otx2_tim_worker.c
>> ../drivers/event/octeontx2/otx2_tim_worker.c: In function ‘otx2_tim_arm_tmo_tick_burst_mod’:
>> ../drivers/event/octeontx2/otx2_tim_worker.c:154:18: error: could not split insn
>> struct rte_event_timer **tim, \
>> ^
>> ../drivers/event/octeontx2/otx2_tim_evdev.h:208:1: note: in expansion of macro ‘FP’
>> FP(mod, 0, 0, 0, OTX2_TIM_BKT_MOD | OTX2_TIM_ENA_DFB) \
>> ^
>> ../drivers/event/octeontx2/otx2_tim_worker.c:161:1: note: in expansion of macro ‘TIM_ARM_TMO_FASTPATH_MODES’
>> TIM_ARM_TMO_FASTPATH_MODES
>> ^
>> (insn 252 250 255 (parallel [
>> (set (reg:DI 1 x1 [orig:230 D.16918 ] [230])
>> (mem/v:DI (reg/f:DI 10 x10 [orig:229 D.16920 ] [229]) [-1 S8 A64]))
>> (set (mem/v:DI (reg/f:DI 10 x10 [orig:229 D.16920 ] [229]) [-1 S8 A64])
>> (unspec_volatile:DI [
>> (plus:DI (mem/v:DI (reg/f:DI 10 x10 [orig:229 D.16920 ] [229]) [-1 S8 A64])
>> (const_int 1099511627776 [0x10000000000]))
>> (const_int 2 [0x2])
>> ] UNSPECV_ATOMIC_OP))
>> (clobber (reg:CC 66 cc))
>> (clobber (reg:DI 4 x4))
>> (clobber (reg:SI 3 x3))
>> ]) ../drivers/event/octeontx2/otx2_tim_worker.h:81 1832 {atomic_fetch_adddi}
>> (expr_list:REG_UNUSED (reg:CC 66 cc)
>> (expr_list:REG_UNUSED (reg:DI 4 x4)
>> (expr_list:REG_UNUSED (reg:SI 3 x3)
>> (nil)))))
>> ../drivers/event/octeontx2/otx2_tim_worker.c:154:18: internal compiler error: in final_scan_insn, at final.c:2897
>> struct rte_event_timer **tim, \
>> ^
>> ../drivers/event/octeontx2/otx2_tim_evdev.h:208:1: note: in expansion of macro ‘FP’
>> FP(mod, 0, 0, 0, OTX2_TIM_BKT_MOD | OTX2_TIM_ENA_DFB) \
>> ^
>> ../drivers/event/octeontx2/otx2_tim_worker.c:161:1: note: in expansion of macro ‘TIM_ARM_TMO_FASTPATH_MODES’
>> TIM_ARM_TMO_FASTPATH_MODES
>> ^
>> Please submit a full bug report,
>> with preprocessed source if appropriate.
>> See <http://bugzilla.redhat.com/bugzilla> for instructions.
>> {standard input}: Assembler messages:
>> {standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
>> Preprocessed source stored into /tmp/cchw0Ftu.out file, please attach this to your bugreport.
>> [2056/2298] Compiling C object drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_worker_dual.c.o
>> ninja: build stopped: subcommand failed.
>>
>> The gcc version is:
>> [root@centos-C3 dpdk-next-net]# gcc -v
>> Using built-in specs.
>> COLLECT_GCC=gcc
>> COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/aarch64-unknown-linux-gnu/10.1.0/lto-wrapper
>> Target: aarch64-unknown-linux-gnu
>> Configured with: ./configure --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-5.1.3 --with-mpfr=/usr/local/mpfr-4.0.2 --with-mpc=/usr/local/mpc-1.1.0
>> Thread model: posix
>> Supported LTO compression algorithms: zlib
>> gcc version 10.1.0 (GCC)
>>
>> the OS types is centos
>> Linux centos-C3 5.6.0-rc5+ #1 SMP PREEMPT Wed Oct 21 16:32:46 HKT 2020 aarch64 aarch64 aarch64 GNU/Linux
>>
>> Do you have any idea about above?
>
> This is a compiler bug.
> Do you reproduce this with different versions of gcc? Like the one
> coming with the Centos distribution?
>
No. This requires a specific GCC version?
I understand whether to add a compilation trigger condition. Otherwise,
the entire DPDK directory needs to be compiled.
>
prev parent reply other threads:[~2020-11-03 11:21 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-27 7:42 [dpdk-users] " oulijun
2020-10-27 8:31 ` [dpdk-users] [dpdk-dev] " David Marchand
2020-11-03 11:21 ` oulijun [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8e0db1d1-b0c7-ae49-a658-c91ea7ae3d69@huawei.com \
--to=oulijun@huawei.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=jerinj@marvell.com \
--cc=ndabilpuram@marvell.com \
--cc=users@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).