From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Anholt Subject: Re: [PATCH v5 4/5] drm: Add library for shmem backed GEM objects Date: Tue, 27 Nov 2018 12:38:44 -0800 Message-ID: <87lg5es1bf.fsf@anholt.net> References: <20181017130454.44292-1-noralf@tronnes.org> <20181017130454.44292-5-noralf@tronnes.org> <87k1kzgxve.fsf@anholt.net> <20181127085850.GX4266@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1273503872==" Return-path: In-Reply-To: <20181127085850.GX4266@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: intel-gfx@lists.freedesktop.org, Noralf =?utf-8?Q?Tr=C3=B8nnes?= , sam@ravnborg.org, david@lechnology.com, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1273503872== Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Daniel Vetter writes: > On Mon, Nov 26, 2018 at 04:36:21PM -0800, Eric Anholt wrote: >> Noralf Tr=C3=B8nnes writes: >> > +static void drm_gem_shmem_vm_close(struct vm_area_struct *vma) >> > +{ >> > + struct drm_gem_object *obj =3D vma->vm_private_data; >> > + struct drm_gem_shmem_object *shmem =3D to_drm_gem_shmem_obj(obj); >> > + >> > + drm_gem_shmem_put_pages(shmem); >> > + drm_gem_vm_close(vma); >> > +} >> > + >> > +const struct vm_operations_struct drm_gem_shmem_vm_ops =3D { >> > + .fault =3D drm_gem_shmem_fault, >> > + .open =3D drm_gem_vm_open, >> > + .close =3D drm_gem_shmem_vm_close, >> > +}; >> > +EXPORT_SYMBOL_GPL(drm_gem_shmem_vm_ops); >>=20 >> I just saw a warning from drm_gem_shmem_put_pages() for >> !shmem->pages_use_count -- I think drm_gem_vm_open() needs to >> drm_gem_shmem_get_pages(). > > Yeah we need a drm_gem_shmem_vm_open here. Adding one of those fixed my refcounting issues, so I've sent out a v6 with it. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEE/JuuFDWp9/ZkuCBXtdYpNtH8nugFAlv9q1QACgkQtdYpNtH8 nujFlxAAjC8JSZY7BZyu8I5JZbodu7jfsf8niJivHHzkj8u22+6JVjJq9kkv1fg8 4sed5hFqGrmC/gt6zJ9ip0TXMzMJjCoUqd5SIeQUTaqXqgJg53a69BTUQI7Y9ebJ pfEl5qRb6y1gpwoQwlFH9eb5BwEpWnyexqo3GCMK3wNaj8d5VNF7wCPidSVMi9+N sBn3L6iF64Gky1f42h4+yzI3B0d+JMOmcTxAIgsInUiYNwyMBWHRIOCMSyhmoyri KW7juzcN0dagPuvP+u4g07PykRIHVB8JdeTz3tOBh+k+GrSHATZBMNeCuv0CJwTX 064BzsQS66Y2gQx8gVqJkyw9/m6zvfm9Uho8HPhKbuNq7kyI0qg7oSnue0gURCnd MK7EkQFJjhMxtltIHZDioWkR0mnIAs8osvIGWyV4d/X8CvdjXEq7IaoetoTlqoZx C8vabdXZejVWU3uHJW8Oxqtw3Lry3T1TkZX9QXHIYs2kVj5oktYMWT/XdvJZkOBF b1o1D7Zc2VAQmVehyLgy35jmCUL5UfBwb7SIPT/+/PDJJ7sWKANfa3nrsfjvFE2w YgQx39cd8hvdeYQ68MswX8eg8g0g9DV72wqCOxBgBoQ0m+rYxdgDcIXKC9I3CdVw qYnpOFyIJUWT4fGrLAnTeDByRp4+MPSAHPa+1ucf49O0xL3SAxw= =zbnv -----END PGP SIGNATURE----- --=-=-=-- --===============1273503872== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4 IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg== --===============1273503872==--