DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
SCO OpenServer

remove_intr_handler(D3oddi)


remove_intr_handler -- dynamically remove interrupt routine handler

Synopsis

#include <sys/devreg.h>

int remove_intr_handler(int vector, void (*handler)());

Description

The remove_intr_handler( ) function dynamically removes the interrupt routine handler, thereby preventing it from processing interrupts occurring on vector.

Arguments


vector
Vector being used for this interrupt handler; must match that used for the call to add_intr_handler(D3oddi) function.

handler
Handler to be removed; must match that used for the call to add_intr_handler(D3oddi) function.

Return values

If handler is successfully removed, 0 is returned. Otherwise, handler is not installed and an error code is returned, as follows:

INTR_BADVECTOR
The vector was not in the range 1 to {MAXIVECT}, inclusive. {MAXIVECT} is the maximum usable vector for this architecture.

INTR_PRIVATE
handler does not process interrupts on vector.

INTR_ENABLED
Interrupts have been enabled. It is no longer possible to remove interrupt handlers.

Usage

Context and synchronization

Initialization context

This function must be called before interrupts are enabled.

Hardware applicability

All

Version applicability

oddi: 2

Differences between versions

ODDI version 3 and later use the idistributed(D3oddi) function to register interrupt handlers. No kernel function is provided to remove interrupts that are registered with idistributed( ).

SVR5 DDI compatibility

DDI does not support this function. See ``Interrupt handlers, attaching and registering'' in HDK Technical Reference for information about how DDI interrupts are attached.

References

add_intr_handler(D3oddi), pr_intr_rmerr(D3oddi)

``Interrupt handlers, attaching and registering'' in HDK Technical Reference


19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 5 HDK - June 2005