Simplify the code by using a temporary and reduce the object size
by using a single call to pr_cont().  Reverse a test and unindent
a block too.

$ size mm/util.o* (defconfig x86-64)
   text    data     bss     dec     hex filename
   7419     372      40    7831    1e97 mm/util.o.new
   7477     372      40    7889    1ed1 mm/util.o.old

Signed-off-by: Joe Perches <j...@perches.com>
---
 mm/util.c | 24 ++++++++++++++----------
 1 file changed, 14 insertions(+), 10 deletions(-)

diff --git a/mm/util.c b/mm/util.c
index c37e24d5fa43..143c627fb3e8 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -997,22 +997,26 @@ int __weak memcmp_pages(struct page *page1, struct page 
*page2)
  */
 void mem_dump_obj(void *object)
 {
+       const char *type;
+
        if (kmem_valid_obj(object)) {
                kmem_dump_obj(object);
                return;
        }
+
        if (vmalloc_dump_obj(object))
                return;
-       if (!virt_addr_valid(object)) {
-               if (object == NULL)
-                       pr_cont(" NULL pointer.\n");
-               else if (object == ZERO_SIZE_PTR)
-                       pr_cont(" zero-size pointer.\n");
-               else
-                       pr_cont(" non-paged memory.\n");
-               return;
-       }
-       pr_cont(" non-slab/vmalloc memory.\n");
+
+       if (virt_addr_valid(object))
+               type = "non-slab/vmalloc memory";
+       else if (object == NULL)
+               type = "NULL pointer";
+       else if (object == ZERO_SIZE_PTR)
+               type = "zero-size pointer";
+       else
+               type = "non-paged memory";
+
+       pr_cont(" %s\n", type);
 }
 EXPORT_SYMBOL_GPL(mem_dump_obj);
 #endif

Reply via email to