Index: share/man/man9/ithread.9 =================================================================== --- share/man/man9/ithread.9 +++ share/man/man9/ithread.9 @@ -122,12 +122,20 @@ .Pp The .Fn intr_event_create -function creates a new interrupt thread. +function creates a new interrupt event. The -.Fa source +.Fa event argument points to a -.Vt struct entr_event event -pointer that will point to the newly created thread upon success. +.Vt struct *intr_event +that will point to the newly created event upon success. +The +.Fa source +argument is an opaque pointer which will be passed to the +.Fa pre_ithread , +.Fa post_ithread , +and +.Fa post_filter +callbacks. The .Fa flags argument is a mask of properties of this thread. @@ -140,7 +148,29 @@ .Fa enable argument specify optional functions used to enable this interrupt thread's interrupt source. -The remaining arguments form a +The +.Fa irq +argument is the unique interrupt vector number corresponding to the event. +The +.Fa pre_ithread +and +.Fa post_thread +arguments are callback functions that will be invoked before awaking the +interrupt thread and after its execution has completed, +respectively. +They may be +.Va NULL +to specify no callback. +The +.Fa post_filter +argument points to a callback function that will be invoked after each +handler's filter function has completed. +The +.Fa assign_cpu +argument points to a callback function that will be invoked when binding +an interrupt to a particular CPU. +The +remaining arguments form a .Xr printf 9 argument list that is used to build the base name of the new interrupt thread. The full name of an interrupt thread is formed by concatenating the base @@ -148,28 +178,37 @@ .Pp The .Fn intr_event_destroy -function destroys a previously created interrupt thread by releasing its -resources and arranging for the backing kernel thread to terminate. -An interrupt thread can only be destroyed if it has no handlers remaining. +function destroys a previously created interrupt event by releasing its +resources. +.\" The following is not true (yet): +.\"and arranging for the backing kernel thread to terminate. +An interrupt event can only be destroyed if it has no handlers remaining. .Pp The .Fn intr_event_add_handler -function adds a new handler to an existing interrupt thread specified by -.Fa ithread . +function adds a new handler to an existing interrupt event specified by +.Fa ie . The .Fa name argument specifies a name for this handler. The +.Fa filter +argument provide the filter function to execute. +The .Fa handler -and +argument provides the handler function to be executed from the +event's interrupt thread. +The .Fa arg -arguments provide the function to execute for this handler and an argument -to pass to it. +argument will be passed to the +.Fa filter +and +.Fa handler +functions when they are invoked. The .Fa pri -argument specifies the priority of this handler and is used both in sorting -it in relation to the other handlers for this thread and to specify the -priority of the backing kernel thread. +argument specifies the priority of this handler and is used to sort it in +relation to the other handlers for this event. The .Fa flags argument can be used to specify properties of this handler as defined in