Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp877656imm; Fri, 29 Jun 2018 07:51:14 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIaela+TQnKCumbMYmoCmZf8f0dyriiCYQrckbvMQB19f93hqodZ6U/t7zUWhnzcqzuEivE X-Received: by 2002:a17:902:6b0b:: with SMTP id o11-v6mr15474593plk.101.1530283874722; Fri, 29 Jun 2018 07:51:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530283874; cv=none; d=google.com; s=arc-20160816; b=0olPbe03IAEwxfMt3WBXW+0KtluyNtgGWlrzaGC5e9HGd5lcgNGuuYc+fv06OtsJlC p6C5TYXIZXEvtR7xdUQN64cIQUJ4IYBAOaEiBUBwexc0Vfs/vDxWLAA8HwQxDZc028S8 efM3ZNdgxWIibW/DkOWdHW93Vj7BR5IdKp6PuzMumkt952QMft0EiF3GMvrvvm0Qtl4y 7je/Hx8ZrY1lDm4XPId4WXr34Rd30ZIH+nEfIcZndkp6AZOra2n7AIqkeS+weReXFSgd n83QniAQDzJmUGI3ORWWLEdUcX8LThyVeXFRuEbrLP6jS/p41JZJSF8AKWKlVu2KW823 0GCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:references:in-reply-to:mime-version :dkim-signature:arc-authentication-results; bh=yPI8a3CQAq4viLCGJF+J9E7iiBtryHBE5KlWuhpyVQY=; b=Be/nQw9dbrumyDFTiIz2rG534wutCTNYtABHjOJ82AXtJ/Oksb6gTyV8Ge1uN7LG71 fSHRvye+nyYRAeWyBZyZQTY2MlhxFs3nrRWJmqyWR31XLUwyMHjNhUWDvEh5WvWd9j9L btxhgwBZ8P5K2Siia4WkBpE5YENRZscbk1UudV7dEYN78Y47w6OnNuU300W2gItHzOHX azM6Y5kjfNSKBCaWJpnR33mMi3HtmpDJiSA+0CRzI/kAKqSzY+OFlTBkewAqtRr1Rgeh 6ZLwz/enBEit8yWAmZwhJ2ouj44C/47jjQtBb2H2ksj0NkmX41DTHrM6dtMx/7IuAC92 tD5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=e9onU0GM; 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 y27-v6si9800439pfa.181.2018.06.29.07.50.59; Fri, 29 Jun 2018 07:51:14 -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=e9onU0GM; 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 S936304AbeF2OuS (ORCPT + 99 others); Fri, 29 Jun 2018 10:50:18 -0400 Received: from mail-wm0-f67.google.com ([74.125.82.67]:53430 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932254AbeF2OuQ (ORCPT ); Fri, 29 Jun 2018 10:50:16 -0400 Received: by mail-wm0-f67.google.com with SMTP id b188-v6so2497717wme.3 for ; Fri, 29 Jun 2018 07:50:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=yPI8a3CQAq4viLCGJF+J9E7iiBtryHBE5KlWuhpyVQY=; b=e9onU0GMf4R9Lfp9r6H6cK5RtppQnsW6IA0rvt4vTIVMJxE84C1F9dVwrlidR1Afx6 sPKe+JZuI987M2ArpYQgRsyyvxOwGCmHAK7QRc1uG+o8SQvhU+I+3wE5KjFn/2HyQey+ FFAs5XFMSILDdNXtzGlxz7c74WpP30AdDR3/TaovrqbSyvGo2ikkUGtE0c/h+9iCUPgS A97T1gBeRa+hSnymrFRP9g4dwoeNldivBnIsZa+N+KOUq3DvepMvNXKjbbXwY49YPh/9 3zVWb5u7UlUWNx5inFgK5zWYWsUIhHZ30bVJCooyMlAUIsmCsAqW6fm9FHv1guM1GjBi bSzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=yPI8a3CQAq4viLCGJF+J9E7iiBtryHBE5KlWuhpyVQY=; b=aVuRU453WPj9aNdxKtkucOfuP3JyKmxXPIMYt8C/B4b69dYVPlnDISzKRfB3E9W+9c Nd4HBuqFf/Ux8Z/kwewpxKgyKS6QzwW64uxWyr0OZnhJA1c0u0doNfGDHQbOi4wBdI0N kkGJUvZ2whyIsS/NphYad2Wng54fu28VHIlj7dZKnFqDGOda7TfWZ8Pgqprc1UWorCcT 7y4GntMmnS1l00HTjj+3Ec5B5FmIP/csb7fLnkTVxjlFDXOZEw2ZT7WrEyGvf1f/xt+v OJr4rprKoak5LzhfYJ653xl+PYsA4vMb/JMlZGkgPw4zOEj38jc/mh5jvb/LgrXuNMuO exwg== X-Gm-Message-State: APt69E1Q+Dvilg+NIDpsHknXOMIGNxe3h29OR8BgKqPBBh5nhJZN1/XL 0A+2v2Q9BQEyIu/I4eWCON7Mm+C/F1tdQ5T7CAc= X-Received: by 2002:a1c:7a06:: with SMTP id v6-v6mr2046280wmc.90.1530283815650; Fri, 29 Jun 2018 07:50:15 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:adf:8e6b:0:0:0:0:0 with HTTP; Fri, 29 Jun 2018 07:50:15 -0700 (PDT) In-Reply-To: <20180629142710.2069-1-michel@daenzer.net> References: <20180629142710.2069-1-michel@daenzer.net> From: Alex Deucher Date: Fri, 29 Jun 2018 10:50:15 -0400 Message-ID: Subject: Re: [PATCH] drm: Use kvzalloc for allocating blob property memory To: =?UTF-8?Q?Michel_D=C3=A4nzer?= Cc: Gustavo Padovan , Maarten Lankhorst , Sean Paul , David Airlie , LKML , Maling list - DRI developers Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jun 29, 2018 at 10:27 AM, Michel D=C3=A4nzer w= rote: > From: Michel D=C3=A4nzer > > The property size may be controlled by userspace, can be large (I've > seen failure with order 4, i.e. 16 pages / 64 KB) and doesn't need to be > physically contiguous. > > Signed-off-by: Michel D=C3=A4nzer Reviewed-by: Alex Deucher > --- > drivers/gpu/drm/drm_property.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/drm_property.c b/drivers/gpu/drm/drm_propert= y.c > index 1f8031e30f53..cdb10f885a4f 100644 > --- a/drivers/gpu/drm/drm_property.c > +++ b/drivers/gpu/drm/drm_property.c > @@ -532,7 +532,7 @@ static void drm_property_free_blob(struct kref *kref) > > drm_mode_object_unregister(blob->dev, &blob->base); > > - kfree(blob); > + kvfree(blob); > } > > /** > @@ -559,7 +559,7 @@ drm_property_create_blob(struct drm_device *dev, size= _t length, > if (!length || length > ULONG_MAX - sizeof(struct drm_property_bl= ob)) > return ERR_PTR(-EINVAL); > > - blob =3D kzalloc(sizeof(struct drm_property_blob)+length, GFP_KER= NEL); > + blob =3D kvzalloc(sizeof(struct drm_property_blob)+length, GFP_KE= RNEL); > if (!blob) > return ERR_PTR(-ENOMEM); > > @@ -576,7 +576,7 @@ drm_property_create_blob(struct drm_device *dev, size= _t length, > ret =3D __drm_mode_object_add(dev, &blob->base, DRM_MODE_OBJECT_B= LOB, > true, drm_property_free_blob); > if (ret) { > - kfree(blob); > + kvfree(blob); > return ERR_PTR(-EINVAL); > } > > -- > 2.18.0 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel