ADC Home > Reference Library > Reference > Darwin > Kernel Framework Reference

 


IOOutputQueue.h

Includes:

Overview



Classes

IOOutputQueue

A packet queue that supports multiple producers and a single consumer.



Enumerations


OutputCommands


A command requested by the target.

enum { 
    kIOOutputCommandMask = 0xff00, 
    kIOOutputCommandNone = 0x0000, 
    kIOOutputCommandStall = 0x0100 
};  
Constants
kIOOutputCommandMask

Define the command field in the return code.

kIOOutputCommandNone

No command.

kIOOutputCommandStall

A command to stall the queue.


OutputHandlerReturnCodes


Common return codes returned by the target's output handler.

enum { 
    kIOReturnOutputSuccess = (
        kIOOutputStatusAccepted | kIOOutputCommandNone), 
    kIOReturnOutputDropped = (
        kIOOutputStatusDropped | kIOOutputCommandNone), 
    kIOReturnOutputStall = (
        kIOOutputStatusRetry | kIOOutputCommandStall) 
};  
Constants
kIOReturnOutputSuccess

Packet was accepted.

kIOReturnOutputDropped

Packet was dropped.

kIOReturnOutputStall

Stall the queue and retry the same packet when the queue is restarted.


OutputPacketStatus


The status of the packet sent to the target.

enum { 
    kIOOutputStatusMask = 0x00ff, 
    kIOOutputStatusAccepted = 0x0000, 
    kIOOutputStatusDropped = 0x0001, 
    kIOOutputStatusRetry = 0x0002 
};  
Constants
kIOOutputStatusMask

Define the status field in the return code.

kIOOutputStatusAccept

Packet was accepted by the target.

kIOOutputStatusDropped

Packet accepted, but was also dropped.

kIOOutputStatusRetry

Target ran out of resources, and is unable to accept the packet. The ownership of the packet reverts back to the queue.


Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.

 

Last Updated: 2008-12-19