tis 2012-07-03 klockan 23:09 -0300 skrev Samuel Thibault: > Mattias Ellert, le Tue 03 Jul 2012 06:44:19 +0200, a écrit : > > Under what conditions does hurd return EAGAIN from rename() > > It's not supposed to, and I've never seen it do that. Is the rename > perhaps running under fakeroot? It'd be good that you provide the steps > to reproduce the issue. > > Samuel I also had an idea that it was fakeroot that was doing something strange since the failure happened during a package build on the buildd server. But it also fails when I try running the test suite directly from the command line in the chroot on the porterbox (strauss) without using fakeroot: PATH=.:$PATH ./myproxy-test -startserver -generatecerts The steps to reproduce it is to try to build the myproxy package on hurd. You can see from the build logs in the buildd errors like: Unable to rename /tmp/D_RiobUAO6/.globus/certificates.test.23341.23511/ to /tmp/D_RiobUAO6/.globus/certificates.test.23341/ Resource temporarily unavailable The code that fails is in myproxy.c lines 605-610 in myproxy.c: if (rename(tmp_cert_dir, cert_dir) < 0) { verror_put_errno(errno); verror_put_string("Unable to rename %s to %s\n", tmp_cert_dir, cert_dir); goto error; } The "Resource temporarily unavailable" is because errno is set to EAGAIN. Mattias
Attachment:
signature.asc
Description: This is a digitally signed message part