Hi Juergen,

do you want to log this as a bug ? I'll sponsor that fix for you.

Thanks,
FrankH.

On Mon, 25 Sep 2006, Jürgen Keil wrote:

On a box running on-20060918: reading from a pcfs file changes
the file's modification time. And access time is messed up, too.

[b]
# mkfile 1440k /tmp/bla
# lofiadm -a /tmp/bla /dev/lofi/9
# mkfs -F pcfs -o nofdisk,fat=12,spc=1,nsect=18,ntrack=2,size=2880 /dev/rlofi/9
# mount -F pcfs /dev/lofi/9 /mnt
# echo Hello, world > /mnt/file
# touch -t 200301011200 /mnt/file
# ls -l /mnt/file
-rwxrwxrwx   1 root     root          13 Jan  1  2003 /mnt/file
# ls -lu /mnt/file
-rwxrwxrwx   1 root     root          13 Jan  1  2003 /mnt/file
# cat /mnt/file
Hello, world
# ls -l /mnt/file
-rwxrwxrwx   1 root     root          13 Sep 23 12:29 /mnt/file
# ls -lu /mnt/file
-rwxrwxrwx   1 root     root          13 Jan  2  1980 /mnt/file
[/b]

The change in usr/src/uts/common/fs/pcfs/pc_node.c
function pc_mark_acc() looks suspicious:

http://cvs.opensolaris.org/source/diff/on/usr/src/uts/common/fs/pcfs/pc_node.c?r2=1.49&r1=1.48


I've fixed it with this patch:

--- ../opensolaris-20060918/usr/src/uts/common/fs/pcfs/pc_node.c        
2006-09-19 16:32:37.000000000 +0200
+++ usr/src/uts/common/fs/pcfs/pc_node.c        2006-09-23 14:00:12.348921435 
+0200
@@ -306,7 +306,7 @@

       if (PCTOV(pcp)->v_type == VREG) {
               gethrestime(&now);
-               if (pc_tvtopct(&now, &pcp->pc_entry.pcd_mtime))
+               if (pc_tvtopct(&now, &pt))
                       PC_DPRINTF1(2, "pc_mark_acc failed timestamp "
                           "conversion, curtime = %lld\n",
                           (long long)now.tv_sec);


This message posted from opensolaris.org
_______________________________________________
ufs-discuss mailing list
[email protected]


==========================================================================
No good can come from selling your freedom, not for all gold of the world,
for the value of this heavenly gift exceeds that of any fortune on earth.
==========================================================================
_______________________________________________
ufs-discuss mailing list
[email protected]

Reply via email to