[bug report] mm/vmalloc: explicitly identify vm_map_ram area when shown in /proc/vmcoreinfo

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Baoquan He,

This static checker warning is related to yesterdays, but more straight
forward to analyze.

The patch ae5dfc510155: "mm/vmalloc: explicitly identify vm_map_ram
area when shown in /proc/vmcoreinfo" from Jan 13, 2023, leads to the
following Smatch static checker warning:

	mm/vmalloc.c:4244 s_show()
	error: we previously assumed 'v' could be null (see line 4241)

mm/vmalloc.c
    4226 static int s_show(struct seq_file *m, void *p)
    4227 {
    4228         struct vmap_area *va;
    4229         struct vm_struct *v;
    4230 
    4231         va = list_entry(p, struct vmap_area, list);
    4232 
    4233         if (!va->vm && (va->flags & VMAP_RAM)) {
                      ^^^^^^     ^^^^^^^^^^^^^^^^^^^^
Assume va->vm is NULL but the VMAP_RAM flag is not set.

    4234                 seq_printf(m, "0x%pK-0x%pK %7ld vm_map_ram\n",
    4235                         (void *)va->va_start, (void *)va->va_end,
    4236                         va->va_end - va->va_start);
    4237 
    4238                 goto final;
    4239         }
    4240 
    4241         v = va->vm;
                 ^^^^^^^^^^
Assignment

    4242 
    4243         seq_printf(m, "0x%pK-0x%pK %7ld",
--> 4244                 v->addr, v->addr + v->size, v->size);
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Dead.

    4245 
    4246         if (v->caller)
    4247                 seq_printf(m, " %pS", v->caller);
    4248 

regards,
dan carpenter




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux