I'm working on a user level FS which changes the way directory operations
are performed. A mkdir/rmdir for a directory under the mountpoint
creates/removes 2 directories (at say /tmp). Any files created go to one of
the directories and i have a mechanism to figure out which directory the
files go to.
I have modified xmp_mkdir in fusexmp.c to create 2 directories say
/tmp/<dirname>_1 and /tmp/<dirname>_2. The directories do get created,
however, i get an error saying "Cannot create directory, error: -2 (No Such
file or directory)". I used gdb to look at the function calls involved in
executing mkdir and noticed that fuse_lib_mkdir in lib/fuse.c is doing a
lookup for the directory under the mount path.
Eliminating the lookup seems to make it work, but it throws another error
So could you please let me know if there is a way to avoid this error and
alter the way lookup_path behaves for other calls of our file system such as
(I'm using Fuse High Level)
thanks in advance,