fp_select Kernel Service notify Routine

Purpose

Registers the notify routine.

Syntax

#include <sys/types.h> #include <sys/errno.h> void notify (id, sub_id, rtnevents, pid) int id; int sub_id ; ushort rtnevents ; pid_t pid;

Parameters

Item Description
id Indicates the selected function ID specified by the routine that made the call to the selnotify kernel service to indicate the occurrence of an outstanding event. For device drivers, this parameter is equivalent to the devno (device major and minor number) parameter.
sub_id Indicates the unique ID specified by the routine that made the call to the selnotify kernel service to indicate the occurrence of an outstanding event. For device drivers, this parameter is equivalent to the chan parameter: channel for multiplexed drivers; 0 for nonmultiplexed drivers.
rtnevents Specifies the rtnevents parameter supplied by the routine that made the call to the selnotify service indicating which events are designated as true.
pid Specifies the process ID of a process waiting for the event corresponding to this call of the notify routine.

When a notify routine is provided for a cascaded function, the selnotify kernel service calls the specified notify routine instead of posting the process that was waiting on the event. It is up to this notify routine to determine if another selnotify call should be made to notify the waiting process of an event.

The notify routine is not called if the request is synchronous (that is, if the POLLSYNC flag is set in the events parameter) or if the original poll or select request is no longer outstanding.

Note: When more than one process has requested notification of an event and the fp_select kernel service is used with a notify routine specified, the notification of the event causes the notify routine to be called once for each process that is currently waiting on one or more of the occurring events.

Description

The fp_select kernel service notify routine is registered by the caller of the fp_select kernel service to be called by the kernel when specified events become true. The option to register this notify routine is available in a cascaded environment. The notify routine can be called at interrupt time.

Execution Environment

The fp_select kernel service notify routine can be called from either the process or interrupt environment.