Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60baa158 authored by Jeff Dike's avatar Jeff Dike Committed by Linus Torvalds
Browse files

[PATCH] uml: memory hotplug cleanups



Change memory hotplug to use GFP_NOWAIT instead of GFP_ATOMIC, so that it
will grab memory without sleeping, but doesn't try to use the emergency
pools.

A small list initialization suggested by Daniel Phillips - don't initialize
lists which are just about to be list_add-ed.

Signed-off-by: default avatarJeff Dike <jdike@addtoit.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 7b04d717
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -87,7 +87,7 @@ static irqreturn_t mconsole_interrupt(int irq, void *dev_id,
		if(req.cmd->context == MCONSOLE_INTR)
			(*req.cmd->handler)(&req);
		else {
			new = kmalloc(sizeof(*new), GFP_ATOMIC);
			new = kmalloc(sizeof(*new), GFP_NOWAIT);
			if(new == NULL)
				mconsole_reply(&req, "Out of memory", 1, 0);
			else {
@@ -415,7 +415,6 @@ static int mem_config(char *str)

			unplugged = page_address(page);
			if(unplug_index == UNPLUGGED_PER_PAGE){
				INIT_LIST_HEAD(&unplugged->list);
				list_add(&unplugged->list, &unplugged_pages);
				unplug_index = 0;
			}
@@ -655,7 +654,6 @@ static void with_console(struct mc_request *req, void (*proc)(void *),
	struct mconsole_entry entry;
	unsigned long flags;

	INIT_LIST_HEAD(&entry.list);
	entry.request = *req;
	list_add(&entry.list, &clients);
	spin_lock_irqsave(&console_lock, flags);