NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/47563: test cases do not timeout and hang
The following reply was made to PR kern/47563; it has been noted by GNATS.
From: Martin Husemann <martin%duskware.de@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: Antti Kantee <pooka%NetBSD.org@localhost>, Julio Merino
<jmmv%NetBSD.org@localhost>
Subject: Re: kern/47563: test cases do not timeout and hang
Date: Fri, 15 Feb 2013 17:32:43 +0100
A bit more data: I can reproduce the failure on various sparc64 SMP
machines. It seems to not affect the uniprocessor automatic test runs
(including the sparc ones), and seems to not be reproducable on x86.
The test case, when run as "atf-test t_swsensor" alone, does not output
anything exciting:
...
tps-count: 1
tp-start: 1360944907.365325, t_swsensor, 5
tc-start: 1360944907.365395, alarm_sensor
... and there i hangs untill I manually kill rump_allserver. A ktrace shows
not a lot activity (and neither the rump process nor atf-run gather a lot
of cpu usage):
2765 12 rump_allserver CALL
___lwp_park50(0x49f158e8,0,0x4a504098,0x4a50$
2765 6 rump_allserver RET ___lwp_park50 -1 errno 60 Connection timed
o$
2765 1 rump_allserver RET __nanosleep50 0, -87720/0xfffffffffffea958
2765 1 rump_allserver CALL _lwp_unpark(7,0x48830998)
2765 6 rump_allserver CALL
___lwp_park50(0x493096e8,0,0x4c204098,0x4c20$
2765 6 rump_allserver RET ___lwp_park50 -1 errno 60 Connection timed
o$
2765 1 rump_allserver RET _lwp_unpark 0, 1216547224/0x48830998
2765 6 rump_allserver CALL
___lwp_park50(0x493096e8,0,0x4c204098,0x4c20$
2765 1 rump_allserver CALL _lwp_unpark_all(0x482109f8,1,0x48830698)
2765 1 rump_allserver RET _lwp_unpark_all 0, 1
2765 7 rump_allserver RET ___lwp_park50 0
2765 1 rump_allserver CALL ___lwp_park50(0,0,0x488309d8,0x488309d8)
2765 9 rump_allserver RET ___lwp_park50 0
2765 7 rump_allserver CALL _lwp_unpark_all(0x4885e0f8,1,0x48830618)
2765 7 rump_allserver RET _lwp_unpark_all 0, 1
2765 9 rump_allserver CALL ___lwp_park50(0,0,0x48830698,0x48830698)
2765 7 rump_allserver CALL ___lwp_park50(0,0,0x48830998,0x48830998)
2765 3 rump_allserver RET ___lwp_park50 0
2765 3 rump_allserver CALL _lwp_unpark(1,0x488309d8)
2765 3 rump_allserver RET _lwp_unpark 0, 1216547288/0x488309d8
and sometimes a timeout on the atf-run side:
2765 1 rump_allserver CALL
__nanosleep50(0xfffffffffffea968,0xfffffffff$
2765 12 rump_allserver RET ___lwp_park50 -1 errno 60 Connection timed
o$
2483 1 atf-run RET poll 0, 2
2765 12 rump_allserver CALL
___lwp_park50(0x49f158e8,0,0x4a504098,0x4a50$
2765 12 rump_allserver RET ___lwp_park50 -1 errno 60 Connection timed
o$
2483 1 atf-run CALL poll(0x413120a0,2,0xfa)
2765 12 rump_allserver CALL
___lwp_park50(0x49f158e8,0,0x4a504098,0x4a50$
2765 1 rump_allserver RET __nanosleep50 0, -87720/0xfffffffffffea958
This makes it even more interesting that atf-run does not seem to timeout
the testcase after 60 seconds.
The atf-run process is in:
#0 0x000000000011de30 in atf::atf_run::muxer::read_one(unsigned long, int,
std::string&, bool) ()
#1 0x000000000011e23c in atf::atf_run::muxer::flush() ()
#2 0x0000000000129a98 in atf::atf_run::run_test_case(atf::fs::path const&,
std::string const&, std::string const&, std::map<std::string, std::string,
std::less<std::string>, std::allocator<std::pair<std::string const,
std::string> > > const&, std::map<std::string, std::string,
std::less<std::string>, std::allocator<std::pair<std::string const,
std::string> > > const&, atf::fs::path const&, atf::fs::path const&,
atf::atf_run::atf_tps_writer&) ()
#3 0x000000000010ba98 in atf_run::run_test_program(atf::fs::path const&,
atf::atf_run::atf_tps_writer&, std::map<std::string, std::string,
std::less<std::string>, std::allocator<std::pair<std::string const,
std::string> > > const&) ()
#4 0x000000000010dab4 in atf_run::run_test(atf::fs::path const&,
atf::atf_run::atf_tps_writer&, std::map<std::string, std::string,
std::less<std::string>, std::allocator<std::pair<std::string const,
std::string> > > const&) ()
#5 0x000000000010df0c in atf_run::main() ()
#6 0x000000004052c190 in atf::application::app::run(int, char* const*) ()
from /usr/lib/libatf-c++.so.0
#7 0x0000000000107ea0 in main ()
Unfortunately gdb is non-cooperative for the rump_allserver process - guess
I'll look at that first now ;-)
Martin
Home |
Main Index |
Thread Index |
Old Index