[#7382] libstdc++ case fails for bad_alloc on bf533-stamp

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

[#7382] libstdc++ case fails for bad_alloc on bf533-stamp

Submitted By: Mingquan Pan

Open Date

2012-10-09 04:54:38    

Priority:

Medium High     Assignee:

Stuart Henderson

Board:

STAMP     Silicon Revision:

Resolution:

Assigned (Not Started)     Fixed In Release:

N/A

Processor:

ALL     

Host Operating System:

toolchain rev.:

    kernel rev.:

State:

Open     Found In Release:

2012R2

Is this bug repeatable?:

N/A     

Summary: libstdc++ case fails for bad_alloc on bf533-stamp

Details:

 

libstdc++ case fails for bad_alloc on bf533-stamp. It isn't seen on bf537-stamp board.

 

#########################################

#

# Comparing libstdc++-4.3.sum

#

########################################

Tests that now fail, but worked before:

 

bfin-linux-uclibc: 27_io/basic_istream/extractors_character/wchar_t/4.cc execution test

bfin-linux-uclibc: 27_io/basic_istream/getline/wchar_t/5.cc execution test

bfin-linux-uclibc: 27_io/basic_istream/ignore/wchar_t/2.cc execution test

bfin-linux-uclibc: tr1/6_containers/unordered_set/26132.cc execution test

 

 

Executing on host: bfin-linux-uclibc-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0  -DLOCALEDIR="." -I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util /home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/26132.cc     ./libtestc++.a  -lm  -mcpu=bf533-0.3  -o ./26132.exe    (timeout = 600)

spawn bfin-linux-uclibc-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0 -DLOCALEDIR="." -I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util /home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/tr1/6_containers/unordered_set/26132.cc ./libtestc++.a -lm -mcpu=bf533-0.3 -o ./26132.exe^M

PASS: tr1/6_containers/unordered_set/26132.cc (test for excess errors)

Executing on bfin-linux-uclibc: /tmp/26132.exe.18085 {} {}   (timeout = 300)

spawn [open ...]^M

terminate called after throwing an instance of 'std::bad_alloc'

  what():  std::bad_alloc

ABRT

XYZ134ZYX

Executing on bfin-linux-uclibc: rm -f  /tmp/26132.exe.18085    (timeout = 300)

spawn [open ...]^M

XYZ0ZYX

Executed ./26132.exe, status 1

terminate called after throwing an instance of 'std::bad_alloc'

  what():  std::bad_alloc

ABRT

FAIL: tr1/6_containers/unordered_set/26132.cc execution test

extra_tool_flags are:

 

 

Follow-ups

 

--- Mingquan Pan                                             2012-10-11 05:14:30

On bf537-stamp, only one case fails like:

 

Executing on host: bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0

-DLOCALEDIR="."

-I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util

/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/27_io/basic_istream/getline/wchar_t/5.cc

    ./libtestc++.a -Wl,-elf2flt=-s120000  -lm  -mcpu=bf537-0.2  -o ./5.exe  

(timeout = 600)

spawn bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0

-DLOCALEDIR="."

-I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util

/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/27_io/basic_istream/getline/wchar_t/5.cc

./libtestc++.a -Wl,-elf2flt=-s120000 -lm -mcpu=bf537-0.2 -o ./5.exe^M

PASS: 27_io/basic_istream/getline/wchar_t/5.cc (test for excess errors)

Executing on bfin-uclinux: /tmp/5.exe.401 {} {}   (timeout = 300)

spawn [open ...]^M

sh: can't execute '/tmp/5.exe.401': Cannot allocate memory

XYZ127ZYX

Executing on bfin-uclinux: rm -f  /tmp/5.exe.401    (timeout = 300)

spawn [open ...]^M

XYZ0ZYX

Executed ./5.exe, status 1

sh: can't execute '/tmp/5.exe.401': Cannot allocate memory

FAIL: 27_io/basic_istream/getline/wchar_t/5.cc execution test

extra_tool_flags are:

 

--- Mingquan Pan                                             2012-11-19 00:55:34

Sometimes this issue also happens to libstdc++ case on bf537-stamp.

 

#########################################

#

# Comparing libstdc++-4.3.sum

#

########################################

Tests that now fail, but worked before:

 

bfin-uclinux: 27_io/basic_istream/extractors_character/wchar_t/4.cc execution

test

bfin-uclinux: 27_io/basic_istream/getline/wchar_t/5.cc execution test

 

Executing on host: bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0

-DLOCALEDIR="."

-I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util

/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc

    ./libtestc++.a -Wl,-elf2flt=-s120000  -lm  -mcpu=bf537-0.2  -o ./4.exe  

(timeout = 600)

spawn bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0

-DLOCALEDIR="."

-I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util

/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc

./libtestc++.a -Wl,-elf2flt=-s120000 -lm -mcpu=bf537-0.2 -o ./4.exe^M

PASS: 27_io/basic_istream/extractors_character/wchar_t/4.cc (test for excess

errors)

Executing on bfin-uclinux: /tmp/4.exe.4469 {} {}   (timeout = 300)

spawn [open ...]^M

terminate called after throwing an instance of 'std::bad_alloc'

  what():  std::bad_alloc

ABRT

XYZ134ZYX

Executing on bfin-uclinux: rm -f  /tmp/4.exe.4469    (timeout = 300)

spawn [open ...]^M

XYZ0ZYX

Executed ./4.exe, status 1

terminate called after throwing an instance of 'std::bad_alloc'

  what():  std::bad_alloc

ABRT

FAIL: 27_io/basic_istream/extractors_character/wchar_t/4.cc execution test

extra_tool_flags are:

...

Executing on host: bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0

-DLOCALEDIR="."

-I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util

/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/27_io/basic_istream/getline/wchar_t/5.cc

    ./libtestc++.a -Wl,-elf2flt=-s120000  -lm  -mcpu=bf537-0.2  -o ./5.exe  

(timeout = 600)

spawn bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0

-DLOCALEDIR="."

-I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util

/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/27_io/basic_istream/getline/wchar_t/5.cc

./libtestc++.a -Wl,-elf2flt=-s120000 -lm -mcpu=bf537-0.2 -o ./5.exe^M

PASS: 27_io/basic_istream/getline/wchar_t/5.cc (test for excess errors)

Executing on bfin-uclinux: /tmp/5.exe.4469 {} {}   (timeout = 300)

spawn [open ...]^M

sh: can't execute '/tmp/5.exe.4469': Cannot allocate memory

XYZ127ZYX

Executing on bfin-uclinux: rm -f  /tmp/5.exe.4469    (timeout = 300)

spawn [open ...]^M

XYZ0ZYX

Executed ./5.exe, status 1

sh: can't execute '/tmp/5.exe.4469': Cannot allocate memory

FAIL: 27_io/basic_istream/getline/wchar_t/5.cc execution test

extra_tool_flags are:

 

 

It doesn't always happening, but do affect the testing from time to time.

 

--- Mingquan Pan                                             2012-12-13 03:54:58

After increasing stacksize to 200000, it looks the uclinux test log improves and

not seeing "Cannot allocate memory" error now.

But 'std::bad_alloc' still exists(this is not regression bug). like:

 

Executing on host: bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT

-fmessage-length=0  -DLOCALEDIR="."

-I/home/test/workspace/src/toolchain/gcc-4.3/libstdc++-v3/testsuite/util

/home/test/workspace/src/toolchain/gcc-4.3/libstdc++-v3/testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc

    ./libtestc++.a -Wl,-elf2flt=-s200000  -lm  -mcpu=bf537-0.2  -o ./1.exe  

(timeout = 600)

spawn bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0

-DLOCALEDIR="."

-I/home/test/workspace/src/toolchain/gcc-4.3/libstdc++-v3/testsuite/util

/home/test/workspace/src/toolchain/gcc-4.3/libstdc++-v3/testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc

./libtestc++.a -Wl,-elf2flt=-s200000 -lm -mcpu=bf537-0.2 -o ./1.exe^M

PASS: 27_io/basic_stringbuf/overflow/wchar_t/1.cc (test for excess errors)

Executing on bfin-uclinux: /tmp/1.exe.11819 {} {}   (timeout = 300)

spawn [open ...]^M

terminate called after throwing an instance of 'std::bad_alloc'

  what():  std::bad_alloc

ABRT

XYZ134ZYX

Executing on bfin-uclinux: rm -f  /tmp/1.exe.11819    (timeout = 300)

spawn [open ...]^M

XYZ0ZYX

Executed ./1.exe, status 1

terminate called after throwing an instance of 'std::bad_alloc'

  what():  std::bad_alloc

ABRT

FAIL: 27_io/basic_stringbuf/overflow/wchar_t/1.cc execution test

extra_tool_flags are:

 

--- Stuart Henderson                                         2012-12-17 10:18:25

Yeah, those have always failed.  in the handful of tests i've looked at, it

would be pretty easy to adjust the test to be slightly less memory intensive.

are the failures causing a problem for you?

 

--- Mingquan Pan                                             2012-12-20 01:36:48

Yes, I would like these cases are changed to be less memory intensive so that

they can pass in the test log.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes