diff mbox series

[ovs-dev,v2,3/3] travis: Enable OvS Travis CI for arm

Message ID 1575602773-11901-4-git-send-email-Lance.Yang@arm.com
State Superseded
Headers show
Series Fix issues and enable Travis CI on arm | expand

Commit Message

Lance Yang Dec. 6, 2019, 3:26 a.m. UTC
Enable part of travis jobs with gcc compiler for arm64 architecture

1. Add arm jobs into the matrix in .travis.yml configuration file
2. To enable OVS-DPDK jobs, set the build target according to
different CPU architectures
3. Temporarily disable sparse checker because of static code checking
failure on arm64

Successful travis build jobs report:
https://travis-ci.org/yzyuestc/ovs/builds/621037339

Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
Signed-off-by: Lance Yang <Lance.Yang@arm.com>
---
 .travis.yml            | 18 ++++++++++++++++++
 .travis/linux-build.sh | 16 ++++++++++++++--
 2 files changed, 32 insertions(+), 2 deletions(-)

Comments

Ilya Maximets Dec. 6, 2019, 4:39 p.m. UTC | #1
On 06.12.2019 04:26, Lance Yang wrote:
> Enable part of travis jobs with gcc compiler for arm64 architecture
> 
> 1. Add arm jobs into the matrix in .travis.yml configuration file
> 2. To enable OVS-DPDK jobs, set the build target according to
> different CPU architectures
> 3. Temporarily disable sparse checker because of static code checking
> failure on arm64
> 
> Successful travis build jobs report:
> https://travis-ci.org/yzyuestc/ovs/builds/621037339
> 
> Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
> Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
> Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
> Signed-off-by: Lance Yang <Lance.Yang@arm.com>
> ---

Compiler crashed while building DPDK:

/home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c: In function ‘ixgbe_pf_host_configure’:
/home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:297:1: internal compiler error: Segmentation fault

https://travis-ci.org/ovsrobot/ovs/jobs/621434216#L1999

This is not good.
Need to check how frequently this happens.

Best regards, Ilya Maximets.
Lance Yang Dec. 9, 2019, 9:12 a.m. UTC | #2
> -----Original Message-----
> From: Ilya Maximets <i.maximets@ovn.org>
> Sent: Saturday, December 7, 2019 12:39 AM
> To: Lance Yang (Arm Technology China) <Lance.Yang@arm.com>; ovs-dev@openvswitch.org
> Cc: i.maximets@ovn.org; blp@ovn.org; Yanqin Wei (Arm Technology China)
> <Yanqin.Wei@arm.com>; dwilder@us.ibm.com; Gavin Hu (Arm Technology China)
> <Gavin.Hu@arm.com>; Ruifeng Wang (Arm Technology China) <Ruifeng.Wang@arm.com>;
> Jieqiang Wang (Arm Technology China) <Jieqiang.Wang@arm.com>; Malvika Gupta
> <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for arm
>
> On 06.12.2019 04:26, Lance Yang wrote:
> > Enable part of travis jobs with gcc compiler for arm64 architecture
> >
> > 1. Add arm jobs into the matrix in .travis.yml configuration file 2.
> > To enable OVS-DPDK jobs, set the build target according to different
> > CPU architectures 3. Temporarily disable sparse checker because of
> > static code checking failure on arm64
> >
> > Successful travis build jobs report:
> > https://travis-ci.org/yzyuestc/ovs/builds/621037339
> >
> > Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
> > Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
> > Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
> > Signed-off-by: Lance Yang <Lance.Yang@arm.com>
> > ---
>
> Compiler crashed while building DPDK:
>
> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c: In function
> ‘ixgbe_pf_host_configure’:
> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:297:1: internal
> compiler error: Segmentation fault
>
> https://travis-ci.org/ovsrobot/ovs/jobs/621434216#L1999
>
> This is not good.
> Need to check how frequently this happens.
>
> Best regards, Ilya Maximets.
[Lance]

