|
@@ -561,6 +561,8 @@ 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;
|
|
@@ -573,7 +575,7 @@ static void __init insert_increment(u16 rn, int standby, int assigned)
|
|
|
new_incr->rn = rn;
|
|
|
new_incr->standby = standby;
|
|
|
if (!standby)
|
|
|
- new_incr->usecount = 1;
|
|
|
+ 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) {
|