[DragonFlyBSD - Bug #2768] Slave HAMMER PFSes cannot be exported via NFS

bugtracker-admin at leaf.dragonflybsd.org bugtracker-admin at leaf.dragonflybsd.org
Mon Jan 26 10:20:36 PST 2015

Issue #2768 has been updated by shamaz.


I took the second look at the code and found that VPFSROOT is only used in mount and mountctl system calls (see src/sys/kern/vfs_syscalls.c), so I believe setting this flag on mountpoint of a slave PFS or any other "historical" mount will not hurt anything (like that VFS cache). NFS is also working fine with my patch applied.

I understand that comment in hammer_inode.c (namely this: "Only mark as the root vnode if the ip is not historical, otherwise the VFS cache will get confused.") in the following way:

If we do mount like this: # mount -t null /@@0x%016lx:00000 /historical-pfs0-mountpoint do NOT set VROOT flag or vfs cache will get confused.
If we do mounts like these: # mount -t null /@@-1:00000 /current-pfs0 or # mount -t hammer /dev/serno/XXXXX /hammer-mountpoint SET VROOT flag.

So it is irrelevant to VPFSROOT and we can safely set it if ip->obj_id == HAMMER_OBJID_ROOT even if ip->obj_asof != hmp->asof

Is my guess right? Can you make any tests to be sure that I did not break anything? I think I need some help here.

Bug #2768: Slave HAMMER PFSes cannot be exported via NFS

* Author: shamaz
* Status: In Progress
* Priority: Normal
* Assignee: tuxillo
* Category: Userland
* Target version: 4.2.x
The situation I already described in user mailing list: suppose you have
slave HAMMER PFS mounted at /nbackup and want to export it, so you add to
/etc/exports a line like this:

/nbackup -ro -network 192.168.10/24

When you restart mountd daemon you will get these errors in

Jan 14 18:37:24 ressurected mountd[2279]: can't export /nbackup
Jan 14 18:37:24 ressurected mountd[2279]: bad exports list line /nbackup
-ro -network 192.168.10/24

Once PFS is upgraded to master, it can be exported fine.

test.c (398 Bytes)
hammer_inode.c.patch (685 Bytes)

You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account

More information about the Bugs mailing list