I checked the report via the link you attached and re-triggered the build on my repo for several times. However, I could not reproduce it at this moment. We will research on this issue.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
Lance Yang Jan. 21, 2020, 1:05 a.m. UTC | #3
> -----Original Message-----
> From: Ilya Maximets <i.maximets@ovn.org>
> Sent: Saturday, December 7, 2019 12:39 AM
> To: Lance Yang (Arm Technology China) <Lance.Yang@arm.com>; ovs-
> dev@openvswitch.org
> Cc: i.maximets@ovn.org; blp@ovn.org; Yanqin Wei (Arm Technology China)
> <Yanqin.Wei@arm.com>; dwilder@us.ibm.com; Gavin Hu (Arm Technology China)
> <Gavin.Hu@arm.com>; Ruifeng Wang (Arm Technology China) <Ruifeng.Wang@arm.com>;
> Jieqiang Wang (Arm Technology China) <Jieqiang.Wang@arm.com>; Malvika Gupta
> <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for arm
>
> On 06.12.2019 04:26, Lance Yang wrote:
> > Enable part of travis jobs with gcc compiler for arm64 architecture
> >
> > 1. Add arm jobs into the matrix in .travis.yml configuration file 2.
> > To enable OVS-DPDK jobs, set the build target according to different
> > CPU architectures 3. Temporarily disable sparse checker because of
> > static code checking failure on arm64
> >
> > Successful travis build jobs report:
> > https://travis-ci.org/yzyuestc/ovs/builds/621037339
> >
> > Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
> > Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
> > Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
> > Signed-off-by: Lance Yang <Lance.Yang@arm.com>
> > ---
>
> Compiler crashed while building DPDK:
>
> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c: In function
> ‘ixgbe_pf_host_configure’:
> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:297:1: internal
> compiler error: Segmentation fault
>
> https://travis-ci.org/ovsrobot/ovs/jobs/621434216#L1999
>
> This is not good.
> Need to check how frequently this happens.
>
> Best regards, Ilya Maximets.
[Lance]
Hi Ilya,

After you give us the feedback about the segmentation fault issue, we keep running the travis CI to observe the frequency. We run those arm jobs on a regular basis and clear cache on every single build. We have run the build at least 2 times a day for more than a month.

The good thing is that we haven't reproduce the segfault issue. Job reports are available at: https://travis-ci.org/yzyuestc/ovs/builds/639064033

Travis CI community also made some adjustment on their side, you can see their reply here: https://travis-ci.community/t/segfaults-in-arm64-environment/5617/13

I think the segfault issue may occur by chance. At least, it is not a frequent one, which is unlikely to cause issues to OVS developers. Could you please check it again?

Best Regards,
Lance
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
Yanqin Wei Feb. 5, 2020, 2:30 p.m. UTC | #4
Hi Ilya, 

Travis on Arm looks stable now, we did not observe any issue more than two weeks. And Travis also made some adjustment on their side, you can see their reply here: https://travis-ci.community/t/segfaults-in-arm64-environment/5617/13
Could you reconsider this patch?

Best Regards,
Wei Yanqin

> -----Original Message-----
> From: Lance Yang <Lance.Yang@arm.com>
> Sent: Tuesday, January 21, 2020 9:06 AM
> To: Ilya Maximets <i.maximets@ovn.org>; ovs-dev@openvswitch.org
> Cc: blp@ovn.org; Yanqin Wei <Yanqin.Wei@arm.com>; dwilder@us.ibm.com;
> Gavin Hu <Gavin.Hu@arm.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> Jieqiang Wang <Jieqiang.Wang@arm.com>; Malvika Gupta
> <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> Subject: RE: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for arm
> 
> 
> > -----Original Message-----
> > From: Ilya Maximets <i.maximets@ovn.org>
> > Sent: Saturday, December 7, 2019 12:39 AM
> > To: Lance Yang (Arm Technology China) <Lance.Yang@arm.com>; ovs-
> > dev@openvswitch.org
> > Cc: i.maximets@ovn.org; blp@ovn.org; Yanqin Wei (Arm Technology China)
> > <Yanqin.Wei@arm.com>; dwilder@us.ibm.com; Gavin Hu (Arm Technology
> > China) <Gavin.Hu@arm.com>; Ruifeng Wang (Arm Technology China)
> > <Ruifeng.Wang@arm.com>; Jieqiang Wang (Arm Technology China)
> > <Jieqiang.Wang@arm.com>; Malvika Gupta <Malvika.Gupta@arm.com>; nd
> > <nd@arm.com>
> > Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for
> > arm
> >
> > On 06.12.2019 04:26, Lance Yang wrote:
> > > Enable part of travis jobs with gcc compiler for arm64 architecture
> > >
> > > 1. Add arm jobs into the matrix in .travis.yml configuration file 2.
> > > To enable OVS-DPDK jobs, set the build target according to different
> > > CPU architectures 3. Temporarily disable sparse checker because of
> > > static code checking failure on arm64
> > >
> > > Successful travis build jobs report:
> > > https://travis-ci.org/yzyuestc/ovs/builds/621037339
> > >
> > > Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
> > > Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
> > > Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
> > > Signed-off-by: Lance Yang <Lance.Yang@arm.com>
> > > ---
> >
> > Compiler crashed while building DPDK:
> >
> > /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
> > In function
> > ‘ixgbe_pf_host_configure’:
> > /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
> > 297:1: internal compiler error: Segmentation fault
> >
> > https://travis-ci.org/ovsrobot/ovs/jobs/621434216#L1999
> >
> > This is not good.
> > Need to check how frequently this happens.
> >
> > Best regards, Ilya Maximets.
> [Lance]
> Hi Ilya,
> 
> After you give us the feedback about the segmentation fault issue, we keep
> running the travis CI to observe the frequency. We run those arm jobs on a
> regular basis and clear cache on every single build. We have run the build at
> least 2 times a day for more than a month.
> 
> The good thing is that we haven't reproduce the segfault issue. Job reports are
> available at: https://travis-ci.org/yzyuestc/ovs/builds/639064033
> 
> Travis CI community also made some adjustment on their side, you can see
> their reply here: https://travis-ci.community/t/segfaults-in-arm64-
> environment/5617/13
> 
> I think the segfault issue may occur by chance. At least, it is not a frequent one,
> which is unlikely to cause issues to OVS developers. Could you please check it
> again?
> 
> Best Regards,
> Lance
Yanqin Wei March 11, 2020, 4:57 a.m. UTC | #5
Hi Ilya,

This patch has been in the review pipeline for some time. It runs stable on our internal repo more than two months.
Could you give us some suggestion about the next action I can take to speed up the merge of this patch?

Best Regards,
Wei Yanqin

> -----Original Message-----
> From: Lance Yang <Lance.Yang@arm.com>
> Sent: Tuesday, January 21, 2020 9:06 AM
> To: Ilya Maximets <i.maximets@ovn.org>; ovs-dev@openvswitch.org
> Cc: blp@ovn.org; Yanqin Wei <Yanqin.Wei@arm.com>; dwilder@us.ibm.com;
> Gavin Hu <Gavin.Hu@arm.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> Jieqiang Wang <Jieqiang.Wang@arm.com>; Malvika Gupta
> <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> Subject: RE: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for arm
> 
> 
> > -----Original Message-----
> > From: Ilya Maximets <i.maximets@ovn.org>
> > Sent: Saturday, December 7, 2019 12:39 AM
> > To: Lance Yang (Arm Technology China) <Lance.Yang@arm.com>; ovs-
> > dev@openvswitch.org
> > Cc: i.maximets@ovn.org; blp@ovn.org; Yanqin Wei (Arm Technology China)
> > <Yanqin.Wei@arm.com>; dwilder@us.ibm.com; Gavin Hu (Arm Technology
> > China) <Gavin.Hu@arm.com>; Ruifeng Wang (Arm Technology China)
> > <Ruifeng.Wang@arm.com>; Jieqiang Wang (Arm Technology China)
> > <Jieqiang.Wang@arm.com>; Malvika Gupta <Malvika.Gupta@arm.com>; nd
> > <nd@arm.com>
> > Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for
> > arm
> >
> > On 06.12.2019 04:26, Lance Yang wrote:
> > > Enable part of travis jobs with gcc compiler for arm64 architecture
> > >
> > > 1. Add arm jobs into the matrix in .travis.yml configuration file 2.
> > > To enable OVS-DPDK jobs, set the build target according to different
> > > CPU architectures 3. Temporarily disable sparse checker because of
> > > static code checking failure on arm64
> > >
> > > Successful travis build jobs report:
> > > https://travis-ci.org/yzyuestc/ovs/builds/621037339
> > >
> > > Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
> > > Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
> > > Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
> > > Signed-off-by: Lance Yang <Lance.Yang@arm.com>
> > > ---
> >
> > Compiler crashed while building DPDK:
> >
> > /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
> > In function
> > ‘ixgbe_pf_host_configure’:
> > /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
> > 297:1: internal compiler error: Segmentation fault
> >
> > https://travis-ci.org/ovsrobot/ovs/jobs/621434216#L1999
> >
> > This is not good.
> > Need to check how frequently this happens.
> >
> > Best regards, Ilya Maximets.
> [Lance]
> Hi Ilya,
> 
> After you give us the feedback about the segmentation fault issue, we keep
> running the travis CI to observe the frequency. We run those arm jobs on a
> regular basis and clear cache on every single build. We have run the build at
> least 2 times a day for more than a month.
> 
> The good thing is that we haven't reproduce the segfault issue. Job reports are
> available at: https://travis-ci.org/yzyuestc/ovs/builds/639064033
> 
> Travis CI community also made some adjustment on their side, you can see
> their reply here: https://travis-ci.community/t/segfaults-in-arm64-
> environment/5617/13
> 
> I think the segfault issue may occur by chance. At least, it is not a frequent one,
> which is unlikely to cause issues to OVS developers. Could you please check it
> again?
> 
> Best Regards,
> Lance
Ilya Maximets March 11, 2020, 4:20 p.m. UTC | #6
On 3/11/20 5:57 AM, Yanqin Wei wrote:
> Hi Ilya,
> 
> This patch has been in the review pipeline for some time. It runs stable on our internal repo more than two months.
> Could you give us some suggestion about the next action I can take to speed up the merge of this patch?

