From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751602AbdJIEBc (ORCPT ); Mon, 9 Oct 2017 00:01:32 -0400 Received: from m12-13.163.com ([220.181.12.13]:39140 "EHLO m12-13.163.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750795AbdJIEBb (ORCPT ); Mon, 9 Oct 2017 00:01:31 -0400 From: Jia-Ju Bai Subject: [BUG] mm/vmalloc: ___might_sleep is called under a spinlock in __purge_vmap_area_lazy To: akpm@linux-foundation.org, mhocko@suse.com, mingo@kernel.org, catalin.marinas@arm.com, labbott@redhat.com, thgarnie@google.com, kirill.shutemov@linux.intel.com, aryabinin@virtuozzo.com, ard.biesheuvel@linaro.org, zijun_hu@htc.com Cc: linux-mm@kvack.org, Linux Kernel Mailing List Message-ID: <70f9850a-b24c-8595-8a22-9b47e96d6338@163.com> Date: Mon, 9 Oct 2017 12:00:33 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-CM-TRANSID: DcCowACXqUpk9NpZ90y7MQ--.36496S2 X-Coremail-Antispam: 1Uf129KBjDUn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7v73 VFW2AGmfu7bjvjm3AaLaJ3UbIYCTnIWIevJa73UjIFyTuYvjxUvU73DUUUU X-Originating-IP: [166.111.70.12] X-CM-SenderInfo: xedlyx5dmximizq6il2tof0z/1tbiYwVselaDvJvxcgAAsB Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The ___might_sleep is called under a spinlock, and the function call graph is: __purge_vmap_area_lazy (acquire the spinlock) cond_resched_lock ___might_sleep In this situation, ___might_sleep may prints error log message because a spinlock is held. A possible fix is to remove ___might_sleep in cond_resched_lock. This bug is found by my static analysis tool and my code review. Thanks, Jia-Ju Bai