{
struct page_collection pc;
struct cfs_trace_page *tage;
- struct cfs_trace_page *tmp;
pc.pc_want_daemon_pages = 1;
collect_pages(&pc);
- list_for_each_entry_safe(tage, tmp, &pc.pc_pages, linkage) {
-
+ while (!list_empty(&pc.pc_pages)) {
+ tage = list_first_entry(&pc.pc_pages,
+ struct cfs_trace_page, linkage);
__LASSERT_TAGE_INVARIANT(tage);
list_del(&tage->linkage);
{
struct cfs_trace_cpu_data *tcd;
struct cfs_trace_page *tage;
- struct cfs_trace_page *tmp;
int i, cpu;
for_each_possible_cpu(cpu) {
continue;
tcd->tcd_shutting_down = 1;
- list_for_each_entry_safe(tage, tmp, &tcd->tcd_pages, linkage) {
+ while (!list_empty(&tcd->tcd_pages)) {
+ tage = list_first_entry(&tcd->tcd_pages,
+ struct cfs_trace_page,
+ linkage);
__LASSERT_TAGE_INVARIANT(tage);
list_del(&tage->linkage);