Hi.  Sorry for things taking so long.
I have this patch in my backlog for this or next week.

The main concern right know is possible significant increase of the
checking time.  Are you sure that we need all the listed jobs?
Do you expect some arm64 specific issues on the linking stage?
I mean, maybe we could reduce number of different combinations of
"shared" flags.  I had no chance to run this, so I don't know
how much time these jobs really takes and what is the total time
difference.

Best regards, Ilya Maximets.


> 
> Best Regards,
> Wei Yanqin
> 
>> -----Original Message-----
>> From: Lance Yang <Lance.Yang@arm.com>
>> Sent: Tuesday, January 21, 2020 9:06 AM
>> To: Ilya Maximets <i.maximets@ovn.org>; ovs-dev@openvswitch.org
>> Cc: blp@ovn.org; Yanqin Wei <Yanqin.Wei@arm.com>; dwilder@us.ibm.com;
>> Gavin Hu <Gavin.Hu@arm.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
>> Jieqiang Wang <Jieqiang.Wang@arm.com>; Malvika Gupta
>> <Malvika.Gupta@arm.com>; nd <nd@arm.com>
>> Subject: RE: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for arm
>>
>>
>>> -----Original Message-----
>>> From: Ilya Maximets <i.maximets@ovn.org>
>>> Sent: Saturday, December 7, 2019 12:39 AM
>>> To: Lance Yang (Arm Technology China) <Lance.Yang@arm.com>; ovs-
>>> dev@openvswitch.org
>>> Cc: i.maximets@ovn.org; blp@ovn.org; Yanqin Wei (Arm Technology China)
>>> <Yanqin.Wei@arm.com>; dwilder@us.ibm.com; Gavin Hu (Arm Technology
>>> China) <Gavin.Hu@arm.com>; Ruifeng Wang (Arm Technology China)
>>> <Ruifeng.Wang@arm.com>; Jieqiang Wang (Arm Technology China)
>>> <Jieqiang.Wang@arm.com>; Malvika Gupta <Malvika.Gupta@arm.com>; nd
>>> <nd@arm.com>
>>> Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for
>>> arm
>>>
>>> On 06.12.2019 04:26, Lance Yang wrote:
>>>> Enable part of travis jobs with gcc compiler for arm64 architecture
>>>>
>>>> 1. Add arm jobs into the matrix in .travis.yml configuration file 2.
>>>> To enable OVS-DPDK jobs, set the build target according to different
>>>> CPU architectures 3. Temporarily disable sparse checker because of
>>>> static code checking failure on arm64
>>>>
>>>> Successful travis build jobs report:
>>>> https://travis-ci.org/yzyuestc/ovs/builds/621037339
>>>>
>>>> Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
>>>> Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
>>>> Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
>>>> Signed-off-by: Lance Yang <Lance.Yang@arm.com>
>>>> ---
>>>
>>> Compiler crashed while building DPDK:
>>>
>>> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
>>> In function
>>> ‘ixgbe_pf_host_configure’:
>>> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
>>> 297:1: internal compiler error: Segmentation fault
>>>
>>> https://travis-ci.org/ovsrobot/ovs/jobs/621434216#L1999
>>>
>>> This is not good.
>>> Need to check how frequently this happens.
>>>
>>> Best regards, Ilya Maximets.
>> [Lance]
>> Hi Ilya,
>>
>> After you give us the feedback about the segmentation fault issue, we keep
>> running the travis CI to observe the frequency. We run those arm jobs on a
>> regular basis and clear cache on every single build. We have run the build at
>> least 2 times a day for more than a month.
>>
>> The good thing is that we haven't reproduce the segfault issue. Job reports are
>> available at: https://travis-ci.org/yzyuestc/ovs/builds/639064033
>>
>> Travis CI community also made some adjustment on their side, you can see
>> their reply here: https://travis-ci.community/t/segfaults-in-arm64-
>> environment/5617/13
>>
>> I think the segfault issue may occur by chance. At least, it is not a frequent one,
>> which is unlikely to cause issues to OVS developers. Could you please check it
>> again?
>>
>> Best Regards,
>> Lance
>
Yanqin Wei March 12, 2020, 9:38 a.m. UTC | #7
Thanks for the feedback. Replied in line.

