---
title: enqueue
framework: kernel
role: pseudoSymbol
path: kernel/iooutputqueue/1810610-enqueue
---

# enqueue

Adds a packet, or a chain of packets, to the queue.

## Declaration

```occ
virtual UInt32 enqueue(
 mbuf_tm,
 void *param) = 0; 
```

## Parameters

- `m`: A single packet, or a chain of packets.
- `param`: A parameter provided by the caller.

## Return Value

Return Value Returns a return code.

## Overview

Overview This method is called by a client to add a packet, or a chain of packets, to the queue. A packet is described by an mbuf chain, while a chain of packets is constructed by linking multiple mbuf chains via the m_nextpkt field.

## See Also

### Miscellaneous

- [cancelServiceThread](kernel/iooutputqueue/1810578-cancelservicethread.md)
- [flush](kernel/iooutputqueue/1810640-flush.md)
- [free](kernel/iooutputqueue/1810666-free.md)
- [getCapacity](kernel/iooutputqueue/1810689-getcapacity.md)
- [getMbufPriority](kernel/iooutputqueue/1810719-getmbufpriority.md)
- [getOutputHandler](kernel/iooutputqueue/1810744-getoutputhandler.md)
- [getSize](kernel/iooutputqueue/1810788-getsize.md)
- [getStatisticsData](kernel/iooutputqueue/1810822-getstatisticsdata.md)
- [init](kernel/iooutputqueue/1810854-init.md)
- [scheduleServiceThread](kernel/iooutputqueue/1810887-scheduleservicethread.md)
- [service](kernel/iooutputqueue/1810919-service.md)
- [serviceThread](kernel/iooutputqueue/1810947-servicethread.md)
- [setCapacity](kernel/iooutputqueue/1810969-setcapacity.md)
- [start](kernel/iooutputqueue/1810993-start.md)
- [stop](kernel/iooutputqueue/1811022-stop.md)
