mirror of
https://github.com/torvalds/linux.git
synced 2024-12-28 22:02:28 +00:00
s390/memory hotplug,sclp: get rid of per memory increment usecount
Given that the memory block size is always larger or equal to the memory increment size there is no need for a usecount anymore. Each memory increment belongs to exactly one memory block. So get rid of the usecount. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
e5d709bb5f
commit
1553556067
@ -345,7 +345,6 @@ struct memory_increment {
|
||||
struct list_head list;
|
||||
u16 rn;
|
||||
int standby;
|
||||
int usecount;
|
||||
};
|
||||
|
||||
struct assign_storage_sccb {
|
||||
@ -463,21 +462,10 @@ static int sclp_mem_change_state(unsigned long start, unsigned long size,
|
||||
break;
|
||||
if (start > istart + rzm - 1)
|
||||
continue;
|
||||
if (online) {
|
||||
if (incr->usecount++)
|
||||
continue;
|
||||
/*
|
||||
* Don't break the loop if one assign fails. Loop may
|
||||
* be walked again on CANCEL and we can't save
|
||||
* information if state changed before or not.
|
||||
* So continue and increase usecount for all increments.
|
||||
*/
|
||||
if (online)
|
||||
rc |= sclp_assign_storage(incr->rn);
|
||||
} else {
|
||||
if (--incr->usecount)
|
||||
continue;
|
||||
else
|
||||
sclp_unassign_storage(incr->rn);
|
||||
}
|
||||
}
|
||||
return rc ? -EIO : 0;
|
||||
}
|
||||
@ -561,8 +549,6 @@ static void __init sclp_add_standby_memory(void)
|
||||
add_memory_merged(0);
|
||||
}
|
||||
|
||||
#define MEM_SCT_SIZE (1UL << SECTION_SIZE_BITS)
|
||||
|
||||
static void __init insert_increment(u16 rn, int standby, int assigned)
|
||||
{
|
||||
struct memory_increment *incr, *new_incr;
|
||||
@ -574,8 +560,6 @@ static void __init insert_increment(u16 rn, int standby, int assigned)
|
||||
return;
|
||||
new_incr->rn = rn;
|
||||
new_incr->standby = standby;
|
||||
if (!standby)
|
||||
new_incr->usecount = rzm > MEM_SCT_SIZE ? rzm/MEM_SCT_SIZE : 1;
|
||||
last_rn = 0;
|
||||
prev = &sclp_mem_list;
|
||||
list_for_each_entry(incr, &sclp_mem_list, list) {
|
||||
|
Loading…
Reference in New Issue
Block a user