Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp3216074pxk; Mon, 21 Sep 2020 08:05:31 -0700 (PDT) X-Google-Smtp-Source: ABdhPJykYvo63/LFLJ0wdwDt/NLWmIgmoVWMO+o2v50VJ/SstSamTjREyiN4vI3oAVim3ztWLoCB X-Received: by 2002:a05:6402:14d4:: with SMTP id f20mr42650edx.291.1600700731398; Mon, 21 Sep 2020 08:05:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1600700731; cv=none; d=google.com; s=arc-20160816; b=cjwg36iY58OnYOzV1cTP28PIZTFUs5PBjjza91cAX71IXSD9IbwrGF0DZ2RWIPAWDa rEcad3ZX34hoc54jp3SJMfpJ9qSXb/s3vnYYs9E8pqZqUaqze8RAESzyEVy11q90+crg FH2rjr+4AWa26J/2TBRrTVyagy7vCB1CFYDgOs9Sz+Ju6Vkzs05eRD7c6WdWbrnKJard 2Nr8giWtMHnDye3/QWHs/zLNZlyOplHcgLHZOsmcCYpjEqwt0JB3rxNqkUZI0QWRvcXk ykd2Jj1O1gzsS5tyS14+1NNoiqknGXXNS4vo1H3WJBCwAkDjo+ymFwMblatsfRmfxIPw h6bQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=Os+zhtzezJZqf6kWHN5Xxg0y2flTGHVFSzWH1sVGODw=; b=fqlC4lR8K8pLVgBJAtAtygY33rCtiFQSSWt09FpSkkZkGvTf4CfFgyauMqAA1fZimF WfdCpxnPn00LSlMrshtD4hEdIV3f4eJd5+e4+9OcRfcvfeSweT9+tbAwTbhRZTWH2e2t RKJXsI3Xh549WTSBNEexHO/FsZyRXUbcwJ2D5+Nh20hmHH+D3FRR3i9+bVsj5az6VN3p I2f+yO0Qmpb7e439kgy8sQ9q5ZkX5vaoGP0EZo7YL5pk2pAXc6yV8ybs5cv6pZF/Afz6 BAEHZlvrob4YLCPvJj8ZMqCSQnf2HHkZR1grYFTi2QnPkcNKcMb7378P9WffrA5kcHsj MdiQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d2si3500524ejm.716.2020.09.21.08.05.05; Mon, 21 Sep 2020 08:05:31 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727345AbgIUPDo (ORCPT + 99 others); Mon, 21 Sep 2020 11:03:44 -0400 Received: from ivanoab7.miniserver.com ([37.128.132.42]:53376 "EHLO www.kot-begemot.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726419AbgIUPDn (ORCPT ); Mon, 21 Sep 2020 11:03:43 -0400 X-Greylist: delayed 1617 seconds by postgrey-1.27 at vger.kernel.org; Mon, 21 Sep 2020 11:03:43 EDT Received: from tun252.jain.kot-begemot.co.uk ([192.168.18.6] helo=jain.kot-begemot.co.uk) by www.kot-begemot.co.uk with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kKMvp-0001Ev-QO; Mon, 21 Sep 2020 14:36:43 +0000 Received: from jain.kot-begemot.co.uk ([192.168.3.3]) by jain.kot-begemot.co.uk with esmtp (Exim 4.92) (envelope-from ) id 1kKMvm-00006j-J2; Mon, 21 Sep 2020 15:36:41 +0100 Subject: Re: [PATCH] um: vector: Use GFP_ATOMIC under spin lock To: Tiezhu Yang , Jeff Dike , Richard Weinberger Cc: linux-um@lists.infradead.org, linux-kernel@vger.kernel.org, Xuefeng Li References: <1592544007-2751-1-git-send-email-yangtiezhu@loongson.cn> From: Anton Ivanov Message-ID: <04be37fc-c8cb-f506-20a5-97467b638069@cambridgegreys.com> Date: Mon, 21 Sep 2020 15:36:38 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: <1592544007-2751-1-git-send-email-yangtiezhu@loongson.cn> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Score: -1.0 X-Spam-Score: -1.0 X-Clacks-Overhead: GNU Terry Pratchett Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 19/06/2020 06:20, Tiezhu Yang wrote: > Use GFP_ATOMIC instead of GFP_KERNEL under spin lock to fix possible > sleep-in-atomic-context bugs. > > Fixes: 9807019a62dc ("um: Loadable BPF "Firmware" for vector drivers") > Signed-off-by: Tiezhu Yang > --- > arch/um/drivers/vector_kern.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/um/drivers/vector_kern.c b/arch/um/drivers/vector_kern.c > index 8735c46..555203e 100644 > --- a/arch/um/drivers/vector_kern.c > +++ b/arch/um/drivers/vector_kern.c > @@ -1403,7 +1403,7 @@ static int vector_net_load_bpf_flash(struct net_device *dev, > kfree(vp->bpf->filter); > vp->bpf->filter = NULL; > } else { > - vp->bpf = kmalloc(sizeof(struct sock_fprog), GFP_KERNEL); > + vp->bpf = kmalloc(sizeof(struct sock_fprog), GFP_ATOMIC); > if (vp->bpf == NULL) { > netdev_err(dev, "failed to allocate memory for firmware\n"); > goto flash_fail; > @@ -1415,7 +1415,7 @@ static int vector_net_load_bpf_flash(struct net_device *dev, > if (request_firmware(&fw, efl->data, &vdevice->pdev.dev)) > goto flash_fail; > > - vp->bpf->filter = kmemdup(fw->data, fw->size, GFP_KERNEL); > + vp->bpf->filter = kmemdup(fw->data, fw->size, GFP_ATOMIC); > if (!vp->bpf->filter) > goto free_buffer; > > Acked-By: Anton Ivanov -- Anton R. Ivanov Cambridgegreys Limited. Registered in England. Company Number 10273661 https://www.cambridgegreys.com/