From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Anholt Subject: Re: [PATCH 4/5] drm: v3d: Switch to use drm_gem_object reservation_object Date: Fri, 01 Feb 2019 09:12:05 -0800 Message-ID: <87tvhn4emy.fsf@anholt.net> References: <20190201005057.13648-1-robh@kernel.org> <20190201005057.13648-5-robh@kernel.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1363001165==" Return-path: In-Reply-To: <20190201005057.13648-5-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Rob Herring , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Sean Paul , Rob Clark , David Airlie , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Maarten Lankhorst , etnaviv-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Maxime Ripard , Christian Gmeiner , Daniel Vetter , Russell King , freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Lucas Stach List-Id: linux-arm-msm@vger.kernel.org --===============1363001165== Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Rob Herring writes: > Now that the base struct drm_gem_object has a reservation_object, use it > and remove the private BO one. > > Cc: Eric Anholt > Cc: Daniel Vetter > Cc: David Airlie > Cc: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org > Signed-off-by: Rob Herring > @@ -453,8 +453,6 @@ v3d_wait_bo_ioctl(struct drm_device *dev, void *data, > { > int ret; > struct drm_v3d_wait_bo *args =3D data; > - struct drm_gem_object *gem_obj; > - struct v3d_bo *bo; > ktime_t start =3D ktime_get(); > u64 delta_ns; > unsigned long timeout_jiffies =3D > @@ -463,21 +461,8 @@ v3d_wait_bo_ioctl(struct drm_device *dev, void *data, > if (args->pad !=3D 0) > return -EINVAL; >=20=20 > - gem_obj =3D drm_gem_object_lookup(file_priv, args->handle); > - if (!gem_obj) { > - DRM_DEBUG("Failed to look up GEM BO %d\n", args->handle); > - return -EINVAL; > - } > - bo =3D to_v3d_bo(gem_obj); > - > - ret =3D reservation_object_wait_timeout_rcu(bo->resv, > - true, true, > - timeout_jiffies); > - > - if (ret =3D=3D 0) > - ret =3D -ETIME; > - else if (ret > 0) > - ret =3D 0; > + ret =3D drm_gem_reservation_object_wait(file_priv, args->handle, > + true, timeout_jiffies); Looks like you lost my ret handling in the change. Honestly, I'd love to see drm_gem_reservation_object_wait return sensible values like this (0 for success, -ETIME for timeouts) instead of drivers having to stubmle over this API. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEE/JuuFDWp9/ZkuCBXtdYpNtH8nugFAlxUfeUACgkQtdYpNtH8 nuhmVA//Z/EX2ZoajCJtfstaISOrZsng3iM8clHABk3rroMFGn+QTC6z/PATvlYy z1sXmHCGiIUDH8Yrvo+uHtxGUwIQ2nCPH9VioKQUTMaXdKUytw/qKiZ20KDL1Cyl 1mRlIO/L8wjnSJmwMVOtop7zSwkLzxft3j5AU0pZPBGDTF6a2/t7pqF8frcx0N0c R7e9zuo+W07Q/Hin3zUD7toklRNS0r7xURhR5ecXAE4sCHrL+SqIprVdN3+DJAz1 hRPrhz66Zd2KtJOm5cBjdX7Bscs0Hdk58Dvu1DbxrT64qWSbmIwWFv240RzpDUlm cytShFn/N1azekE2RTqqVvj6/5+LJHjukLCCUDvw5xywpHhs06jpJfyMI26rY3QV EB+DNMToOfdX7iN3+UuUUwsaEyVJBgFGlGVmp40xSEKWtxtG5iJkovmMhELSfJ2C geLQk6GrpR1+BBk3L7p53Ce7jOdKO2S4SM49rJ0mzxMtp9HFhdwHau9ApGeaelnN JouOIMdUb+ktgu1KgZsAh1i8V1Q8v5MPRiKMQ9TorqkZRPbI4mtyW3EWslSKeWdP 7e3ZyLlACAs3fQYCBZMDawkDVGPQf4/KoEQAV4ZQSQcy7vyUKrjr0qy8loKfRjrb AR6ReeZAAl0mA/+JjfI749KHKeOCEDcCndDrBnbkR9eYdH0KTPI= =0/vu -----END PGP SIGNATURE----- --=-=-=-- --===============1363001165== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRnJlZWRyZW5v IG1haWxpbmcgbGlzdApGcmVlZHJlbm9AbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZnJlZWRyZW5vCg== --===============1363001165==--