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

Commit ea50be59 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

Driver core / MM: Drop offline_memory_block()



Since offline_memory_block(mem) is functionally equivalent to
device_offline(&mem->dev), make the only caller of the former use
the latter instead and drop offline_memory_block() entirely.

Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: default avatarToshi Kani <toshi.kani@hp.com>
parent be547436
Loading
Loading
Loading
Loading
+0 −21
Original line number Diff line number Diff line
@@ -728,27 +728,6 @@ int unregister_memory_section(struct mem_section *section)
}
#endif /* CONFIG_MEMORY_HOTREMOVE */

/*
 * offline one memory block. If the memory block has been offlined, do nothing.
 *
 * Call under device_hotplug_lock.
 */
int offline_memory_block(struct memory_block *mem)
{
	int ret = 0;

	mutex_lock(&mem->state_mutex);
	if (mem->state != MEM_OFFLINE) {
		ret = __memory_block_change_state_uevent(mem, MEM_OFFLINE,
							 MEM_ONLINE, -1);
		if (!ret)
			mem->dev.offline = true;
	}
	mutex_unlock(&mem->state_mutex);

	return ret;
}

/* return true if the memory block is offlined, otherwise, return false */
bool is_memblock_offlined(struct memory_block *mem)
{
+0 −1
Original line number Diff line number Diff line
@@ -251,7 +251,6 @@ extern int mem_online_node(int nid);
extern int add_memory(int nid, u64 start, u64 size);
extern int arch_add_memory(int nid, u64 start, u64 size);
extern int offline_pages(unsigned long start_pfn, unsigned long nr_pages);
extern int offline_memory_block(struct memory_block *mem);
extern bool is_memblock_offlined(struct memory_block *mem);
extern int remove_memory(int nid, u64 start, u64 size);
extern int sparse_add_one_section(struct zone *zone, unsigned long start_pfn,
+1 −1
Original line number Diff line number Diff line
@@ -1680,7 +1680,7 @@ int walk_memory_range(unsigned long start_pfn, unsigned long end_pfn,
static int offline_memory_block_cb(struct memory_block *mem, void *arg)
{
	int *ret = arg;
	int error = offline_memory_block(mem);
	int error = device_offline(&mem->dev);

	if (error != 0 && *ret == 0)
		*ret = error;