DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
SVR5

mdi_tx_if(D3mdi)


mdi_tx_if -- service driver's write queue for multiprocessor-aware MDI drivers

Syntax

   #include <sys/types.h>
   #include <sys/stream.h>
   #include <sys/mdi.h>
   #include <sys/ddi.h>
   

void mdi_tx_if(mdi_tx_if_t * txint, mblk_t *msg);

Description

Service the MDI driver's write queue, and issue a new transmit request to the adapter.

Arguments


txint
pointer to an mdi_tx_if_t structure returned by the mdi_tx_if_init(D3mdi) function.

msg
Set to a valid, non-NULL msg when calling from the uwput(D2mdi) entry point routine. Set to NULL when calling from the srv(D2str) or intr(D2mdi) entry point routines.

Return values

None.

Usage

The mdi_tx_if(D3mdi) function is called from the driver's put(D2str), srv(D2str), and intr(D2) routines to service the driver's write queue and to issue a new transmit request to the adapter. The driver must call the mdi_tx_if_init(D3mdi) and mdi_tx_if_enable(D3mdi) functions first, to initialize and allocate the lock structure.

mdi_tx_if( ) allows a single-threaded driver to run on any configured CPU in a multiprocessing configuration. If the MDITX_MP_SAFE flag is set for the mdi_tx_if_init( ) function when it creates the locking structure, only one instance of the MDI driver executes at a time, but the impact on general system performance is much less than if the driver could only execute on CPU 0.

Context and synchronization

Any context.

Hardware applicability

All

Version applicability

mdi: 2, 2.1

Differences between versions

This function is not supported on SCO OpenServer systems. Similar functionality is provided through the mditx_interface( ) and mditx_interfaceMT( ) functions.

References

mdi_tx_if(D3mdi), mdi_tx_if_deinit(D3mdi), mdi_tx_if_disable(D3mdi), mdi_tx_if_enable(D3mdi), mdi_tx_if_init(D3mdi),

``Trylocks'' in HDK Technical Reference


19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005