Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp409211yba; Mon, 1 Apr 2019 08:44:44 -0700 (PDT) X-Google-Smtp-Source: APXvYqz2+PnRNNbcQJVMyF/bT3UFnxEu42BgqF1CbnQS3h7rgaSTRyWaYysaS2rTurL2+3QrwOOM X-Received: by 2002:a62:59cb:: with SMTP id k72mr64845203pfj.111.1554133484362; Mon, 01 Apr 2019 08:44:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1554133484; cv=none; d=google.com; s=arc-20160816; b=WHvugvI9wzkl1d0+S8+lzEjFkOdNI+Xb7ueVzV6OyOZ9UbSIL+FxskG49vgUtRc3Qo DO//GcPo+fPxct5JgVr2Zj3p0cIt7BO/bbHDmTlZGLcWWqalTBXIOq/VBj7i4rYdfyvb VM+6hytBpujiZ54UkV3AZ9kvglEDoU9qCEVqiF7W8+l2HozWRGBG5UVAFKThuEr9xJT1 CtP91QqHcQ2e5JemoQEQcu0drWWiJrbqdOucbhadr73KLaI+5ACz1tFNBPuJ8LNI0wtU +nVOAp5VT2Y9YucWy1uNMEQu2xt0G0I9NJ4pDV0t2JN5JNA/j7HUuYgmk05s5pnTawjb lsag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:user-agent :references:in-reply-to:subject:cc:to:from; bh=s4CbmIxjQidsZSfgh5R/hjqDHBxrZHbYOx6A+2C7K14=; b=Oc886i2IoZZjE4LZKXacqhN2xOQKgFzQgNfWhcxquW/5l2T8YAIF5GA/+E3nfjPmwP h6QAp4So0cUifDlXeqg75ghnqdBZ/oyOiGfiTM6SoKz7MV7+AIqH2UlFcyVPZlnM40a1 2brN3CJtIfyrokitY+QnmHr+r7sp5rrPRuTEvtpD4YnRy1ge8HIGrLPfKmaFBfcn6GvH LC2kwOyB6AzwblRIXwBPx6bhm7Ma6SJLPGUJI60SsVVb9yWRqqLYBq+F8y2thexGe5cY wIkJWKGFbDIzJRUCKZx5Z8ocbBG8Eai57Vjl9uxh9pkfKrESOpDL5X61qgwK+reZc/lD fuaQ== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z10si8899435pgu.172.2019.04.01.08.44.28; Mon, 01 Apr 2019 08:44:44 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728557AbfDAPnx (ORCPT + 99 others); Mon, 1 Apr 2019 11:43:53 -0400 Received: from anholt.net ([50.246.234.109]:44994 "EHLO anholt.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726887AbfDAPnv (ORCPT ); Mon, 1 Apr 2019 11:43:51 -0400 Received: from localhost (localhost [127.0.0.1]) by anholt.net (Postfix) with ESMTP id 3F85B10A280A; Mon, 1 Apr 2019 08:43:50 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at anholt.net Received: from anholt.net ([127.0.0.1]) by localhost (kingsolver.anholt.net [127.0.0.1]) (amavisd-new, port 10024) with LMTP id o7B0OpqILtge; Mon, 1 Apr 2019 08:43:49 -0700 (PDT) Received: from eliezer.anholt.net (localhost [127.0.0.1]) by anholt.net (Postfix) with ESMTP id F361310A0220; Mon, 1 Apr 2019 08:43:48 -0700 (PDT) Received: by eliezer.anholt.net (Postfix, from userid 1000) id 76A912FE2F72; Mon, 1 Apr 2019 08:43:48 -0700 (PDT) From: Eric Anholt To: Chris Wilson , Daniel Vetter , Rob Herring Cc: Neil Armstrong , Maxime Ripard , Robin Murphy , Will Deacon , Linux Kernel Mailing List , dri-devel , David Airlie , "list\@263.net\:IOMMU DRIVERS \\, Joerg Roedel \\, " , Linux ARM , Sean Paul , Alyssa Rosenzweig Subject: Re: [PATCH v2 2/3] drm: Add a drm_gem_objects_lookup helper In-Reply-To: <155412649586.24691.809508732198367112@skylake-alporthouse-com> References: <20190401074730.12241-1-robh@kernel.org> <20190401074730.12241-3-robh@kernel.org> <155412649586.24691.809508732198367112@skylake-alporthouse-com> User-Agent: Notmuch/0.22.2+1~gb0bcfaa (http://notmuchmail.org) Emacs/25.2.2 (x86_64-pc-linux-gnu) Date: Mon, 01 Apr 2019 08:43:47 -0700 Message-ID: <8736n120jw.fsf@anholt.net> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --=-=-= Content-Type: text/plain Chris Wilson writes: > Quoting Daniel Vetter (2019-04-01 14:06:48) >> On Mon, Apr 1, 2019 at 9:47 AM Rob Herring wrote: >> > +{ >> > + int i, ret = 0; >> > + struct drm_gem_object *obj; >> > + >> > + spin_lock(&filp->table_lock); >> > + >> > + for (i = 0; i < count; i++) { >> > + /* Check if we currently have a reference on the object */ >> > + obj = idr_find(&filp->object_idr, handle[i]); >> > + if (!obj) { >> > + ret = -ENOENT; > > Unwind previous drm_gem_object_get(), the caller has no idea how many > were processed before the error. I had the same thought, but the pattern we have is that you're loading into a refcounted struct that will free the BOs when you're done, anyway. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEE/JuuFDWp9/ZkuCBXtdYpNtH8nugFAlyiMbMACgkQtdYpNtH8 nujFuRAAtd7ggD7Y+nzWpAGHGpCEBgf6La2B4uHi5SYwMJ1ayMSjxnkx31DyQ4el ehc1zitZ8lNeJs3RkeIQTlBcLvVmCvkiKRftEIHihA+hbPl9Y8+sadcEbSln2kHT vjGZyEQ9anQjQIOSaiSmUMVO2MzbbjS9VNsRP87jHDiqu40WSA9R8lP0yFnbjTkJ 4Fc4wnoduR+Z+o5DxhknFRhBfivIswXI25LnB+gG/cCJ4i8N6QjoY/qbQnnQHcwK hbDTWkqeN2lyzZkTW/fvvksDRY+ODAj1J5kyQohhe9O3qtTRxawtHcRWqjPRDXfY LC4bKRjRk9184JJQxnwW8KqsuYsqciHDPjWY8U6ezoTrHQ2QnRguC4IiUSICLrhT Ova551wK9xbKIfhVd1M1NWx5QgOn7KWoy7Oiv+DMHGGN7+ohHzo5kABb3OLQA36o DRMTk0Ot3KsTFCskbHR0mkGTCEFjyC96R9VmkSToi1QCW8enDwe4jdskXcX5An8h 59dZvFgCn641x08E6mG1j2PkyuzezV7puE5CbJWlJWlaVRXP+QGngydTS29AaJip GOT2fIabzQ8fQ3eCmaD9Wtpx7xY8p6HAIwmk95fk/XjtTLs4iS9ZGc8+vM+ISdWv Qaw7BpiSXNPLGi3/C1rGpLTCaDVcEWafWJkEDf9puOnci7aSwjM= =jMdG -----END PGP SIGNATURE----- --=-=-=--