All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wanpeng Li <liwanp@linux.vnet.ibm.com>
To: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	"iamjoonsoo.kim" <iamjoonsoo.kim@lge.com>,
	David Rientjes <rientjes@google.com>,
	zhangyanfei@cn.fujitsu.com,
	"linux-mm@kvack.org" <linux-mm@kvack.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [RESEND PATCH v5 3/4] mm/vmalloc: revert "mm/vmalloc.c: check VM_UNINITIALIZED flag in s_show instead of show_numa_info"
Date: Tue, 17 Sep 2013 14:06:37 +0800	[thread overview]
Message-ID: <20130917060637.GA19793@hacker.(null)> (raw)
In-Reply-To: <CAHGf_=oqB-WfYansyoGb3E+Rs9z4aK2N7+m8jTyobgRUoD=LpA@mail.gmail.com>

Hi KOSAKI,
On Tue, Sep 17, 2013 at 01:44:04AM -0400, KOSAKI Motohiro wrote:
>On Mon, Sep 16, 2013 at 8:18 PM, Wanpeng Li <liwanp@linux.vnet.ibm.com> wrote:
>> Hi KOSAKI,
>> On Mon, Sep 16, 2013 at 05:23:32PM -0400, KOSAKI Motohiro wrote:
>>>On 9/14/2013 7:45 PM, Wanpeng Li wrote:
>>>> Changelog:
>>>>  *v2 -> v3: revert commit d157a558 directly
>>>>
>>>> The VM_UNINITIALIZED/VM_UNLIST flag introduced by commit f5252e00(mm: avoid
>>>> null pointer access in vm_struct via /proc/vmallocinfo) is used to avoid
>>>> accessing the pages field with unallocated page when show_numa_info() is
>>>> called. This patch move the check just before show_numa_info in order that
>>>> some messages still can be dumped via /proc/vmallocinfo. This patch revert
>>>> commit d157a558 (mm/vmalloc.c: check VM_UNINITIALIZED flag in s_show instead
>>>> of show_numa_info);
>>>
>>>Both d157a558 and your patch don't explain why your one is better. Yes, some
>>>messages _can_ be dumped. But why should we do so?
>>
>> More messages can be dumped and original commit f5252e00(mm: avoid null pointer
>> access in vm_struct via /proc/vmallocinfo) do that.
>>
>>>And No. __get_vm_area_node() doesn't use __GFP_ZERO for allocating vm_area_struct.
>>>dumped partial dump is not only partial, but also may be garbage.
>>
>> vm_struct is allocated by kzalloc_node.
>
>Oops, you are right. Then, your code _intentionally_ show amazing
>zero. Heh, nice.
>More message is pointless. zero is just zero. It doesn't have any information.
>

After PATCH 4/4 applied, there is a check: 

if (!(va->flags & VM_VM_AREA))
	return 0;

- show vm_struct information between insert_vmap_area and setup_vmalloc_vm.

  Nothing will be dumped since the check mentioned above. 

- show vm_struct information between setup_vmalloc_vm and vm_struct
  fully populated.

  The fields initialized in setup_vmalloc_vm will be dumped correctly and 
  other uninitialized fields of vm_struct won't be dumped instead of dump 
  zero as you mentioned since there is check like v->caller, v->nr_pages 
  in s_show.

Regards,
Wanpeng Li 

>
>>>I wonder why we need to call setup_vmalloc_vm() _after_ insert_vmap_area.
>>
>> I think it's another topic.
>
>Why?
>
>
>> Fill vm_struct and set VM_VM_AREA flag. If I misunderstand your
>> question?
>
>VM_VM_AREA doesn't help. we have race between insert_vmap_area and
>setup_vmalloc_vm.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2013-09-17  6:06 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-14 23:45 [RESEND PATCH v5 1/4] mm/vmalloc: don't set area->caller twice Wanpeng Li
2013-09-14 23:45 ` Wanpeng Li
2013-09-14 23:45 ` [RESEND PATCH v5 2/4] mm/vmalloc: revert "mm/vmalloc.c: emit the failure message before return" Wanpeng Li
2013-09-14 23:45   ` Wanpeng Li
2013-09-16 20:15   ` KOSAKI Motohiro
2013-09-16 20:15     ` KOSAKI Motohiro
2013-09-16 23:41     ` Wanpeng Li
2013-09-16 23:41     ` Wanpeng Li
     [not found]     ` <5237971b.4c19310a.2b36.7d41SMTPIN_ADDED_BROKEN@mx.google.com>
2013-09-17  5:39       ` KOSAKI Motohiro
2013-09-17  5:39         ` KOSAKI Motohiro
2013-09-17  6:28         ` Wanpeng Li
2013-09-17  6:28         ` Wanpeng Li
2013-09-14 23:45 ` [RESEND PATCH v5 3/4] mm/vmalloc: revert "mm/vmalloc.c: check VM_UNINITIALIZED flag in s_show instead of show_numa_info" Wanpeng Li
2013-09-14 23:45   ` Wanpeng Li
2013-09-16 21:23   ` KOSAKI Motohiro
2013-09-16 21:23     ` KOSAKI Motohiro
2013-09-17  0:18     ` Wanpeng Li
2013-09-17  0:18     ` Wanpeng Li
     [not found]     ` <52379fe8.c250e00a.63fd.ffff8ccdSMTPIN_ADDED_BROKEN@mx.google.com>
2013-09-17  5:44       ` KOSAKI Motohiro
2013-09-17  5:44         ` KOSAKI Motohiro
2013-09-17  6:06         ` Wanpeng Li [this message]
2013-09-17  6:06         ` Wanpeng Li
2013-09-14 23:45 ` [RESEND PATCH v5 4/4] mm/vmalloc: fix show vmap_area information race with vmap_area tear down Wanpeng Li
2013-09-14 23:45   ` Wanpeng Li
2013-09-16 21:27   ` KOSAKI Motohiro
2013-09-16 21:27     ` KOSAKI Motohiro
2013-09-16 23:25     ` Wanpeng Li
2013-09-16 23:25     ` Wanpeng Li
2013-09-16 19:52 ` [RESEND PATCH v5 1/4] mm/vmalloc: don't set area->caller twice KOSAKI Motohiro
2013-09-16 19:52   ` KOSAKI Motohiro
2013-09-16 23:29   ` Wanpeng Li
2013-09-16 23:29   ` Wanpeng Li
     [not found]   ` <5237946f.4815440a.094e.ffff8c29SMTPIN_ADDED_BROKEN@mx.google.com>
2013-09-23 23:18     ` Andrew Morton
2013-09-23 23:18       ` Andrew Morton
2013-09-24  0:01       ` Wanpeng Li

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='20130917060637.GA19793@hacker.(null)' \
    --to=liwanp@linux.vnet.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=iamjoonsoo.kim@lge.com \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=rientjes@google.com \
    --cc=zhangyanfei@cn.fujitsu.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.