Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
rte_ticketlock.h(3)		      DPDK		     rte_ticketlock.h(3)

NAME
     rte_ticketlock.h

SYNOPSIS
     #include <rte_common.h>
     #include <rte_lcore.h>
     #include <rte_pause.h>
     #include <rte_stdatomic.h>

   Data Structures
     union rte_ticketlock_t

   Macros
     #define RTE_TICKETLOCK_INITIALIZER   { 0 }
     #define TICKET_LOCK_INVALID_ID   -1
     #define RTE_TICKETLOCK_RECURSIVE_INITIALIZER

   Functions
     static void rte_ticketlock_init (rte_ticketlock_t *tl)
     static void rte_ticketlock_lock (rte_ticketlock_t *tl)
     static void rte_ticketlock_unlock (rte_ticketlock_t *tl)
     static int rte_ticketlock_trylock (rte_ticketlock_t *tl)
     static int rte_ticketlock_is_locked (rte_ticketlock_t *tl)
     static void rte_ticketlock_recursive_init (rte_ticketlock_recursive_t *tlr)
     static void rte_ticketlock_recursive_lock (rte_ticketlock_recursive_t *tlr)
     static   void  rte_ticketlock_recursive_unlock  (rte_ticketlock_recursive_t
	 *tlr)
     static  int  rte_ticketlock_recursive_trylock   (rte_ticketlock_recursive_t
	 *tlr)

Detailed Description
     RTE ticket locks

     This file defines an API for ticket locks, which give each waiting thread a
     ticket and take the lock one by one, first come, first serviced.

     All locks must be initialised before use, and only initialised once.

     Definition in file rte_ticketlock.h.

Macro Definition Documentation
   #define RTE_TICKETLOCK_INITIALIZER	{ 0 }
     A static ticketlock initializer.

     Definition at line 43 of file rte_ticketlock.h.

   #define TICKET_LOCK_INVALID_ID   -1
     The rte_ticketlock_recursive_t type.

     Definition at line 128 of file rte_ticketlock.h.

   #define RTE_TICKETLOCK_RECURSIVE_INITIALIZER
     Value:.PP
			       {RTE_TICKETLOCK_INITIALIZER, \
			       TICKET_LOCK_INVALID_ID, 0}
     A static recursive ticketlock initializer.

     Definition at line 139 of file rte_ticketlock.h.

Function Documentation
   static void rte_ticketlock_init (rte_ticketlock_t * tl) [inline],  [static]
     Initialize the ticketlock to an unlocked state.

     Parameters
	 tl A pointer to the ticketlock.

     Definition at line 52 of file rte_ticketlock.h.

   static void rte_ticketlock_lock (rte_ticketlock_t * tl) [inline],  [static]
     Take the ticketlock.

     Parameters
	 tl A pointer to the ticketlock.

     Definition at line 64 of file rte_ticketlock.h.

   static void rte_ticketlock_unlock (rte_ticketlock_t * tl) [inline],	[static]

     Release the ticketlock.

     Parameters
	 tl A pointer to the ticketlock.

     Definition at line 78 of file rte_ticketlock.h.

   static int rte_ticketlock_trylock (rte_ticketlock_t * tl) [inline],	[static]

     Try to take the lock.

     Parameters
	 tl A pointer to the ticketlock.

     Returns
	 1 if the lock is successfully taken; 0 otherwise.

     Definition at line 93 of file rte_ticketlock.h.

   static  int rte_ticketlock_is_locked (rte_ticketlock_t * tl) [inline],  [sta-
     tic]
     Test if the lock is taken.

     Parameters
	 tl A pointer to the ticketlock.

     Returns
	 1 if the lock is currently taken; 0 otherwise.

     Definition at line 118 of file rte_ticketlock.h.

   static void rte_ticketlock_recursive_init (rte_ticketlock_recursive_t *  tlr)
     [inline],	[static]
     Initialize the recursive ticketlock to an unlocked state.

     Parameters
	 tlr A pointer to the recursive ticketlock.

     Definition at line 149 of file rte_ticketlock.h.

   static  void rte_ticketlock_recursive_lock (rte_ticketlock_recursive_t * tlr)
     [inline],	[static]
     Take the recursive ticketlock.

     Parameters
	 tlr A pointer to the recursive ticketlock.

     Definition at line 163 of file rte_ticketlock.h.

   static  void  rte_ticketlock_recursive_unlock  (rte_ticketlock_recursive_t  *
     tlr) [inline],  [static]
     Release the recursive ticketlock.

     Parameters
	 tlr A pointer to the recursive ticketlock.

     Definition at line 181 of file rte_ticketlock.h.

   static  int	rte_ticketlock_recursive_trylock  (rte_ticketlock_recursive_t  *
     tlr) [inline],  [static]
     Try to take the recursive lock.

     Parameters
	 tlr A pointer to the recursive ticketlock.

     Returns
	 1 if the lock is successfully taken; 0 otherwise.

     Definition at line 199 of file rte_ticketlock.h.

Author
     Generated automatically by Doxygen for DPDK from the source code.

Version 25.11.0 		 Thu Aug 27 2026	     rte_ticketlock.h(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=RTE_TICKETLOCK_RECURSIVE_INITIALIZER&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help