Barrelfish
Functions
mem_barrelfish.c File Reference

Buffer memory for LWIP using caps. More...

Functions

uint8_t * mem_barrelfish_alloc (uint8_t binding_index, uint32_t size)
 
errval_t mem_barrelfish_replace_pbuf (struct pbuf *p)
 
struct pbuf * mem_barrelfish_get_pbuf (uint64_t pbuf_id)
 
uint64_t mem_barrelfish_put_pbuf (struct pbuf *pbuf)
 

Detailed Description

Buffer memory for LWIP using caps.

This file provides caps for the buffers in LWIP. Needed because the network stack should pass a cap to a buffer to the network device driver.

Function Documentation

uint8_t* mem_barrelfish_alloc ( uint8_t  binding_index,
uint32_t  size 
)

Used to allocate memory for RX/TX buffers in lwip. At the moment it must * only be called once for each binding (2 total).

struct pbuf* mem_barrelfish_get_pbuf ( uint64_t  pbuf_id)

Resolve a pbuf id into a pbuf handle.

uint64_t mem_barrelfish_put_pbuf ( struct pbuf *  pbuf)

Register a pbuf to get an id for it. The pbuf has to be allocated using mem_barrelfish_alloc!

errval_t mem_barrelfish_replace_pbuf ( struct pbuf *  p)

Add a new pbuf to the rx ring to replace an existing one, in which a packet has been received.