VFS_BUSY(9) BSD Kernel Developer's Manual VFS_BUSY(9)NAME
vfs_busy -- marks a mount point as busy
SYNOPSIS
#include <sys/param.h>
#include <sys/mount.h>
int
vfs_busy(struct mount *mp, int flags);
DESCRIPTION
The vfs_busy() function marks a mount point as busy by incrementing the reference count of a mount point. It also delays unmounting by
sleeping on mp if the MNTK_UNMOUNT flag is set in mp->mnt_kern_flag and the MBF_NOWAIT flag is not set.
Its arguments are:
mp The mount point to busy.
flags Flags controlling how vfs_busy() should act.
MBF_NOWAIT do not sleep if MNTK_UNMOUNT is set.
MBF_MNTLSTLOCK drop the mountlist_mtx in the critical path.
RETURN VALUES
A 0 value is returned on success. If the mount point is being unmounted and MBF_NOWAIT flag is specified ENOENT will be returned.
ERRORS
[ENOENT] The mount point is being unmounted (MNTK_UNMOUNT is set).
SEE ALSO vfs_unbusy(9)AUTHORS
This manual page was written by Chad David <davidc@acns.ab.ca>.
BSD February 11, 2013 BSD
Check Out this Related Man Page
VFS_MOUNT(9) BSD Kernel Developer's Manual VFS_MOUNT(9)NAME
vfs_mount -- generic file system mount function
SYNOPSIS
#include <sys/param.h>
#include <sys/mount.h>
int
vfs_mount(struct thread *td, const char *fstype, char *fspath, int fsflags, void *fsdata);
DESCRIPTION
The vfs_mount() function handles the generic portion of mounting a file system, and calls the file system specific mount function after veri-
fying its parameters and setting up the structures expected by the underlying mount code.
vfs_mount() is called directly by the mount(2) system call.
Its arguments are:
td The thread responsible for this call.
fstype The type of file system being mounted.
fspath The path to the mount point of the file system.
fsflags Flags controlling the mount. See mount(2) for details.
MNT_EXPORTED, MNT_NOSUID, MNT_UPDATE, MNT_RELOAD, MNT_FORCE, MNT_ASYNC, MNT_SYNCHRONOUS, MNT_UNION, MNT_NOATIME, MNT_SNAPSHOT,
MNT_NOCLUSTERR, MNT_NOCLUSTERW, MNT_IGNORE, MNT_UNION, MNT_NOSYMFOLLOW
fsdata File system specific data structure. It is in userspace when passed to vfs_mount() and is left untouched when passed to file sys-
tem's mount().
RETURN VALUES
A 0 value is returned on success.
ERRORS
[ENAMETOOLONG] The fs type or the mount point path is too long or any individual path component is too long.
[EPERM] Permission denied. There are a number of reason this can occur ranging from the user not having permission to mount a
file system to the securelevel being to high to load the fstype module.
[EINVAL] Invalid operation (ex: trying to update a non mount-point).
[ENOENT] The mount point does not exist (from namei()).
[ELOOP] The mount point is a muddle of links (from namei()).
[EOPNOTSUPP] The operation is not supported (ex: reloading a r/w file system).
[EBUSY] The mount point is busy or is not really a mount point (on update).
[ENOTDIR] The mount point is not a directory.
[ENODEV] The kernel linker was unable to load the specified fstype or was unable to find the specified fstype module.
Other errors can be returned by the file system's mount() and you should check the specific file system for details. Also this call relies
on a large number of other kernel services whose errors it returns so this list may not be exhaustive.
SEE ALSO mount(2), mount(8)
vfs.usermount
AUTHORS
This manual page was written by Chad David <davidc@acns.ab.ca>.
BSD November 26, 2004 BSD
Introduction
Originally, we only had one shell on unix. When ran a command, the shell would attempt to invoke one of the exec() system calls on it. It the command was an executable, the exec would succeed and the command would run. If the exec() failed, the shell would not give up, instead it... (3 Replies)
FreeBSD Kernel Internals, Dr. Marshall Kirk McKusick
nwbqBdghh6E
The first hour of Marshall Kirk McKusick's course on FreeBSD kernel internals based on his book, The Design and Implementation of the FreeBSD Operating System. (0 Replies)
Introduction
I have seen some misinformation regarding Unix file permissions. I will try to set the record straight. Take a look at this example of some output from ls:
$ ls -ld /usr/bin /usr/bin/cat
drwxrwxr-x 3 root bin 8704 Sep 23 2004 /usr/bin
-r-xr-xr-x 1 bin bin ... (6 Replies)
Suppose I have a main() function with only one malloc statement allocating say some 1 gb memory. Also say my system has 1 gb of ram.
main()
{
malloc(1gb)
return(0)
}
The program above exits without freeing the memory.
In this case will the 1 gb of heap memory be returned... (9 Replies)
I see lot of ad-hoc shell scripts in our servers which don't have a shebang at the beginning .
Does this mean that it will run on any shell ?
Is it a good practice to create scripts (even ad-hoc ones) without shebang ? (16 Replies)
Hi everyone,
I know the following questions are noobish questions but I am asking them because I am confused about the basics of history behind UNIX and LINUX.
Ok onto business, my questions are-:
Was/Is UNIX ever an open source operating system ?
If UNIX was... (21 Replies)
A shout out to Scott who gave me a helping hand to turn a simple sample Vue.js app I wrote yesterday into a Vue.js component:
Vue.component("unix-time", {
template: `<div class="time">{{unixtime}}</div>`,
data() {
return {
unixtime: ""
};
},
methods: {
... (1 Reply)
i read here that linux provides no way to determine when a directory was created.
https://www.unix.com/shell-programming-and-scripting/157874-creation-date-directory.htmlI have a directory /home/andy/scripts that had a README file in it.
That file says
I put the script in that directory and... (3 Replies)
Hello.
I can use any particular (stupid or not) format when using bash date command.
Example :
~> date --date "now" '+%Y-%m-%d %H!%M!%S'
2019-06-03 12!55!33or
~> date --date "now" '+%Y£%m£%d %H¤%M¤%S'
2019£06£03 12¤57¤36
or
~> date --date "now" '+%Y-%m-%d %H-%M-%S'
2019-06-03 12-58-51
... (4 Replies)
Morning All
So, I am starting looking into the world of UNIX for a new job (luckily not my primary function!) and I am looking to get stared. Like anything I seem to learn best by trying things out first in an environment but I have a key question:
Currently I use Oracle VirtualBox, can... (8 Replies)
I've installed Slack 14.2 on /dev/sda1 (/dev/sda2 is swap) and FreeBSD 12 on /dev/sda3 and lilo is the boot manager.
FreeBSD slices are as follows;
/ on /dev/ada0S3a, swap on /dev/ada0s3e, /var on /dev/ada0s3b, /tmp on /dev/ada0s3d and /usr on /dev/ada0s3f.
I hesitate to install Solaris 10... (2 Replies)
I'm trying to use a bash script for a psych experiment that involves listening to sound files and responding. If I have something like the code below, how can I make sure that a key press is assigned to RESPONSE only after the second echo statement?
for i in 1 2 3; do
echo "Ready?"
sleep 2
... (10 Replies)