<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Mar 10, 2023 at 12:43 PM Rob Landley <<a href="mailto:rob@landley.net">rob@landley.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 3/9/23 18:25, enh via Toybox wrote:<br>
> i don't _think_ there's been a bug report beyond the discussion on<br>
> <a href="https://android-review.googlesource.com/c/platform/test/vts-testcase/kernel/+/2477517" rel="noreferrer" target="_blank">https://android-review.googlesource.com/c/platform/test/vts-testcase/kernel/+/2477517</a>,<br>
> so repeating it here...<br>
> <br>
> """<br>
> The Toybox version of cpio doesn't allow duplicated directories.<br>
<br>
It tries to?<br>
<br>
      if (mkdir(*toys.optargs, 0700) == -1 && errno != EEXIST)<br>
        perror_exit("mkdir %s", *toys.optargs);<br>
<br>
Ah, hang on, that's for -d. (And it should warn instead of exiting.)<br>
<br>
Yup, my bug...<br>
<br>
> This<br>
> is however not a problem at all for the kernel or other archive<br>
> extraction implementations. Workaround that limitation with the option<br>
> -u which enforces files deletion and also has the side-effect of not failing<br>
> when a folder already exists.<br>
<br>
Hmmm, I wonder if I should tackle --sparse.<br>
<br>
Did the kernel discussion of xattr support ever revive? The linux-kernel<br>
community has gotten so profoundly unfriendly to non-members that<br>
<a href="https://lkml.iu.edu/hypermail/linux/kernel/2302.2/05594.html" rel="noreferrer" target="_blank">https://lkml.iu.edu/hypermail/linux/kernel/2302.2/05594.html</a> didn't end well but<br>
I'd happily implement something compatible in cpio.c if the new feature ever<br>
made it past the ever tightening kernel clique.<br>
<br>
> """<br>
> <br>
> """<br>
> This does not relate to the dev nodes but to the folder dev/ which is<br>
> added twice for different orthogonal reasons.<br>
<br>
<br>
> For some reasons toybox's CPIO does not support this by default unless<br>
> -u is set. (contrary to other implementations)<br>
> """<br>
<br>
Bug. I was only checking for errno != EEXIST in one of the two mkdir codepaths.<br>
<br>
Try commit d95ea079466c? Checked the fix in, still redoing the cpio.test file<br>
because the host version needs --quiet all the time to not be crazy...<br></blockquote><div><br></div><div>thanks. i've synced AOSP and i'm updating the prebuilt build tools now. i won't submit _that_ until next week though, but vdonnefort should be able to test during his monday before i wake up on mine! (i'll add the relevant link to gerrit change with the workaround.)</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Rob<br>
</blockquote></div></div>