[PATCH] Huge performance boost for recursion (cp, du, find, ls, rm, , mv)

Rolf Eike Beer eb at emlix.com
Tue Apr 16 06:59:22 UTC 2024


On Montag, 15. April 2024 17:14:11 MESZ Jody Bruchon wrote:
> With these changes, 'busybox find .' and 'busybox find libbb' fail
> entirely, with 'libbb' becoming 'libb' instead. Running 'busybox find
> libbb/' works but the result has double-slashes: 'libbb//whatever.c'.
> The last char of the parameter passed to 'find' is being erased if there
> is no slash.

This line is wrong:

> if (last_char_is_fast(path, '/', pathlen) == NULL) pathlen--;

If you replace "==" with "!=" it works.

Regard,

Eike
-- 
Rolf Eike Beer

emlix GmbH
Headquarters: Berliner Str. 12, 37073 Göttingen, Germany
Phone +49 (0)551 30664-0, e-mail info at emlix.com
District Court of Göttingen, Registry Number HR B 3160
Managing Directors: Heike Jordan, Dr. Uwe Kracke
VAT ID No. DE 205 198 055
Office Berlin: Panoramastr. 1, 10178 Berlin, Germany
Office Bonn: Bachstr. 6, 53115 Bonn, Germany
http://www.emlix.com

emlix - your embedded Linux partner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 313 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.busybox.net/pipermail/busybox/attachments/20240416/9b49199a/attachment.asc>


More information about the busybox mailing list