Comments (9)
from toybox.
Hi Rob,
The patch already in the build tree,
the error seems here ,
if (new->child == DIRTREE_ABORTVAL) new->child = 0; ///////<<<<< suspected
....
dt = new->child; ///////<<<<< dt maybe 0
while (dt->child) { ///////<<<<< suspected
new = dt->child->next;
TT.show_process((void *)dt->child->extra);
free(dt->child);
dt->child = new;
}
from toybox.
Yes, and the fix to that was commit e97aeb6 back in march
the linked-to mailing list post was from me, reporting that although e97aeb6 reduced the incidence of this down to where i'm not aware of any human seeing ps crashes directly, we're still seeing occasional ones from automated crash reporting.
this is definitely still reproduceable. (as is top crashing if you leave it running long enough; this can be caught in reasonable-ish time frames if you run an asan build rather than a regular build, so it catches the corruption immediately. i've no idea whether these are related, so default to assuming they're not.)
from toybox.
from toybox.
Hi Rob,
Seems this race condition will not fix with a simple nullptr checker workaround , do you got any good idea on this?
BRs,
Chao
from toybox.
@landley
Hi Rob,
we also met this issue in our autotest pipe line many times, if this issue get fixed we can avoid lots of noise from autotest pipe.
from toybox.
another instance today from automated testing:
pid: 29772, tid: 29772, name: ps >>> ps <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x10
x0 0000000000000000 x1 0000000000000000 x2 0000000000000000 x3 0000007ff72069a8
x4 0000007c072d17e7 x5 0000007c0721d07e x6 0000000000000069 x7 0000000000000070
x8 0000000000000000 x9 0000000000000001 x10 0000000000004001 x11 0000000000000000
x12 0000007c076d04b0 x13 00000000fffffffe x14 0000000000000001 x15 0000000000000002
x16 0000007c076ee2c8 x17 0000007c0768bad8 x18 0000007c076f9000 x19 0000007c072350c0
x20 0000000000000000 x21 000000556ae34868 x22 000000556ae31840 x23 00000000000008c5
x24 0000007c07235010 x25 0000000000000000 x26 0000000000000000 x27 0000000000000000
x28 0000000000000000 x29 0000007ff72071a0 x30 000000556ae06f98
sp 0000007ff7207170 pc 000000556ae06fa0 pstate 0000000080000000
Stack Trace:
RELADDR FUNCTION FILE:LINE
0000000000036fa0 get_threads+228 external/toybox/toys/posix/ps.c:920
000000000000db9c dirtree_handle_callback+36 external/toybox/lib/dirtree.c:112
000000000000dca0 dirtree_recurse+120 external/toybox/lib/dirtree.c:156
000000000000dbf4 dirtree_handle_callback+124 external/toybox/lib/dirtree.c:115
0000000000036334 ps_main+952 external/toybox/toys/posix/ps.c:1241
00000000000139b0 toy_exec+92 external/toybox/main.c:166
0000000000013570 toybox_main+48 external/toybox/main.c:179
0000000000013a74 main+120 external/toybox/main.c:237
00000000000a1e08 __libc_init+88 bionic/libc/bionic/libc_init_dynamic.cpp:124
000000000000ccc0 _start_main+80 sfp-exceptions.c:?
from toybox.
from toybox.
time to close this as fixed? haven't seen another instance in months since the last fix...
from toybox.
Related Issues (20)
- install does not handle the creation of "drwxr-s---" correctly HOT 6
- xsendfile error checking
- add a useful common ip HOT 3
- Request diff -I/--ignore-matching-lines
- [Documentation] Differences to busybox? HOT 3
- [Feature request] Could a static-option be added to the menu interface? HOT 5
- [Documentation / Question] Can toybox be combined with e. g. mruby? HOT 9
- building a rootfs without a kernel HOT 10
- Most scripts use /bin/bash, which not all systems have. Use /usr/bin/env instead? HOT 11
- [Q] Can `bash` compatibility in toysh be turned off during build time and during run time? HOT 2
- building 0.8.11 with ssl and tls is broken HOT 15
- When running shell scripts, the process coredump.
- POSIX deviation: test arithmetic operands must support decimal only HOT 12
- find -size <number-without-suffix> not POSIX HOT 7
- Can you include oksh? HOT 1
- On incremental builds' reproducibility HOT 1
- ASAN failures in various file processing commands HOT 2
- [Feature Suggestion] progress meter (pv subcommand) HOT 5
- [FR] envsubst HOT 4
- getty: does not display issue HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from toybox.