(Fast) Prio
[Queueing Disciplines]

Priority Band Translations



char * rtnl_prio2str (int prio, char *buf, size_t size)
 Convert priority to character string.
int rtnl_str2prio (const char *name)
 Convert character string to priority.

Attribute Modification



void rtnl_qdisc_prio_set_bands (struct rtnl_qdisc *qdisc, int bands)
 Set number of bands of PRIO qdisc.
int rtnl_qdisc_prio_get_bands (struct rtnl_qdisc *qdisc)
 Get number of bands of PRIO qdisc.
int rtnl_qdisc_prio_set_priomap (struct rtnl_qdisc *qdisc, uint8_t priomap[], int len)
 Set priomap of the PRIO qdisc.
uint8_t * rtnl_qdisc_prio_get_priomap (struct rtnl_qdisc *qdisc)
 Get priomap of a PRIO qdisc.

Detailed Description

1) Typical PRIO configuration
 // Specify the maximal number of bands to be used for this PRIO qdisc.
 rtnl_qdisc_prio_set_bands(qdisc, QDISC_PRIO_DEFAULT_BANDS);

 // Provide a map assigning each priority to a band number.
 uint8_t map[] = QDISC_PRIO_DEFAULT_PRIOMAP;
 rtnl_qdisc_prio_set_priomap(qdisc, map, sizeof(map));

Function Documentation

void rtnl_qdisc_prio_set_bands ( struct rtnl_qdisc *  qdisc,
int  bands 
)

Set number of bands of PRIO qdisc.

Parameters:
qdisc PRIO qdisc to be modified.
bands New number of bands.
Returns:
0 on success or a negative error code.

Definition at line 129 of file prio.c.

References TC_CAST.

int rtnl_qdisc_prio_get_bands ( struct rtnl_qdisc *  qdisc  ) 

Get number of bands of PRIO qdisc.

Parameters:
qdisc PRIO qdisc.
Returns:
Number of bands or a negative error code.

Definition at line 145 of file prio.c.

References TC_CAST.

int rtnl_qdisc_prio_set_priomap ( struct rtnl_qdisc *  qdisc,
uint8_t  priomap[],
int  len 
)

Set priomap of the PRIO qdisc.

Parameters:
qdisc PRIO qdisc to be modified.
priomap New priority mapping.
len Length of priomap (# of elements).
Returns:
0 on success or a negative error code.

Definition at line 165 of file prio.c.

References TC_CAST.

uint8_t* rtnl_qdisc_prio_get_priomap ( struct rtnl_qdisc *  qdisc  ) 

Get priomap of a PRIO qdisc.

Parameters:
qdisc PRIO qdisc.
Returns:
Priority mapping as array of size TC_PRIO_MAX+1 or NULL if an error occured.

Definition at line 197 of file prio.c.

References TC_CAST.

char* rtnl_prio2str ( int  prio,
char *  buf,
size_t  size 
)

Convert priority to character string.

Parameters:
prio Priority.
buf Destination buffer
size Size of destination buffer.

Converts a priority to a character string and stores the result in the specified destination buffer.

Returns:
Name of priority as character string.

Definition at line 237 of file prio.c.

int rtnl_str2prio ( const char *  name  ) 

Convert character string to priority.

Parameters:
name Name of priority.

Converts the provided character string specifying a priority to the corresponding numeric value.

Returns:
Numeric priority or a negative value if no match was found.

Definition at line 251 of file prio.c.