Inconsistent/potentially incorrect behavior with relative lookups via chdir(2) on UFS/ZFS

Peter Jeremy peter at rulingia.com
Sat Nov 3 10:39:00 UTC 2012


On 2012-Nov-01 15:25:05 -0700, Garrett Cooper <yanegomi at gmail.com> wrote:
>    Just doing some interop testing on UFS/ZFS to develop a baseline for
>filesystem behavior, and I noticed some inconsistencies with the ENOENT
>requirement in chdir(2) when dealing with relative ".." paths (dot-dot
>lookups). In particular...
>    1. I would have expected chdir('.') to have failed in UFS/ZFS with
>ENOENT if '.' wasn't present, but it didn't.
>    2. I would have expected chdir('..') to have failed in ZFS with ENOENT
>if '..' wasn't present, but it didn't.
>    Sidenote: python doesn't do any special handling with os.chdir, per
>Modules/posixmodule.c (I checked).
>    The full test I ran is included below.

Whilst playing with the above, I've found some wierd timing issues
with UFS+SU:

$ mkdir -p ~/p/q/r;sync
$ cd p/q/r
$ rm -r ~/p; while date; do sleep 3 ; ls -al;done
Sat  3 Nov 2012 21:29:19 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:22 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:25 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:28 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:31 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:34 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:37 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:40 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:43 EST
total 2
drwxr-xr-x  0 peter  jeremy  512  3 Nov 21:28 .
drwxr-xr-x  0 peter  jeremy    0  3 Nov 21:29 ..
Sat  3 Nov 2012 21:29:46 EST
total 0
Sat  3 Nov 2012 21:29:49 EST


-- 
Peter Jeremy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20121103/3ba7bef0/attachment.sig>


More information about the freebsd-fs mailing list