> -----Original Message-----
> From: Ilya Maximets <i.maximets@ovn.org>
> Sent: Thursday, March 12, 2020 12:20 AM
> To: Yanqin Wei <Yanqin.Wei@arm.com>; Ilya Maximets
> <i.maximets@ovn.org>; ovs-dev@openvswitch.org; blp@ovn.org; Lance Yang
> <Lance.Yang@arm.com>
> Cc: dwilder@us.ibm.com; Gavin Hu <Gavin.Hu@arm.com>; Ruifeng Wang
> <Ruifeng.Wang@arm.com>; Jieqiang Wang <Jieqiang.Wang@arm.com>;
> Malvika Gupta <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for arm
> 
> On 3/11/20 5:57 AM, Yanqin Wei wrote:
> > Hi Ilya,
> >
> > This patch has been in the review pipeline for some time. It runs stable on
> our internal repo more than two months.
> > Could you give us some suggestion about the next action I can take to speed
> up the merge of this patch?
> 
> Hi.  Sorry for things taking so long.
> I have this patch in my backlog for this or next week.
> 
> The main concern right know is possible significant increase of the checking
> time.  Are you sure that we need all the listed jobs?
> Do you expect some arm64 specific issues on the linking stage?
> I mean, maybe we could reduce number of different combinations of "shared"
> flags.  I had no chance to run this, so I don't know how much time these jobs
> really takes and what is the total time difference.

[Yanqin]  This is latest build report for x86 and arm.  Sparse is disabled here because it has some compiling issue for both x86 and arm today.
X86 and Arm https://travis-ci.com/github/MarcoDWei/ovs/builds/152933388?utm_medium=notification&utm_source=email
Ran for 58 min 3 sec/ Total time 4 hrs 12 min 24 sec
X86 only https://travis-ci.com/github/MarcoDWei/ovs/builds/152942934?utm_medium=notification&utm_source=email
Ran for 38 min 40 sec /Total time 2 hrs 55 min 4 sec

The total time increases around 1hr 17min for SIX new arm jobs. Running time increases around 20 mins. Kernel datapath jobs look most time consuming jobs.
OPTS="--disable-ssl"                                            4 min 31 sec 
KERNEL_LIST="5.0 4.20 4.19 4.18 4.17 4.16" 22 min 39 sec 
KERNEL_LIST="4.15 4.14 4.9 4.4 3.16"            17 min 34 sec 
DPDK=1 OPTS="--enable-shared"                    11 min 17 sec 
DPDK_SHARED=1                                               10 min 35 sec 
DPDK_SHARED=1 OPTS="--enable-shared"   11 min 21 sec

I agree with you to remove some shared tag combination because they have low risk of CPU specific issues in linking stage.
Moreover we could chose a part of kernel version for ARM jobs, which could significantly reduce total time and running time.  The running time is expected to increase around 10 minutes.
OPTS="--disable-ssl"                                            
KERNEL_LIST="5.0 4.20 4.16 4.9 3.16" 
DPDK=1 OPTS="--enable-shared"                    
DPDK_SHARED=1                                               
	
