Subject: Re: Crash with 9fdb04c "async: replace list of active domains with global list of pending items"

From: Tejun Heo <[email-masked]>
Date: Fri, 25 Jan 2013 09:19:20 -0800

Hello,

On Thu, Jan 24, 2013 at 09:23:57PM -0800, Stephen Warren wrote:
> In next-20130124, I see a crash during boot on my ARM system unless I
> revert 9fdb04c "async: replace list of active domains with global list
> of pending items". This was reported t me by Venu (CC'd). The kernel log
> is below.
> 
> Looking at that patch, I note that __async_schedule() does:
> 
> > 	list_add_tail(&entry->domain_list, &domain->pending);
> > 	if (domain->registered)
> > 		list_add_tail(&entry->global_list, &async_global_pending);
> 
> ... whereas async_run_entry_fn() unconditionally undoes both those
> list_add_tail() calls, even if the second never executed and hence the
> list entry was never initialized:
> 
> > 	list_del_init(&entry->domain_list);
> > 	list_del_init(&entry->global_list);

Was reported by James Hogan a bit earlier and fix has been applied.

  http://thread.gmane.org/gmane.linux.kernel/1425387/focus=1429460

Thanks!

-- 
tejun