From: Wanpeng Li <liwanp@linux.vnet.ibm.com>
To: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: akpm@linux-foundation.org, iamjoonsoo.kim@lge.com,
rientjes@google.com, zhangyanfei@cn.fujitsu.com,
linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [RESEND PATCH v5 4/4] mm/vmalloc: fix show vmap_area information race with vmap_area tear down
Date: Tue, 17 Sep 2013 07:25:06 +0800 [thread overview]
Message-ID: <20130916232506.GB3241@hacker.(null)> (raw)
In-Reply-To: <523777D8.2000304@jp.fujitsu.com>
On Mon, Sep 16, 2013 at 05:27:52PM -0400, KOSAKI Motohiro wrote:
>On 9/14/2013 7:45 PM, Wanpeng Li wrote:
>> Changelog:
>> *v4 -> v5: return directly for !VM_VM_AREA case and remove (VM_LAZY_FREE | VM_LAZY_FREEING) check
>>
>> There is a race window between vmap_area tear down and show vmap_area information.
>>
>> A B
>>
>> remove_vm_area
>> spin_lock(&vmap_area_lock);
>> va->vm = NULL;
>> va->flags &= ~VM_VM_AREA;
>> spin_unlock(&vmap_area_lock);
>> spin_lock(&vmap_area_lock);
>> if (va->flags & (VM_LAZY_FREE | VM_LAZY_FREEZING))
>> return 0;
>> if (!(va->flags & VM_VM_AREA)) {
>> seq_printf(m, "0x%pK-0x%pK %7ld vm_map_ram\n",
>> (void *)va->va_start, (void *)va->va_end,
>> va->va_end - va->va_start);
>> return 0;
>> }
>> free_unmap_vmap_area(va);
>> flush_cache_vunmap
>> free_unmap_vmap_area_noflush
>> unmap_vmap_area
>> free_vmap_area_noflush
>> va->flags |= VM_LAZY_FREE
>>
>> The assumption !VM_VM_AREA represents vm_map_ram allocation is introduced by
>> commit: d4033afd(mm, vmalloc: iterate vmap_area_list, instead of vmlist, in
>> vmallocinfo()). However, !VM_VM_AREA also represents vmap_area is being tear
>> down in race window mentioned above. This patch fix it by don't dump any
>> information for !VM_VM_AREA case and also remove (VM_LAZY_FREE | VM_LAZY_FREEING)
>> check since they are not possible for !VM_VM_AREA case.
>>
>> Suggested-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>
>Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
>
Thanks for your review. ;-)
Regards,
Wanpeng Li
>--
>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>
--
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>
next prev parent reply other threads:[~2013-09-16 23:25 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
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 [this message]
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='20130916232506.GB3241@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.