This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Lookup of .directory files, does depend on dirblocksize??

Tags: None
(comma "," separated)
bonassis
Registered Member
Posts
59
Karma
0
OS
Hello,

I'm writing a FUSE fs to offer easy and effective access to the user to all kinds of resources, local like USB, CDrom and harddisks, and remote like SMB(=Windows and/or Samba) shares.

See:
http://linux.bononline.nl/projects/mount.md5key.new/screenshots/snapshot16.png

Now my fuse fs fuse-workspace supports the lookup of a .directory file, especially when there is none in the underlying fs, when you don't want that a .directory file on the filesystem, or the filesystem is readonly.

At the image, on none of the targets there is a .directory file, the FUSE fs
intercepts the call for this file and redirects it to a special file for the resource, which is configured to be the .directory file for that resource.

Note now that this does not work for the audio cd, and I've been looking for a long time how to solve this.

Simular behaviour I see with smb shares. Now I found the following:

when doing a ls -al:

total 36
drwxr-xr-x 4 sbon netgroup 4096 2010-09-19 16:53 .
drwxr-x--- 70 sbon netgroup 4096 2010-09-19 14:28 ..
drwxr-xr-x 17 root root 4096 2010-01-22 14:49 02-SAMSUNG_HD753LJ
drwxr-xr-x 20 root root 4096 2010-07-15 22:19 03-SAMSUNG_HD753LJ
drwxr-xr-x 21 mysql root 4096 2010-03-30 19:54 06-SAMSUNG_HD753LJ
dr-xr-xr-x 2 root root 0 1970-01-01 01:00 1-Audio CD
drwxr-xr-x 2 root root 4096 2010-09-19 16:53 4-LITE-ON-LTR-52327S
drwxr-xr-x 7 root root 4096 2010-07-31 20:45 61-Transcend JetFlash Flash Drive
drwxr-xr-x 20 root root 4096 2010-08-08 01:04 72-Kingston DataTraveler 2.0 Stick (2GB)
drwxr-xr-x 3 root root 4096 2010-09-19 16:53 Network

you see the zero in the "size" of the directory.

stat 1-Audio\ CD/

File: `1-Audio CD/'
Size: 0 Blocks: 0 IO Block: 4096 directory
Device: 12h/18d Inode: 3 Links: 2
Access: (0555/dr-xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 1970-01-01 01:00:00.000000000 +0100
Modify: 1970-01-01 01:00:00.000000000 +0100
Change: 1970-01-01 01:00:00.000000000 +0100

Compare a harddisk:

stat 02-SAMSUNG_HD753LJ/
File: `02-SAMSUNG_HD753LJ/'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 12h/18d Inode: 75 Links: 17
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2010-09-18 20:55:36.000000000 +0200
Modify: 2010-01-22 14:49:47.000000000 +0100
Change: 2010-01-22 14:49:47.000000000 +0100


I see that also with smbshares:

http://linux.bononline.nl/projects/mount.md5key.new/screenshots/snapshot12.png

cd /home/sbon/Workspace/Network/Windows Network/BONONLINE/SCLFS20091030

ls -al
total 12
drwxr-xr-x 2 root root 4096 2010-09-19 16:53 .
drwxr-xr-x 3 root root 4096 2010-09-19 16:53 ..
drwxr-xr-x 6 root root 0 2010-09-03 23:41 bononline
-rw-r--r-- 1 root root 40 2010-09-19 16:53 .directory
drwxr-xr-x 673 gast netgroup 0 2010-09-12 23:40 ftp
drwxrwxr-x 10 gast netgroup 0 2010-08-06 23:28 public
drwxr-xr-x 34 sbon netgroup 0 2010-09-19 16:03 sbon
drwxr-xr-x 10 root root 0 2010-08-06 23:26 video

(dutch: gast means guest)

also the same behaviour here. So I'm thinking, is a lookup of a .directory file only done when the directory block size > 0 ??


Stef Bon
bonassis
Registered Member
Posts
59
Karma
0
OS
Hi myself,

I've found the sollution. It's indeed the size, which is zero causing the
KDE system responsible for the lookup of the .directory file, to stop looking.

I've changed the mount command for mounting the audio cd, the fuse fs cddfs,
to give the other values than zero, and then it's going as I want:

ls -al
total 40
drwxr-xr-x 4 sbon netgroup 4096 2010-09-19 16:53 .
drwxr-x--- 70 sbon netgroup 4096 2010-09-19 14:28 ..
drwxr-xr-x 17 root root 4096 2010-01-22 14:49 02-SAMSUNG_HD753LJ
drwxr-xr-x 20 root root 4096 2010-07-15 22:19 03-SAMSUNG_HD753LJ
drwxr-xr-x 21 mysql root 4096 2010-03-30 19:54 06-SAMSUNG_HD753LJ
dr-xr-xr-x 2 root root 4096 1970-01-01 01:00 1-Audio CD
drwxr-xr-x 2 root root 4096 2010-09-19 16:53 4-LITE-ON-LTR-52327S
drwxr-xr-x 7 root root 4096 2010-07-31 20:45 61-Transcend JetFlash Flash Drive
drwxr-xr-x 20 root root 4096 2010-08-08 01:04 72-Kingston DataTraveler 2.0 Stick (2GB)
drwxr-xr-x 3 root root 4096 2010-09-19 16:53 Network

and the image:

Image

Stef Bon

Soon I will post a message about this on de cifs maillist.


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], q.ignora, watchstar