qassociate(9f) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

qassociate(9f)

qassociate(9F)                 Kernel Functions                 qassociate(9F)



NAME
       qassociate - associate STREAMS queue with driver instance

SYNOPSIS
       #include <sys/types.h>
       #include <sys/stream.h>
       #include <sys/stropts.h>
       #include <sys/ddi.h>
       #include <sys/sunddi.h>

       int qassociate(queue_t *q, int instance

INTERFACE LEVEL
       Solaris DDI specific (Solaris DDI).

PARAMETERS
       queue_t *q      Pointer  to  a  queue(9S) structure. Either the read or
                       write queue can be used.


       int instance    Driver instance number or -1.


DESCRIPTION
       The qassociate() function must be used by DLPI style 2  device  drivers
       to  manage the association between STREAMS queues and device instances.
       The gld(4D) does this automatically on behalf of drivers based  on  it.
       It  is  recommended that the gld(4D) be used for network device drivers
       whenever possible.


       The qassociate() function associates the specified STREAMS  queue  with
       the specified instance of the bottom driver in the queue. Upon success‐
       ful return, the stream is associated with the instance with  any  prior
       association dissolved.


       A   DLPI  style  2  driver  calls  qassociate()  while  processing  the
       DL_ATTACH_REQ message. The driver is also expected to call this  inter‐
       face  while performing stream associations through other means, such as
       ndd(8) ioctl commands.


       If instance is -1, the stream is left unassociated  with  any  hardware
       instance.


       If the interface returns failure, the stream is not associated with the
       specified instance. Any prior association is left untouched.


       The interface typically fails because of failure to locate  and  attach
       the  device  instance.  The  interface  never  fails  if  the specified
       instance is -1.

CONTEXT
       The qassociate() function can be called from the stream's put(9E) entry
       point.

RETURN VALUES
       0     Success.


       -1    Failure.


EXAMPLES
       DLPI style 2 network driver DL_ATTACH_REQ code specifies:

         if (qassociate(q, instance) != 0)
                         goto fail;





       The  association  prevents  Dynamic Reconfiguration (DR) from detaching
       the instance.


       DLPI style 2 network driver DL_DETACH code specifies:

         (void) qassociate(q, -1);



       This dissolves the queue's association with any device instance.


       DLPI style 2 network driver open(9E) code must call:

         qassociate(q, -1);



       This informs the framework that this driver has  been  modified  to  be
       DDI-compliant.

SEE ALSO
       gld(4D), dlpi(4P), open(9E), put(9E), ddi_no_info(9F), queue(9S)



Oracle Solaris 11.4               01 Feb 2007                   qassociate(9F)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3