g_access questions (Out on a limb here)
Shane Adams
adamsch1 at yahoo.com
Tue Nov 14 23:00:33 UTC 2006
Hello,
I have a question regarding g_access. I'm mounting a custom filesytem twice against the same device. The first time I'm mounting it with read/write access, I then mount the same device to a different mount point. After I do this, the first mount starts getting write errors, so somehow the second mount is screwing up access rights to the device. For what its worth, I'm mounting a ram backed mdconfig device.
I'm not sure if this is a geom related issue, or related to the fact that you cannot mount a device more than twice in vfs?
Anyway - the first time I mount (R/W) I do:
g_access(cp, 1,1, 0)
I then mount the device again as read only to a different mount point with
g_access(cp,1,0,0)
The code I used is taken from g_vfs_open with wr flag set depending if write access is required:
pp = g_dev_getprovider(vp->v_rdev);
if (pp == NULL)
return (ENOENT);
gp = g_new_geomf(&g_vfs_class2, "%s.%s", fsname, pp->name);
cp = g_new_consumer(gp);
g_attach(cp, pp);
error = g_access(cp, 1, wr, 0);
if (error) {
g_wither_geom(gp, ENXIO);
return (error);
}
Cheers,
Shane
____________________________________________________________________________________
Want to start your own business?
Learn how on Yahoo! Small Business.
http://smallbusiness.yahoo.com/r-index
More information about the freebsd-geom
mailing list