On 10/15/2018 05:39 PM, Michael Ellerman wrote: > Michael Bringmann <m...@linux.vnet.ibm.com> writes: >> diff --git a/arch/powerpc/platforms/pseries/hotplug-memory.c >> b/arch/powerpc/platforms/pseries/hotplug-memory.c >> index 2b796da..9c76345 100644 >> --- a/arch/powerpc/platforms/pseries/hotplug-memory.c >> +++ b/arch/powerpc/platforms/pseries/hotplug-memory.c >> @@ -541,6 +549,23 @@ static int dlpar_memory_readd_by_index(u32 drc_index) >> return rc; >> } >> >> +static int dlpar_memory_readd_multiple(void) >> +{ >> + struct drmem_lmb *lmb; >> + int rc; >> + >> + pr_info("Attempting to update multiple LMBs\n"); >> + >> + for_each_drmem_lmb(lmb) { >> + if (drmem_lmb_update(lmb)) { >> + rc = dlpar_memory_readd_helper(lmb); >> + drmem_remove_lmb_update(lmb); >> + } >> + } >> + >> + return rc; >> +} > > This leaves rc potentially uninitialised. > > What should the result be in that case, -EINVAL ?
On another note if there are multiple LMBs to update the value of rc only reflects the final dlpar_memory_readd_helper() call. -Tyrel > > cheers >