Received: by 10.213.65.68 with SMTP id h4csp933009imn; Sun, 18 Mar 2018 07:55:13 -0700 (PDT) X-Google-Smtp-Source: AG47ELt6zLqq0ze1AL9DWBfSLNo7pblzrkIPCTcIksx0WkWEDMJXF1AhGjooKQMTRQsGgfMNsgbe X-Received: by 2002:a17:902:50ec:: with SMTP id c41-v6mr8920798plj.208.1521384913862; Sun, 18 Mar 2018 07:55:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521384913; cv=none; d=google.com; s=arc-20160816; b=LOOFAM0OM5XHN/av8BDGcWJziuKrYXS6GN9Gv3m+3ifRukq6fSPSslbn/TaD37PIOT 72FYKJPGp0nPxv0WUoKlnXBUneGvAIc/xV8ZvunIc9lnnfSXgAdzH9TJLRNHVO2gZ9nz 4LFHD/jcmjKIRAktZnocWg7ePuOtLbMw4ay2z9pEOjDwDzLiLa8k5+zQYjzEx7VchCaj SbQfzbhW6/VrIFgkkB7tSvrfxZ2pmG/e5I9AuA1wy1HHgxsku5dAL+QZVamyMuqQWqU4 G9gwD2qY8bG1q2EnxBE1mjSkV0WmwNAoYUvutBzGeZis3OzKLgYhnUjzlHJrcT/TQObc 1Y9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=qMnDmrKt8GPmpEL7YbtbSfE1TNUIAbThRzd0omnfXC0=; b=dhoBAm6Ae4OQWHmULrHPB2J+rTVIYwDGwJ4Wo2Ke1cW/PXgcTo1tvjgtHjKU07jc/0 aUV0kmJb1rmviR0rNJn6JAUBV6PB3midp/wfE4NuBuPCBJuI9XFZ4OC2YUXiCGG2ZbMm 5L5MUvImidIgjvd6SCdsR0wiNbNBq+XwaEcrb/zGQiKjZ/Ks0nVXIO6n1I/ZOiz+2l9Q +dUVZ1V/Rfz8q9NfuxvlTtXPgDWcJjEE+MDJ+PMMiZeCZx2j1VGdNx4fo52/sfmKpLeL LFCBL8zoYHs4+6cRmhHgmok94laKWfN2A3yKJdYELdSMluTthhTOm3ghhuFlMR8or/q0 lq2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=irpfLv0e; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y10si7963742pfi.354.2018.03.18.07.54.59; Sun, 18 Mar 2018 07:55:13 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=irpfLv0e; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754586AbeCROxi (ORCPT + 99 others); Sun, 18 Mar 2018 10:53:38 -0400 Received: from mail-pf0-f195.google.com ([209.85.192.195]:37479 "EHLO mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754301AbeCROxe (ORCPT ); Sun, 18 Mar 2018 10:53:34 -0400 Received: by mail-pf0-f195.google.com with SMTP id h11so6023646pfn.4; Sun, 18 Mar 2018 07:53:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=qMnDmrKt8GPmpEL7YbtbSfE1TNUIAbThRzd0omnfXC0=; b=irpfLv0e22VQ19qXttvks1t8QpPStKZ3efZWw7vPZF3CTdrbip9i/1VKdukoW810te sV/tNCHXJ/pab1HVe2fN5PoJgRP1M2Az+qaUzHgcdqVS8BGEeJQSco/ghL/jAaUkkPYG eJ5m6Liogyq6itwVoASpSDEAvT3TD1JtgdRWa8YbAwy6w3Cb6MAOfWQhQElrrwG3NXWv 6dzOpdwVjhBtXZJCCocn32xhVt7fp+4+LqiuigboTGGdr1incxF1DNdGbLcTgSy3Z28A /yjEtsCC1E7cK9mC6QF3h8yBQoNgy+3/3zSJl373S26KU/n7JODAowJ2gKdmgrtA6EJx tc3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=qMnDmrKt8GPmpEL7YbtbSfE1TNUIAbThRzd0omnfXC0=; b=fUP3C/RlgFKQWw1SMoWa1+8yKjRXPcTzVA18wnHeo53U3YkEFQDWncquez7CTdVMi1 qOXSu8LIsAhzfzwk00IOn0InP+WkWJCoad87ZlhGr9pkRysR0sCVgSpn9k/zy0TzoyPL UG2EeEf+6mnqNt0ME1R+VJnsET9MzuBS9OFpGsBY3VrqNEPNg6WCmegf4GdNvO3gPdE7 UdIfMWb+wkXbu3eClFASlgpzUL1wnd9vIGPc4eTLR6sVxypypfiM2vEOfgHSwm2d2Igt J/X6zN87egM8aHE8DQD6vX86MfBetGJefyEw1kbxZLGdLzVdnvYm0LGlU7imf7x/Zlqy 0GIA== X-Gm-Message-State: AElRT7H0ITFXdUNwAzWkQI2+OO0vn3GL4TNOTJN9xJMX8jbudaM5XRYY zdGG1nniH1QTnuWw7E1fSck= X-Received: by 10.99.185.77 with SMTP id v13mr6846224pgo.112.1521384814017; Sun, 18 Mar 2018 07:53:34 -0700 (PDT) Received: from oslab.tsinghua.edu.cn ([2402:f000:1:4413:2c7e:2fdc:f812:6df0]) by smtp.gmail.com with ESMTPSA id c11sm28860290pfe.109.2018.03.18.07.53.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 18 Mar 2018 07:53:33 -0700 (PDT) From: Jia-Ju Bai To: kys@microsoft.com, haiyangz@microsoft.com, sthemmin@microsoft.com, bhelgaas@google.com Cc: devel@linuxdriverproject.org, linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Jia-Ju Bai Subject: [PATCH 2/2] pci: host: pci-hyperv: Replace GFP_ATOMIC with GFP_KERNEL in new_pcichild_device Date: Sun, 18 Mar 2018 22:53:28 +0800 Message-Id: <1521384808-23627-1-git-send-email-baijiaju1990@gmail.com> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org new_pcichild_device() is not called in atomic context. The call chain ending up at new_pcichild_device() is: [1] new_pcichild_device() <- pci_devices_present_work() pci_devices_present_work() is only set in INIT_WORK(). Despite never getting called from atomic context, new_pcichild_device() calls kzalloc with GFP_ATOMIC, which waits busily for allocation. GFP_ATOMIC is not necessary and can be replaced with GFP_KERNEL to avoid busy waiting. This is found by a static analysis tool named DCNS written by myself. Signed-off-by: Jia-Ju Bai --- drivers/pci/host/pci-hyperv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/host/pci-hyperv.c b/drivers/pci/host/pci-hyperv.c index 0fe3ea1..289e31d 100644 --- a/drivers/pci/host/pci-hyperv.c +++ b/drivers/pci/host/pci-hyperv.c @@ -1500,7 +1500,7 @@ static struct hv_pci_dev *new_pcichild_device(struct hv_pcibus_device *hbus, unsigned long flags; int ret; - hpdev = kzalloc(sizeof(*hpdev), GFP_ATOMIC); + hpdev = kzalloc(sizeof(*hpdev), GFP_KERNEL); if (!hpdev) return NULL; -- 1.9.1