[#4540] l1_app test will fail sometimes in SMP kernel in latest trunk

Document created by Aaronwu Employee on Aug 29, 2013
Version 1Show Document
  • View in full screen mode

[#4540] l1_app test will fail sometimes in SMP kernel in latest trunk

Submitted By: Vivi Li

Open Date

2008-10-17 00:40:16     Close Date

2008-10-24 05:01:23

Priority:

Medium     Assignee:

Graf Yang

Status:

Closed     Fixed In Release:

N/A

Found In Release:

N/A     Release:

Category:

N/A     Board:

N/A

Processor:

N/A     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Fixed

Uboot version or rev.:

    Toolchain version or rev.:

toolchain-2008_Oct_10

App binary format:

N/A     

Summary: l1_app test will fail sometimes in SMP kernel in latest trunk

Details:

 

l1_app test will fail sometimes in SMP kernel, especially after run other commands.

 

--

root:/> ./test_helloworld

hello

[INS] get 2 from helloworld(0xffa002fc):        TEST PASS

[INS] get 11 from testl1(0xffa0002c):   TEST PASS

[DATA] global data ret at 0xff800000:   TEST PASS

[INS] main at 0x319e9d8:        TEST PASS

root:/>

root:/>

root:/>

root:/> while [ 1 ]; do echo 0; done

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

^Croot:/>

root:/>

root:/>

root:/> ./test_helloworld

hello

[INS] get 2 from helloworld(0xff6002fc):        TEST FAIL

[INS] get 11 from testl1(0xff60002c):   TEST FAIL

[DATA] global data ret at 0xff400000:   TEST FAIL

[INS] main at 0x5589d8: TEST PASS

root:/>

--

 

Follow-ups

 

--- Graf Yang                                                2008-10-22 06:00:46

The test_helloworld will alloc l1 data, instruction before main() function

execute, so sched_setaffinity() in main() is too late.

Please use busybox miscutility->taskset to run such app, and remove

sched_set_affinity().

 

 

taskset 1 ./test_helloworld    force to run on CoreA.

taskset 2 ./test_helloworld    force to run on CoreB.

 

--- Vivi Li                                                  2008-10-24 05:01:23

Test case passed after using "taskset" to force to run on CoreA.

I've test it for several times and it never fails.

So close this bug.

 

Bellow is the log:

--

taskset 1 ./test_helloworld

hello

[INS] get 2 from helloworld(0xffa002fc):        TEST PASS

[INS] get 11 from testl1(0xffa0002c):   TEST PASS^M

[DATA] global data ret at 0xff800000:   TEST PASS^M

[INS] main at 0x319e9d8:        TEST PASS^M

root:/>

--

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes