LIST_EMPTY_CAREFUL

Section: Data Types (9)
Updated: February 2011
Index Return to Main Contents
 

NAME

list_empty_careful - tests whether a list is empty and not being modified  

SYNOPSIS

int list_empty_careful(const struct list_head * head);
 

ARGUMENTS

head

the list to test
 

DESCRIPTION

tests whether a list is empty _and_ checks that no other CPU might be in the process of modifying either member (next or prev)  

NOTE

using list_empty_careful without synchronization can only be safe if the only activity that can happen to the list entry is list_del_init. Eg. it cannot be used if another CPU could re-list_add it.  

COPYRIGHT