From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751955AbeBWPL7 (ORCPT ); Fri, 23 Feb 2018 10:11:59 -0500 Received: from aserp2130.oracle.com ([141.146.126.79]:40722 "EHLO aserp2130.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751927AbeBWPL5 (ORCPT ); Fri, 23 Feb 2018 10:11:57 -0500 Subject: Re: [PATCH 6/9] drm/xen-front: Introduce DRM/KMS virtual display driver To: Oleksandr Andrushchenko , xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, airlied@linux.ie, daniel.vetter@intel.com, seanpaul@chromium.org, gustavo@padovan.org, jgross@suse.com, konrad.wilk@oracle.com Cc: Oleksandr Andrushchenko References: <1519200222-20623-1-git-send-email-andr2000@gmail.com> <1519200222-20623-7-git-send-email-andr2000@gmail.com> From: Boris Ostrovsky Message-ID: <9081e140-dd0e-bb55-240f-77ff19a33f3c@oracle.com> Date: Fri, 23 Feb 2018 10:12:21 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <1519200222-20623-7-git-send-email-andr2000@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=8812 signatures=668677 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=2 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1711220000 definitions=main-1802230189 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02/21/2018 03:03 AM, Oleksandr Andrushchenko wrote: > + > +struct drm_driver xen_drm_driver = { > + .driver_features = DRIVER_GEM | DRIVER_MODESET | > + DRIVER_PRIME | DRIVER_ATOMIC, > + .lastclose = lastclose, > + .gem_free_object_unlocked = free_object, > + .gem_vm_ops = &xen_drm_vm_ops, > + .prime_handle_to_fd = drm_gem_prime_handle_to_fd, > + .prime_fd_to_handle = drm_gem_prime_fd_to_handle, > + .gem_prime_import = drm_gem_prime_import, > + .gem_prime_export = drm_gem_prime_export, > + .gem_prime_get_sg_table = prime_get_sg_table, > + .gem_prime_import_sg_table = prime_import_sg_table, > + .gem_prime_vmap = prime_vmap, > + .gem_prime_vunmap = prime_vunmap, > + .gem_prime_mmap = prime_mmap, > + .dumb_create = dumb_create, > + .fops = &xendrm_fops, > + .name = "xendrm-du", > + .desc = "Xen PV DRM Display Unit", > + .date = "20161109", You must have been working on this for a while ;-) I assume this needs to be updated. > +bool xen_drm_front_drv_is_used(struct platform_device *pdev) > +{ > + struct xen_drm_front_drm_info *drm_info = platform_get_drvdata(pdev); > + struct drm_device *dev; > + > + if (!drm_info) > + return false; > + > + dev = drm_info->drm_dev; > + if (!dev) > + return false; > + > + /* > + * FIXME: the code below must be protected by drm_global_mutex, > + * but it is not accessible to us. Anyways there is a race condition, > + * but we will re-try. > + */ > + return dev->open_count != 0; Would it be a problem, given the race, if you report that the frontend is not in use, while it actually is? -boris From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: Re: [PATCH 6/9] drm/xen-front: Introduce DRM/KMS virtual display driver Date: Fri, 23 Feb 2018 10:12:21 -0500 Message-ID: <9081e140-dd0e-bb55-240f-77ff19a33f3c@oracle.com> References: <1519200222-20623-1-git-send-email-andr2000@gmail.com> <1519200222-20623-7-git-send-email-andr2000@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1519200222-20623-7-git-send-email-andr2000@gmail.com> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Oleksandr Andrushchenko , xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, airlied@linux.ie, daniel.vetter@intel.com, seanpaul@chromium.org, gustavo@padovan.org, jgross@suse.com, konrad.wilk@oracle.com Cc: Oleksandr Andrushchenko List-Id: dri-devel@lists.freedesktop.org T24gMDIvMjEvMjAxOCAwMzowMyBBTSwgT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gd3JvdGU6Cgo+ ICsKPiArc3RydWN0IGRybV9kcml2ZXIgeGVuX2RybV9kcml2ZXIgPSB7Cj4gKwkuZHJpdmVyX2Zl YXR1cmVzICAgICAgICAgICA9IERSSVZFUl9HRU0gfCBEUklWRVJfTU9ERVNFVCB8Cj4gKwkJCQkg ICAgIERSSVZFUl9QUklNRSB8IERSSVZFUl9BVE9NSUMsCj4gKwkubGFzdGNsb3NlICAgICAgICAg ICAgICAgICA9IGxhc3RjbG9zZSwKPiArCS5nZW1fZnJlZV9vYmplY3RfdW5sb2NrZWQgID0gZnJl ZV9vYmplY3QsCj4gKwkuZ2VtX3ZtX29wcyAgICAgICAgICAgICAgICA9ICZ4ZW5fZHJtX3ZtX29w cywKPiArCS5wcmltZV9oYW5kbGVfdG9fZmQgICAgICAgID0gZHJtX2dlbV9wcmltZV9oYW5kbGVf dG9fZmQsCj4gKwkucHJpbWVfZmRfdG9faGFuZGxlICAgICAgICA9IGRybV9nZW1fcHJpbWVfZmRf dG9faGFuZGxlLAo+ICsJLmdlbV9wcmltZV9pbXBvcnQgICAgICAgICAgPSBkcm1fZ2VtX3ByaW1l X2ltcG9ydCwKPiArCS5nZW1fcHJpbWVfZXhwb3J0ICAgICAgICAgID0gZHJtX2dlbV9wcmltZV9l eHBvcnQsCj4gKwkuZ2VtX3ByaW1lX2dldF9zZ190YWJsZSAgICA9IHByaW1lX2dldF9zZ190YWJs ZSwKPiArCS5nZW1fcHJpbWVfaW1wb3J0X3NnX3RhYmxlID0gcHJpbWVfaW1wb3J0X3NnX3RhYmxl LAo+ICsJLmdlbV9wcmltZV92bWFwICAgICAgICAgICAgPSBwcmltZV92bWFwLAo+ICsJLmdlbV9w cmltZV92dW5tYXAgICAgICAgICAgPSBwcmltZV92dW5tYXAsCj4gKwkuZ2VtX3ByaW1lX21tYXAg ICAgICAgICAgICA9IHByaW1lX21tYXAsCj4gKwkuZHVtYl9jcmVhdGUgICAgICAgICAgICAgICA9 IGR1bWJfY3JlYXRlLAo+ICsJLmZvcHMgICAgICAgICAgICAgICAgICAgICAgPSAmeGVuZHJtX2Zv cHMsCj4gKwkubmFtZSAgICAgICAgICAgICAgICAgICAgICA9ICJ4ZW5kcm0tZHUiLAo+ICsJLmRl c2MgICAgICAgICAgICAgICAgICAgICAgPSAiWGVuIFBWIERSTSBEaXNwbGF5IFVuaXQiLAo+ICsJ LmRhdGUgICAgICAgICAgICAgICAgICAgICAgPSAiMjAxNjExMDkiLAoKWW91IG11c3QgaGF2ZSBi ZWVuIHdvcmtpbmcgb24gdGhpcyBmb3IgYSB3aGlsZSA7LSkKCkkgYXNzdW1lIHRoaXMgbmVlZHMg dG8gYmUgdXBkYXRlZC4KCj4gK2Jvb2wgeGVuX2RybV9mcm9udF9kcnZfaXNfdXNlZChzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICt7Cj4gKwlzdHJ1Y3QgeGVuX2RybV9mcm9udF9kcm1f aW5mbyAqZHJtX2luZm8gPSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YShwZGV2KTsKPiArCXN0cnVjdCBk cm1fZGV2aWNlICpkZXY7Cj4gKwo+ICsJaWYgKCFkcm1faW5mbykKPiArCQlyZXR1cm4gZmFsc2U7 Cj4gKwo+ICsJZGV2ID0gZHJtX2luZm8tPmRybV9kZXY7Cj4gKwlpZiAoIWRldikKPiArCQlyZXR1 cm4gZmFsc2U7Cj4gKwo+ICsJLyoKPiArCSAqIEZJWE1FOiB0aGUgY29kZSBiZWxvdyBtdXN0IGJl IHByb3RlY3RlZCBieSBkcm1fZ2xvYmFsX211dGV4LAo+ICsJICogYnV0IGl0IGlzIG5vdCBhY2Nl c3NpYmxlIHRvIHVzLiBBbnl3YXlzIHRoZXJlIGlzIGEgcmFjZSBjb25kaXRpb24sCj4gKwkgKiBi dXQgd2Ugd2lsbCByZS10cnkuCj4gKwkgKi8KPiArCXJldHVybiBkZXYtPm9wZW5fY291bnQgIT0g MDsKCldvdWxkIGl0IGJlIGEgcHJvYmxlbSwgZ2l2ZW4gdGhlIHJhY2UsIGlmIHlvdSByZXBvcnQg dGhhdCB0aGUgZnJvbnRlbmQKaXMgbm90IGluIHVzZSwgd2hpbGUgaXQgYWN0dWFsbHkgaXM/Cgot Ym9yaXMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhl bi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=