qassociate man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

QASSOCIATE(9F)							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(7D) does this automatically on behalf of drivers based  on  it.
       It  is  recommended that the gld(7D) 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(1M) 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
       dlpi(7P), gld(7D), open(9E), put(9E), ddi_no_info(9F), queue(9S)

				 Feb 01, 2007			QASSOCIATE(9F)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net