> 
> Best regards, Ilya Maximets.
> 
> 
> >
> > Best Regards,
> > Wei Yanqin
> >
> >> -----Original Message-----
> >> From: Lance Yang <Lance.Yang@arm.com>
> >> Sent: Tuesday, January 21, 2020 9:06 AM
> >> To: Ilya Maximets <i.maximets@ovn.org>; ovs-dev@openvswitch.org
> >> Cc: blp@ovn.org; Yanqin Wei <Yanqin.Wei@arm.com>;
> dwilder@us.ibm.com;
> >> Gavin Hu <Gavin.Hu@arm.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> >> Jieqiang Wang <Jieqiang.Wang@arm.com>; Malvika Gupta
> >> <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> >> Subject: RE: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI
> >> for arm
> >>
> >>
> >>> -----Original Message-----
> >>> From: Ilya Maximets <i.maximets@ovn.org>
> >>> Sent: Saturday, December 7, 2019 12:39 AM
> >>> To: Lance Yang (Arm Technology China) <Lance.Yang@arm.com>; ovs-
> >>> dev@openvswitch.org
> >>> Cc: i.maximets@ovn.org; blp@ovn.org; Yanqin Wei (Arm Technology
> >>> China) <Yanqin.Wei@arm.com>; dwilder@us.ibm.com; Gavin Hu (Arm
> >>> Technology
> >>> China) <Gavin.Hu@arm.com>; Ruifeng Wang (Arm Technology China)
> >>> <Ruifeng.Wang@arm.com>; Jieqiang Wang (Arm Technology China)
> >>> <Jieqiang.Wang@arm.com>; Malvika Gupta <Malvika.Gupta@arm.com>;
> nd
> >>> <nd@arm.com>
> >>> Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI
> >>> for arm
> >>>
> >>> On 06.12.2019 04:26, Lance Yang wrote:
> >>>> Enable part of travis jobs with gcc compiler for arm64 architecture
> >>>>
> >>>> 1. Add arm jobs into the matrix in .travis.yml configuration file 2.
> >>>> To enable OVS-DPDK jobs, set the build target according to
> >>>> different CPU architectures 3. Temporarily disable sparse checker
> >>>> because of static code checking failure on arm64
> >>>>
> >>>> Successful travis build jobs report:
> >>>> https://travis-ci.org/yzyuestc/ovs/builds/621037339
> >>>>
> >>>> Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
> >>>> Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
> >>>> Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
> >>>> Signed-off-by: Lance Yang <Lance.Yang@arm.com>
> >>>> ---
> >>>
> >>> Compiler crashed while building DPDK:
> >>>
> >>> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
> >>> In function
> >>> ‘ixgbe_pf_host_configure’:
> >>> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
> >>> 297:1: internal compiler error: Segmentation fault
> >>>
> >>> https://travis-ci.org/ovsrobot/ovs/jobs/621434216#L1999
> >>>
> >>> This is not good.
> >>> Need to check how frequently this happens.
> >>>
> >>> Best regards, Ilya Maximets.
> >> [Lance]
> >> Hi Ilya,
> >>
> >> After you give us the feedback about the segmentation fault issue, we
> >> keep running the travis CI to observe the frequency. We run those arm
> >> jobs on a regular basis and clear cache on every single build. We
> >> have run the build at least 2 times a day for more than a month.
> >>
> >> The good thing is that we haven't reproduce the segfault issue. Job
> >> reports are available at:
> >> https://travis-ci.org/yzyuestc/ovs/builds/639064033
> >>
> >> Travis CI community also made some adjustment on their side, you can
> >> see their reply here:
> >> https://travis-ci.community/t/segfaults-in-arm64-
> >> environment/5617/13
> >>
> >> I think the segfault issue may occur by chance. At least, it is not a
> >> frequent one, which is unlikely to cause issues to OVS developers.
> >> Could you please check it again?
> >>
> >> Best Regards,
> >> Lance
> >
Yanqin Wei March 20, 2020, 3:36 a.m. UTC | #8
Hi Ilya,

The patch is updated for reducing Arm CI running time.  Do you think if the time increment is acceptable?
https://patchwork.ozlabs.org/patch/1258100/

Best Regards,
Wei Yanqin

