Fixes rm -r (XCC)
authorBarret Rhoden <brho@cs.berkeley.edu>
Wed, 18 Jun 2014 18:50:49 +0000 (11:50 -0700)
committerBarret Rhoden <brho@cs.berkeley.edu>
Wed, 18 Jun 2014 18:50:49 +0000 (11:50 -0700)
commitbdf1afd22cafebe06c613edb54e0a4d272369076
treeaf4f74a8e6ddec77d6e678b09939d4c3c09ab7dc
parent7fee1b5304534362f903724cb6aabdcd3c733809
Fixes rm -r (XCC)

The root of the issue is the use of successive readdirs concurrent with
modifications of the underlying directory.  Coreutils's rm handles this
(via the fts_ family of functions) by reading in the entire directory
before removing.  So I'll stick with the current behavoir: if you do
that, unexpected things will happen, and just have busybox rewind after
each rm.

You'll need to rebuild glibc, after copying over the new file.

You'll also need to rebuild busybox, after applying the patch.
tools/compilers/gcc-glibc/glibc-2.14.1-ros/sysdeps/ros/rewinddir.c [new file with mode: 0644]
tools/patches/busybox/busybox-rm-rewinddir.patch [new file with mode: 0644]