zion - skb_dequeue
Nom
__skb_dequeue, skb_dequeue - retire un sk_buff du haut de la liste
Résumé
#include <linux/skbuff.h> .HP struct sk_buff *__skb_dequeue(struct sk_buff_head *list );
struct sk_buff *skb_dequeue(struct sk_buff_head *list );
Description
__skb_dequeue enlève le premier élément d'un sk_buff_head, décrémente le pointeur qlen de liste, et retire proprement le sk_buff de sa file. Cette fonction devrait toujours être utilisée plutôt que de le faire "à la main" car elle le fait de manière standard, proprement (les interruptions sont momentanément désactivées) (voir NOTES ci-dessous). La plupart des utilisateurs n'appelleront pas directement __skb_unlink car elle nécessite deux arguments et ne désactive pas les interruptions.
Valeur renvoyée
Renvoir un pointeur sur le premier élément de list, ou NULL si list est vide.
Notes
Il est important de constater que les différences entre __skb_dequeue et skb_dequeue, mais ausi entre les fonctions __skb_ et leur équivalent skb_. Les fonctions __skb_ ne sont pas atomiques (Ndt : non réentrantes) et devraient être utilisées après avoir désactivé les interruptions. Pour faciliter l'écriture des pilotes, les fonctions skb_ sont fournies ; elles désactivent et réactivent les interruptions de manière transparente en plus de réaliser la tâche demandée.
Disponibilité
Linux 1.0+
Voir aussi
intro (9), skb_unlink (9), skb_insert (9), skb_queue_head (9), skb_queue_tail (9)
/usr/src/linux/net/netlink.c /usr/src/linux/net/ax25/af_ax25.c /usr/src/linux/net/core/datagram.c /usr/src/linux/net/ipv4/ipmr.c /usr/src/linux/net/ipv4/tcp.c
Auteur
Cyrus Durgin <cider@speakeasy.org>
Traduction
Thierry Vignaud < tvignaud@mandrakesoft.com >, 1999
Poster un commentaire