Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 6 Oct 1997 17:06:29 -0700 (PDT)
From:      mika@cs.caltech.edu
To:        freebsd-gnats-submit@FreeBSD.ORG
Subject:   kern/4713: NFS inconsistencies resulting from changes to filesystem mouted read-only
Message-ID:  <199710070006.RAA09612@hub.freebsd.org>
Resent-Message-ID: <199710070010.RAA09784@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         4713
>Category:       kern
>Synopsis:       NFS inconsistencies resulting from changes to filesystem mouted read-only
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct  6 17:10:01 PDT 1997
>Last-Modified:
>Originator:     Mika Nystrom
>Organization:
Dept. of C.S., California Institute of Technology
>Release:        FreeBSD-CURRENT/SMP 3.0
>Environment:
FreeBSD s1.cs.caltech.edu 3.0-CURRENT FreeBSD 3.0-CURRENT #0: Wed Oct  1 20:23:54 PDT 1997     mika@obelix.cs.caltech.edu:/usr/src/sys/compile/P6CLIENT_2CPU_128MB  i386

The system is a dual PPro-200 running an SMP kernel.
(Same for the server machine)

>Description:
Changing files on a disk that is remote-mounted 
read-only does not propagate to the clients.

Example: on the server, the file "blah" contains the string
asdfasfd

Executing the following on the server:
# mv blah bleh ; touch blah
# 

gives the result on the client:

(106)s1:/usr/local>cat blah
asdfasfd
(107)s1:/usr/local>cat bleh
asdfasfd

syncing the server does not help

Both cats do lead to NFS traffic between the two hosts (as evidenced by
tcpdump)---strangely enough, rebooting the client does seem to fix
the problem so it doesn't look like a server-side thing.

On the server:

# mount
/dev/sd0a on / (NFS exported, local)
/dev/sd0g on /usr (NFS exported, local)
/dev/sd0e on /var (local)
/dev/sd0f on /var/tmp (local)
procfs on /proc (local)
kernfs on /kern (local)
amd:125 on /ufs
vlsi:/alains on /tmp_mnt/vlsi/alains
mercury:/students on /tmp_mnt/mercury/students (nosuid)
mars:/alains2 on /tmp_mnt/mars/alains2
maestro:/students3 on /tmp_mnt/maestro/students3 (nosuid)


On the client:
(116)s1:/usr/local>mount
/dev/sd0a on / (local)
/dev/sd0e on /var (local)
/dev/sd0f on /var/tmp (NFS exported, local)
procfs on /proc (local)
kernfs on /kern (local)
mfs:22 on /tmp (asynchronous, local)
obelix:/usr on /usr (read-only)
amd:127 on /ufs
mercury:/students on /tmp_mnt/mercury/students (nosuid)
vlsi:/var/spool/mail on /tmp_mnt/vlsi/var/spool/mail (nosuid)
mars:/alains2 on /tmp_mnt/mars/alains2
mars:/alains3 on /tmp_mnt/mars/alains3
maestro:/students3 on /tmp_mnt/maestro/students3 (nosuid)
(117)s1:/usr/local>

The changes propagate after a while---NOT the allowed 30(?) seconds but
sometimes minutes, sometimes hours, or days... some files don't seem
to propagate at all.  The inode numbers do not propagate either.

>How-To-Repeat:
It seems almost (?) deterministic.
>Fix:
Unknown----I don't know that much about NFS.
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199710070006.RAA09612>