/* Collect the processes who have the corrupted page mapped to kill. This is done in two steps for locking reasons. First preallocate one tokill structure outside the spin locks, so that we can kill at least one process reasonably reliable.  */
static void collect_procs(struct page *page, struct list_head *tokill)
/* Collect the processes who have the corrupted page mapped to kill. This is done in two steps for locking reasons. First preallocate one tokill structure outside the spin locks, so that we can kill at least one process reasonably reliable.  */
static void collect_procs(struct page *page, struct list_head *tokill)
{
	struct to_kill *tk;
	if (!page->mapping)
		return;
	tk = kmalloc(sizeof(struct to_kill), GFP_NOIO);
	if (!tk)
		return;
	if (PageAnon(page))
		collect_procs_anon(page, tokill, &tk);
	else
		collect_procs_file(page, tokill, &tk);
	kfree(tk);
}