> -----Original Message-----
> From: Yanqin Wei
> Sent: Thursday, March 12, 2020 5:39 PM
> To: Ilya Maximets <i.maximets@ovn.org>; ovs-dev@openvswitch.org;
> blp@ovn.org; Lance Yang <Lance.Yang@arm.com>
> Cc: dwilder@us.ibm.com; Gavin Hu <Gavin.Hu@arm.com>; Ruifeng Wang
> <Ruifeng.Wang@arm.com>; Jieqiang Wang <Jieqiang.Wang@arm.com>;
> Malvika Gupta <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> Subject: RE: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for arm
> 
> Thanks for the feedback. Replied in line.
> 
> > -----Original Message-----
> > From: Ilya Maximets <i.maximets@ovn.org>
> > Sent: Thursday, March 12, 2020 12:20 AM
> > To: Yanqin Wei <Yanqin.Wei@arm.com>; Ilya Maximets
> > <i.maximets@ovn.org>; ovs-dev@openvswitch.org; blp@ovn.org; Lance
> Yang
> > <Lance.Yang@arm.com>
> > Cc: dwilder@us.ibm.com; Gavin Hu <Gavin.Hu@arm.com>; Ruifeng Wang
> > <Ruifeng.Wang@arm.com>; Jieqiang Wang <Jieqiang.Wang@arm.com>;
> Malvika
> > Gupta <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> > Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI for
> > arm
> >
> > On 3/11/20 5:57 AM, Yanqin Wei wrote:
> > > Hi Ilya,
> > >
> > > This patch has been in the review pipeline for some time. It runs
> > > stable on
> > our internal repo more than two months.
> > > Could you give us some suggestion about the next action I can take
> > > to speed
> > up the merge of this patch?
> >
> > Hi.  Sorry for things taking so long.
> > I have this patch in my backlog for this or next week.
> >
> > The main concern right know is possible significant increase of the
> > checking time.  Are you sure that we need all the listed jobs?
> > Do you expect some arm64 specific issues on the linking stage?
> > I mean, maybe we could reduce number of different combinations of
> "shared"
> > flags.  I had no chance to run this, so I don't know how much time
> > these jobs really takes and what is the total time difference.
> 
> [Yanqin]  This is latest build report for x86 and arm.  Sparse is disabled here
> because it has some compiling issue for both x86 and arm today.
> X86 and Arm https://travis-
> ci.com/github/MarcoDWei/ovs/builds/152933388?utm_medium=notification
> &utm_source=email
> Ran for 58 min 3 sec/ Total time 4 hrs 12 min 24 sec
> X86 only https://travis-
> ci.com/github/MarcoDWei/ovs/builds/152942934?utm_medium=notification
> &utm_source=email
> Ran for 38 min 40 sec /Total time 2 hrs 55 min 4 sec
> 
> The total time increases around 1hr 17min for SIX new arm jobs. Running time
> increases around 20 mins. Kernel datapath jobs look most time consuming
> jobs.
> OPTS="--disable-ssl"                                            4 min 31 sec
> KERNEL_LIST="5.0 4.20 4.19 4.18 4.17 4.16" 22 min 39 sec
> KERNEL_LIST="4.15 4.14 4.9 4.4 3.16"            17 min 34 sec
> DPDK=1 OPTS="--enable-shared"                    11 min 17 sec
> DPDK_SHARED=1                                               10 min 35 sec
> DPDK_SHARED=1 OPTS="--enable-shared"   11 min 21 sec
> 
> I agree with you to remove some shared tag combination because they have
> low risk of CPU specific issues in linking stage.
> Moreover we could chose a part of kernel version for ARM jobs, which could
> significantly reduce total time and running time.  The running time is expected
> to increase around 10 minutes.
> OPTS="--disable-ssl"
> KERNEL_LIST="5.0 4.20 4.16 4.9 3.16"
> DPDK=1 OPTS="--enable-shared"
> DPDK_SHARED=1
> 
> >
> > Best regards, Ilya Maximets.
> >
> >
> > >
> > > Best Regards,
> > > Wei Yanqin
> > >
> > >> -----Original Message-----
> > >> From: Lance Yang <Lance.Yang@arm.com>
> > >> Sent: Tuesday, January 21, 2020 9:06 AM
> > >> To: Ilya Maximets <i.maximets@ovn.org>; ovs-dev@openvswitch.org
> > >> Cc: blp@ovn.org; Yanqin Wei <Yanqin.Wei@arm.com>;
> > dwilder@us.ibm.com;
> > >> Gavin Hu <Gavin.Hu@arm.com>; Ruifeng Wang
> <Ruifeng.Wang@arm.com>;
> > >> Jieqiang Wang <Jieqiang.Wang@arm.com>; Malvika Gupta
> > >> <Malvika.Gupta@arm.com>; nd <nd@arm.com>
> > >> Subject: RE: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI
> > >> for arm
> > >>
> > >>
> > >>> -----Original Message-----
> > >>> From: Ilya Maximets <i.maximets@ovn.org>
> > >>> Sent: Saturday, December 7, 2019 12:39 AM
> > >>> To: Lance Yang (Arm Technology China) <Lance.Yang@arm.com>; ovs-
> > >>> dev@openvswitch.org
> > >>> Cc: i.maximets@ovn.org; blp@ovn.org; Yanqin Wei (Arm Technology
> > >>> China) <Yanqin.Wei@arm.com>; dwilder@us.ibm.com; Gavin Hu (Arm
> > >>> Technology
> > >>> China) <Gavin.Hu@arm.com>; Ruifeng Wang (Arm Technology China)
> > >>> <Ruifeng.Wang@arm.com>; Jieqiang Wang (Arm Technology China)
> > >>> <Jieqiang.Wang@arm.com>; Malvika Gupta <Malvika.Gupta@arm.com>;
> > nd
> > >>> <nd@arm.com>
> > >>> Subject: Re: [ovs-dev] [PATCH v2 3/3] travis: Enable OvS Travis CI
> > >>> for arm
> > >>>
> > >>> On 06.12.2019 04:26, Lance Yang wrote:
> > >>>> Enable part of travis jobs with gcc compiler for arm64
> > >>>> architecture
> > >>>>
> > >>>> 1. Add arm jobs into the matrix in .travis.yml configuration file 2.
> > >>>> To enable OVS-DPDK jobs, set the build target according to
> > >>>> different CPU architectures 3. Temporarily disable sparse checker
> > >>>> because of static code checking failure on arm64
> > >>>>
> > >>>> Successful travis build jobs report:
> > >>>> https://travis-ci.org/yzyuestc/ovs/builds/621037339
> > >>>>
> > >>>> Reviewed-by: Yanqin Wei <Yanqin.Wei@arm.com>
> > >>>> Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com>
> > >>>> Reviewed-by: Gavin Hu <Gavin.Hu@arm.com>
> > >>>> Signed-off-by: Lance Yang <Lance.Yang@arm.com>
> > >>>> ---
> > >>>
> > >>> Compiler crashed while building DPDK:
> > >>>
> > >>> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
> > >>> In function
> > >>> ‘ixgbe_pf_host_configure’:
> > >>> /home/travis/build/ovsrobot/ovs/dpdk-dir/drivers/net/ixgbe/ixgbe_pf.c:
> > >>> 297:1: internal compiler error: Segmentation fault
> > >>>
> > >>> https://travis-ci.org/ovsrobot/ovs/jobs/621434216#L1999
> > >>>
> > >>> This is not good.
> > >>> Need to check how frequently this happens.
> > >>>
> > >>> Best regards, Ilya Maximets.
> > >> [Lance]
> > >> Hi Ilya,
> > >>
> > >> After you give us the feedback about the segmentation fault issue,
> > >> we keep running the travis CI to observe the frequency. We run
> > >> those arm jobs on a regular basis and clear cache on every single
> > >> build. We have run the build at least 2 times a day for more than a month.
> > >>
> > >> The good thing is that we haven't reproduce the segfault issue. Job
> > >> reports are available at:
> > >> https://travis-ci.org/yzyuestc/ovs/builds/639064033
> > >>
> > >> Travis CI community also made some adjustment on their side, you
> > >> can see their reply here:
> > >> https://travis-ci.community/t/segfaults-in-arm64-
> > >> environment/5617/13
> > >>
> > >> I think the segfault issue may occur by chance. At least, it is not
> > >> a frequent one, which is unlikely to cause issues to OVS developers.
> > >> Could you please check it again?
> > >>
> > >> Best Regards,
> > >> Lance
> > >
Ilya Maximets March 20, 2020, 11:57 a.m. UTC | #9
On 3/20/20 4:36 AM, Yanqin Wei wrote:
> Hi Ilya,
> 
> The patch is updated for reducing Arm CI running time.  Do you think if the time increment is acceptable?
> https://patchwork.ozlabs.org/patch/1258100/

