From: Nathan Lynch <nath...@linux.ibm.com>

When an add operation for multiple LMBs fails, there is currently
little indication from the kernel of what went wrong. Be a little more
verbose about error conditions in the add paths.

Signed-off-by: Nathan Lynch <nath...@linux.ibm.com>
---
 arch/powerpc/platforms/pseries/hotplug-memory.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/platforms/pseries/hotplug-memory.c 
b/arch/powerpc/platforms/pseries/hotplug-memory.c
index ba883c1b9f6d..4896920514f3 100644
--- a/arch/powerpc/platforms/pseries/hotplug-memory.c
+++ b/arch/powerpc/platforms/pseries/hotplug-memory.c
@@ -208,8 +208,10 @@ static int dlpar_change_lmb_state(struct drmem_lmb *lmb, 
bool online)
        int rc;
 
        mem_block = lmb_to_memblock(lmb);
-       if (!mem_block)
+       if (!mem_block) {
+               pr_err("Failed memory block lookup for LMB 0x%x\n", 
lmb->drc_index);
                return -EINVAL;
+       }
 
        if (online && mem_block->dev.offline)
                rc = device_online(&mem_block->dev);
@@ -575,6 +577,7 @@ static int dlpar_add_lmb(struct drmem_lmb *lmb)
 
        rc = update_lmb_associativity_index(lmb);
        if (rc) {
+               pr_err("Failed to configure LMB 0x%x\n", lmb->drc_index);
                return rc;
        }
 
@@ -588,12 +591,14 @@ static int dlpar_add_lmb(struct drmem_lmb *lmb)
        /* Add the memory */
        rc = __add_memory(nid, lmb->base_addr, block_sz, MHP_MEMMAP_ON_MEMORY);
        if (rc) {
+               pr_err("Failed to add LMB 0x%x to node %u", lmb->drc_index, 
nid);
                invalidate_lmb_associativity_index(lmb);
                return rc;
        }
 
        rc = dlpar_online_lmb(lmb);
        if (rc) {
+               pr_err("Failed to online LMB 0x%x on node %u\n", 
lmb->drc_index, nid);
                __remove_memory(lmb->base_addr, block_sz);
                invalidate_lmb_associativity_index(lmb);
        } else {

-- 
2.41.0

Reply via email to