fsevmgr

QNX SDP8.0Utilities ReferenceUtilities

Filesystem event manager

Note: The random daemon must be running before you start fsevmgr.

Syntax:

fsevmgr [options] [command]

Runs on:

QNX OS

Options:

-d
Enable debugging output on stdout.
-F group id
The group ID or name for the fsnotify device; see below.
-f fsnotify_name
The name for fsnotify to register (default: /dev/fsnotify).
CAUTION: Don't change the name of /dev/fsnotify; doing so will break the inotify system.
-k size
The size of each mailbox event queue, in kilobytes (default: 64 KB).
-m
Allow multiple events to be returned per read(). This is enabled for all inotify-style watches.
-s size
The size of the master event queue, in kilobytes (default: 100 KB).
-U uid:gid
Switch to the given user ID and group ID once running.
-w time
The number of milliseconds to delay before notifying io-blk instances.
-y
Suppress the notification of the event manager load.
command
A specific command to execute; one of the following:
-c id, string
Insert an event into the event manager queue.
-D value
Set the debugging level.
-j
Display statistics.
-M muid
Report the status of the given mailbox.
-P path
Poll the event manager and display the output on the given path.
-p
Poll the event manager and display the output on standard output.
-r
Display the primary event queue on standard output.
-S
Report the event manager's status.
-u
Notify filesystems to resynchronize themselves with the event manager.

Description:

The fsevmgr manager gathers events from the block I/O (io-blk.so) system and sends them to clients that want to be notified of changes to a filesystem. It uses mailboxes to manage event queues, creating one mailbox to serve as the master event queue, and then creating a mailbox for each open() request from a client.

If you specify a command argument, then fsevmgr completes the requested operation and exits immediately. If you don't specify a command, fsevmgr runs in the background.

By default, fsevmgr registers these interfaces in the system namespace:
/dev/fsnotify
Used by the inode notify system as a source of inotify_event structures; see inotify_init() in the C Library Reference.
The devb-* driver needs to be able to locate these names, and needs write access to them. The fsevmgr advertises itself to devb-* on starting unless you specify the -y option. If the devb-* driver isn't running as root (that is, you specified a user ID and a group ID on its command line), the group ID for the fsnotify devices must match the primary or supplementary group ID given to devb-*. For example, the following commands start devb-ahci as uid 121 and gid 132, and give it access to the fsnotify entries:
fsevmgr -F 132
devb-ahci cam user=121:132
The fsevmgr manager uses the following custom abilities, which are given to root users by default:
  • fsevmgr/qnxext (INOTIFY_ABILITY_QNX_EXT) — Check for processes that want to listen to any of the QNX extended inotify events.
  • fsevmgr/recurse (INOTIFY_ABILITY_RECURSE) — Reserved for future use.
Page updated: