From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Hellstrom Subject: [PATCH 1/2] drm/vmwgfx: Clean up fbdev modeset locking Date: Thu, 26 Apr 2018 10:24:07 +0200 Message-ID: <20180426082408.2602-1-thellstrom@vmware.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0083.outbound.protection.outlook.com [104.47.34.83]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3F53D6E69F for ; Thu, 26 Apr 2018 08:24:50 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Thomas Hellstrom List-Id: dri-devel@lists.freedesktop.org QXQgbGVhc3Qgc2luY2UgdGhlIGF0b21pYyBwb3J0LCB0aGUgdm13Z2Z4IGZiZGV2IGNvZGUgaXMg dGFraW5nCmEgbnVtYmVyIG9mIHVubmVjZXNzYXJ5IG1vZGVzZXQgbG9ja3MuIEluIHBhcnRpY3Vs YXIgdGhlCmttc19zZXRfY29uZmlnKCkgZnVuY3Rpb24gd2lsbCBncmFiIGl0cyBvd24gbG9ja3Ms IGxlYWRpbmcgdG8KbG9ja2luZyByZXRyaWVzLiBTbyBhdm9pZCBkcm1fbW9kZXNldF9sb2NrX2Fs bCgpIGFuZCBpbnN0ZWFkCnByb3ZpZGUgYSBsb2NhbCBhY3F1aXJlIGNvbnRleHQgZm9yIGttc19z ZXRfY29uZmlnKCkuIEFsc28gaGF2ZSB0aGUKdm13X2ttc19mYmRldl9pbml0IGRhdGEgaXRzZWxm IGdyYWIgdGhlIGxvY2sgdGhhdCBpdCBuZWVkcy4KClRoaXMgYWxzbyBmaXhlZCBhIGxvbmcgc3Rh bmRpbmcgcHJvYmxlbSB0aGF0IHZtd19mYl9jbG9zZSgpIGRpZG4ndApwcm92aWRlIGFuIGFjcXVp cmUgY29udGV4dCBmb3Iga21zX3NldF9jb25maWcoKSwgY2F1c2luZyBwb3RlbnRpYWwKd2Fybmlu Z3MgYW5kIGhhbmdzIGR1cmluZyBkcml2ZXIgdW5sb2FkLiBUaGlzIHByb2JsZW0gd2FzIHVuY292 ZXJlZCBieSB0aGUKcmVjZW50IGNvbW1pdCAiZHJtL3Ztd2dmeDogSW1wcm92ZSBvbiBoaWJlcm5h dGlvbiIKClRlc3RpbmcgZG9uZToKUmVwZWF0ZWQgZHJpdmVyIGxvYWQgYW5kIHVubG9hZCBvbiBV YnVudHUgMTYuMDQuMgoKRml4ZXM6IGMzYjliMTY1NzM0NCAoImRybS92bXdnZng6IEltcHJvdmUg b24gaGliZXJuYXRpb24iKQpTaWduZWQtb2ZmLWJ5OiBUaG9tYXMgSGVsbHN0cm9tIDx0aGVsbHN0 cm9tQHZtd2FyZS5jb20+ClJldmlld2VkLWJ5OiBEZWVwYWsgUmF3YXQgPGRyYXdhdEB2bXdhcmUu Y29tPgpSZXZpZXdlZC1ieTogU2luY2xhaXIgWWVoIDxzeWVoQHZtd2FyZS5jb20+Ci0tLQogZHJp dmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZmIuYyAgfCAzMSArKysrKysrKysrLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYyB8IDEzICsr KysrKysrKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZmIuYyBi L2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2ZiLmMKaW5kZXggMjU4MmZmZDM2YmI1Li5i YTBjZGI3NDNjM2UgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2Zi LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZmIuYwpAQCAtNDQxLDExICs0 NDEsMTEgQEAgc3RhdGljIGludCB2bXdnZnhfc2V0X2NvbmZpZ19pbnRlcm5hbChzdHJ1Y3QgZHJt X21vZGVfc2V0ICpzZXQpCiAJc3RydWN0IGRybV9jcnRjICpjcnRjID0gc2V0LT5jcnRjOwogCXN0 cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiOwogCXN0cnVjdCBkcm1fY3J0YyAqdG1wOwotCXN0cnVj dCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCAqY3R4OwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBzZXQtPmNydGMtPmRldjsKKwlzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggY3R4Owog CWludCByZXQ7CiAKLQljdHggPSBkZXYtPm1vZGVfY29uZmlnLmFjcXVpcmVfY3R4OworCWRybV9t b2Rlc2V0X2FjcXVpcmVfaW5pdCgmY3R4LCAwKTsKIAogcmVzdGFydDoKIAkvKgpAQCAtNDU4LDcg KzQ1OCw3IEBAIHN0YXRpYyBpbnQgdm13Z2Z4X3NldF9jb25maWdfaW50ZXJuYWwoc3RydWN0IGRy bV9tb2RlX3NldCAqc2V0KQogCiAJZmIgPSBzZXQtPmZiOwogCi0JcmV0ID0gY3J0Yy0+ZnVuY3Mt PnNldF9jb25maWcoc2V0LCBjdHgpOworCXJldCA9IGNydGMtPmZ1bmNzLT5zZXRfY29uZmlnKHNl dCwgJmN0eCk7CiAJaWYgKHJldCA9PSAwKSB7CiAJCWNydGMtPnByaW1hcnktPmNydGMgPSBjcnRj OwogCQljcnRjLT5wcmltYXJ5LT5mYiA9IGZiOwpAQCAtNDczLDIwICs0NzMsMTMgQEAgc3RhdGlj IGludCB2bXdnZnhfc2V0X2NvbmZpZ19pbnRlcm5hbChzdHJ1Y3QgZHJtX21vZGVfc2V0ICpzZXQp CiAJfQogCiAJaWYgKHJldCA9PSAtRURFQURMSykgewotCQlkZXYtPm1vZGVfY29uZmlnLmFjcXVp cmVfY3R4ID0gTlVMTDsKLQotcmV0cnlfbG9ja2luZzoKLQkJZHJtX21vZGVzZXRfYmFja29mZihj dHgpOwotCi0JCXJldCA9IGRybV9tb2Rlc2V0X2xvY2tfYWxsX2N0eChkZXYsIGN0eCk7Ci0JCWlm IChyZXQpCi0JCQlnb3RvIHJldHJ5X2xvY2tpbmc7Ci0KLQkJZGV2LT5tb2RlX2NvbmZpZy5hY3F1 aXJlX2N0eCA9IGN0eDsKLQorCQlkcm1fbW9kZXNldF9iYWNrb2ZmKCZjdHgpOwogCQlnb3RvIHJl c3RhcnQ7CiAJfQogCisJZHJtX21vZGVzZXRfZHJvcF9sb2NrcygmY3R4KTsKKwlkcm1fbW9kZXNl dF9hY3F1aXJlX2ZpbmkoJmN0eCk7CisKIAlyZXR1cm4gcmV0OwogfQogCkBAIC02MjQsNyArNjE3 LDYgQEAgc3RhdGljIGludCB2bXdfZmJfc2V0X3BhcihzdHJ1Y3QgZmJfaW5mbyAqaW5mbykKIAl9 CiAKIAltdXRleF9sb2NrKCZwYXItPmJvX211dGV4KTsKLQlkcm1fbW9kZXNldF9sb2NrX2FsbCh2 bXdfcHJpdi0+ZGV2KTsKIAlyZXQgPSB2bXdfZmJfa21zX2ZyYW1lYnVmZmVyKGluZm8pOwogCWlm IChyZXQpCiAJCWdvdG8gb3V0X3VubG9jazsKQEAgLTY1Nyw3ICs2NDksNiBAQCBzdGF0aWMgaW50 IHZtd19mYl9zZXRfcGFyKHN0cnVjdCBmYl9pbmZvICppbmZvKQogCQlkcm1fbW9kZV9kZXN0cm95 KHZtd19wcml2LT5kZXYsIG9sZF9tb2RlKTsKIAlwYXItPnNldF9tb2RlID0gbW9kZTsKIAotCWRy bV9tb2Rlc2V0X3VubG9ja19hbGwodm13X3ByaXYtPmRldik7CiAJbXV0ZXhfdW5sb2NrKCZwYXIt PmJvX211dGV4KTsKIAogCXJldHVybiByZXQ7CkBAIC03MTMsMTggKzcwNCwxNCBAQCBpbnQgdm13 X2ZiX2luaXQoc3RydWN0IHZtd19wcml2YXRlICp2bXdfcHJpdikKIAlwYXItPm1heF93aWR0aCA9 IGZiX3dpZHRoOwogCXBhci0+bWF4X2hlaWdodCA9IGZiX2hlaWdodDsKIAotCWRybV9tb2Rlc2V0 X2xvY2tfYWxsKHZtd19wcml2LT5kZXYpOwogCXJldCA9IHZtd19rbXNfZmJkZXZfaW5pdF9kYXRh KHZtd19wcml2LCAwLCBwYXItPm1heF93aWR0aCwKIAkJCQkgICAgICBwYXItPm1heF9oZWlnaHQs ICZwYXItPmNvbiwKIAkJCQkgICAgICAmcGFyLT5jcnRjLCAmaW5pdF9tb2RlKTsKLQlpZiAocmV0 KSB7Ci0JCWRybV9tb2Rlc2V0X3VubG9ja19hbGwodm13X3ByaXYtPmRldik7CisJaWYgKHJldCkK IAkJZ290byBlcnJfa21zOwotCX0KIAogCWluZm8tPnZhci54cmVzID0gaW5pdF9tb2RlLT5oZGlz cGxheTsKIAlpbmZvLT52YXIueXJlcyA9IGluaXRfbW9kZS0+dmRpc3BsYXk7Ci0JZHJtX21vZGVz ZXRfdW5sb2NrX2FsbCh2bXdfcHJpdi0+ZGV2KTsKIAogCS8qCiAJICogQ3JlYXRlIGJ1ZmZlcnMg YW5kIGFsbG9jIG1lbW9yeQpAQCAtODMyLDcgKzgxOSw5IEBAIGludCB2bXdfZmJfY2xvc2Uoc3Ry dWN0IHZtd19wcml2YXRlICp2bXdfcHJpdikKIAljYW5jZWxfZGVsYXllZF93b3JrX3N5bmMoJnBh ci0+bG9jYWxfd29yayk7CiAJdW5yZWdpc3Rlcl9mcmFtZWJ1ZmZlcihpbmZvKTsKIAorCW11dGV4 X2xvY2soJnBhci0+Ym9fbXV0ZXgpOwogCSh2b2lkKSB2bXdfZmJfa21zX2RldGFjaChwYXIsIHRy dWUsIHRydWUpOworCW11dGV4X3VubG9jaygmcGFyLT5ib19tdXRleCk7CiAKIAl2ZnJlZShwYXIt PnZtYWxsb2MpOwogCWZyYW1lYnVmZmVyX3JlbGVhc2UoaW5mbyk7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngv dm13Z2Z4X2ttcy5jCmluZGV4IGYxMTYwMWI2ZmQ3NC4uYWFjYzkzMDdhYjBiIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYwpAQCAtMjY4MCw3ICsyNjgwLDkgQEAgaW50IHZtd19rbXNf ZmJkZXZfaW5pdF9kYXRhKHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJc3RydWN0IHZt d19kaXNwbGF5X3VuaXQgKmR1OwogCXN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlOwogCWlu dCBpID0gMDsKKwlpbnQgcmV0ID0gMDsKIAorCW11dGV4X2xvY2soJmRldl9wcml2LT5kZXYtPm1v ZGVfY29uZmlnLm11dGV4KTsKIAlsaXN0X2Zvcl9lYWNoX2VudHJ5KGNvbiwgJmRldl9wcml2LT5k ZXYtPm1vZGVfY29uZmlnLmNvbm5lY3Rvcl9saXN0LAogCQkJICAgIGhlYWQpIHsKIAkJaWYgKGkg PT0gdW5pdCkKQEAgLTI2OTEsNyArMjY5Myw4IEBAIGludCB2bXdfa21zX2ZiZGV2X2luaXRfZGF0 YShzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LAogCiAJaWYgKGkgIT0gdW5pdCkgewogCQlE Uk1fRVJST1IoIkNvdWxkIG5vdCBmaW5kIGluaXRpYWwgZGlzcGxheSB1bml0LlxuIik7Ci0JCXJl dHVybiAtRUlOVkFMOworCQlyZXQgPSAtRUlOVkFMOworCQlnb3RvIG91dF91bmxvY2s7CiAJfQog CiAJaWYgKGxpc3RfZW1wdHkoJmNvbi0+bW9kZXMpKQpAQCAtMjY5OSw3ICsyNzAyLDggQEAgaW50 IHZtd19rbXNfZmJkZXZfaW5pdF9kYXRhKHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYsCiAK IAlpZiAobGlzdF9lbXB0eSgmY29uLT5tb2RlcykpIHsKIAkJRFJNX0VSUk9SKCJDb3VsZCBub3Qg ZmluZCBpbml0aWFsIGRpc3BsYXkgbW9kZS5cbiIpOwotCQlyZXR1cm4gLUVJTlZBTDsKKwkJcmV0 ID0gLUVJTlZBTDsKKwkJZ290byBvdXRfdW5sb2NrOwogCX0KIAogCWR1ID0gdm13X2Nvbm5lY3Rv cl90b19kdShjb24pOwpAQCAtMjcyMCw3ICsyNzI0LDEwIEBAIGludCB2bXdfa21zX2ZiZGV2X2lu aXRfZGF0YShzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LAogCQkJCQkgICBoZWFkKTsKIAl9 CiAKLQlyZXR1cm4gMDsKKyBvdXRfdW5sb2NrOgorCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmRl di0+bW9kZV9jb25maWcubXV0ZXgpOworCisJcmV0dXJuIHJldDsKIH0KIAogLyoqCi0tIAoyLjE0 LjMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1k ZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=