I'm running tests with this patch in Travis right now.
Will reply to it afterwards.

Best regards, Ilya Maximets.
diff mbox series

Patch

diff --git a/.travis.yml b/.travis.yml
index 2dc4d43..f82e484 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -50,6 +50,24 @@  matrix:
     - os: osx
       compiler: clang
       env: OPTS="--disable-ssl"
+    - arch: arm64
+      compiler: gcc
+      env: OPTS="--disable-ssl"
+    - arch: arm64
+      compiler: gcc
+      env: KERNEL_LIST="5.0 4.20 4.19 4.18 4.17 4.16"
+    - arch: arm64
+      compiler: gcc
+      env: KERNEL_LIST="4.15 4.14 4.9 4.4 3.16"
+    - arch: arm64
+      compiler: gcc
+      env: DPDK=1 OPTS="--enable-shared"
+    - arch: arm64
+      compiler: gcc
+      env: DPDK_SHARED=1
+    - arch: arm64
+      compiler: gcc
+      env: DPDK_SHARED=1 OPTS="--enable-shared"
 
 script: ./.travis/${TRAVIS_OS_NAME}-build.sh $OPTS
 
diff --git a/.travis/linux-build.sh b/.travis/linux-build.sh
index bb47b3e..ce6bfd1 100755
--- a/.travis/linux-build.sh
+++ b/.travis/linux-build.sh
@@ -6,7 +6,7 @@  set -x
 CFLAGS_FOR_OVS="-g -O2"
 SPARSE_FLAGS=""
 EXTRA_OPTS="--enable-Werror"
-TARGET="x86_64-native-linuxapp-gcc"
+TARGET=""
 
 function install_kernel()
 {
@@ -87,6 +87,16 @@  function install_dpdk()
     local DPDK_VER=$1
     local VERSION_FILE="dpdk-dir/travis-dpdk-cache-version"
 
+    if [ -z "$TARGET" -a -z "$TRAVIS_ARCH" ] ||
+       [ "$TRAVIS_ARCH" == "amd64" ]; then
+        TARGET="x86_64-native-linuxapp-gcc"
+    elif [ "$TRAVIS_ARCH" == "aarch64" ]; then
+        TARGET="arm64-armv8a-linuxapp-gcc"
+    else
+        echo "Target is unknown"
+        exit 1
+    fi
+
     if [ "${DPDK_VER##refs/*/}" != "${DPDK_VER}" ]; then
         # Avoid using cache for git tree build.
         rm -rf dpdk-dir
@@ -184,7 +194,9 @@  elif [ "$M32" ]; then
     # difference on 'configure' and 'make' stages.
     export CC="$CC -m32"
 else
-    OPTS="--enable-sparse"
+    if [ "$TRAVIS_ARCH" != "aarch64" ]; then
+        OPTS="--enable-sparse"
+    fi
     if [ "$AFXDP" ]; then
         # netdev-afxdp uses memset for 64M for umem initialization.
         SPARSE_FLAGS="${SPARSE_FLAGS} -Wno-memcpy-max-count"