From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chunming Zhou Subject: [PATCH] drm/syncobj: Avoid kmalloc(GFP_KERNEL) under spinlock Date: Fri, 26 Oct 2018 14:20:27 +0800 Message-ID: <20181026062027.12179-1-david1.zhou@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: dri-devel@lists.freedesktop.org Cc: Chunming Zhou , intel-gfx@lists.freedesktop.org, =?UTF-8?q?Christian=20K=C3=B6nig?= , Julia Lawall List-Id: dri-devel@lists.freedesktop.org ZHJpdmVycy9ncHUvZHJtL2RybV9zeW5jb2JqLmM6MjAyOjQtMTQ6IEVSUk9SOiBmdW5jdGlvbiBk cm1fc3luY29ial9maW5kX3NpZ25hbF9wdF9mb3JfcG9pbnQgY2FsbGVkIG9uIGxpbmUgMzkwIGlu c2lkZSBsb2NrIG9uIGxpbmUgMzg5IGJ1dCB1c2VzIEdGUF9LRVJORUwKCiAgRmluZCBmdW5jdGlv bnMgdGhhdCByZWZlciB0byBHRlBfS0VSTkVMIGJ1dCBhcmUgY2FsbGVkIHdpdGggbG9ja3MgaGVs ZC4KCkdlbmVyYXRlZCBieTogc2NyaXB0cy9jb2NjaW5lbGxlL2xvY2tzL2NhbGxfa2Vybi5jb2Nj aQoKdjI6CnN5bmNvYmotPnRpbWVsaW5lIHN0aWxsIG5lZWRzIHByb3RlY3QuCgp2MzoKdXNlIGEg Z2xvYmFsIHNpZ25hbGVkIGZlbmNlIGluc3RlYWQgb2YgcmUtYWxsb2NhdGlvbi4KCnY0OgpEb24n dCBuZWVkIG1vdmluZyBsb2NrLgpEb24ndCBleHBvc2UgZnVuYy4KCnY1OgpyZW5hbWUgZnVuYyBh bmQgZGlyZWN0bHkgcmV0dXJuLgoKVGVzdGVkIGJ5OiBzeW5jb2JqX3dhaXQgYW5kIC4vZGVxcC12 ayAtbiBkRVFQLVZLLipzZW1hcGhvcmUqIHdpdGgKbG9jayBkZWJ1ZyBrZXJuZWwgb3B0aW9ucyBl bmFibGVkLgoKU2lnbmVkLW9mZi1ieTogQ2h1bm1pbmcgWmhvdSA8ZGF2aWQxLnpob3VAYW1kLmNv bT4KQ2M6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5j b20+CkNjOiBpbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCkNjOiBDaHJpc3RpYW4gS8O2 bmlnIDxlYXN5MnJlbWVtYmVyLmNoa0Bnb29nbGVtYWlsLmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8 Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDQzogSnVsaWEgTGF3YWxsIDxqdWxpYS5sYXdhbGxA bGlwNi5mcj4KUmV2aWV3ZWQtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNv LnVrPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fc3luY29iai5jIHwgMzYgKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCsp LCAxNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3N5bmNv YmouYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fc3luY29iai5jCmluZGV4IGI3ZWFhNjAzZjM2OC4u ZDFjNmYyMWM3MmI1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3N5bmNvYmouYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3N5bmNvYmouYwpAQCAtODAsNiArODAsMjMgQEAgc3Ry dWN0IGRybV9zeW5jb2JqX3NpZ25hbF9wdCB7CiAJc3RydWN0IGxpc3RfaGVhZCBsaXN0OwogfTsK IAorc3RhdGljIERFRklORV9TUElOTE9DSyhzaWduYWxlZF9mZW5jZV9sb2NrKTsKK3N0YXRpYyBz dHJ1Y3QgZG1hX2ZlbmNlIHNpZ25hbGVkX2ZlbmNlOworCitzdGF0aWMgc3RydWN0IGRtYV9mZW5j ZSAqZHJtX3N5bmNvYmpfZ2V0X3N0dWJfZmVuY2Uodm9pZCkKK3sKKwlzcGluX2xvY2soJnNpZ25h bGVkX2ZlbmNlX2xvY2spOworCWlmICghc2lnbmFsZWRfZmVuY2Uub3BzKSB7CisJCWRtYV9mZW5j ZV9pbml0KCZzaWduYWxlZF9mZW5jZSwKKwkJCSAgICAgICAmZHJtX3N5bmNvYmpfc3R1Yl9mZW5j ZV9vcHMsCisJCQkgICAgICAgJnNpZ25hbGVkX2ZlbmNlX2xvY2ssCisJCQkgICAgICAgMCwgMCk7 CisJCWRtYV9mZW5jZV9zaWduYWxfbG9ja2VkKCZzaWduYWxlZF9mZW5jZSk7CisJfQorCXNwaW5f dW5sb2NrKCZzaWduYWxlZF9mZW5jZV9sb2NrKTsKKworCXJldHVybiBkbWFfZmVuY2VfZ2V0KCZz aWduYWxlZF9mZW5jZSk7Cit9CiAvKioKICAqIGRybV9zeW5jb2JqX2ZpbmQgLSBsb29rdXAgYW5k IHJlZmVyZW5jZSBhIHN5bmMgb2JqZWN0LgogICogQGZpbGVfcHJpdmF0ZTogZHJtIGZpbGUgcHJp dmF0ZSBwb2ludGVyCkBAIC0xMTMsMjMgKzEzMCw4IEBAIHN0YXRpYyBzdHJ1Y3QgZG1hX2ZlbmNl CiAJc3RydWN0IGRybV9zeW5jb2JqX3NpZ25hbF9wdCAqc2lnbmFsX3B0OwogCiAJaWYgKChzeW5j b2JqLT50eXBlID09IERSTV9TWU5DT0JKX1RZUEVfVElNRUxJTkUpICYmCi0JICAgIChwb2ludCA8 PSBzeW5jb2JqLT50aW1lbGluZSkpIHsKLQkJc3RydWN0IGRybV9zeW5jb2JqX3N0dWJfZmVuY2Ug KmZlbmNlID0KLQkJCWt6YWxsb2Moc2l6ZW9mKHN0cnVjdCBkcm1fc3luY29ial9zdHViX2ZlbmNl KSwKLQkJCQlHRlBfS0VSTkVMKTsKLQotCQlpZiAoIWZlbmNlKQotCQkJcmV0dXJuIE5VTEw7Ci0J CXNwaW5fbG9ja19pbml0KCZmZW5jZS0+bG9jayk7Ci0JCWRtYV9mZW5jZV9pbml0KCZmZW5jZS0+ YmFzZSwKLQkJCSAgICAgICAmZHJtX3N5bmNvYmpfc3R1Yl9mZW5jZV9vcHMsCi0JCQkgICAgICAg JmZlbmNlLT5sb2NrLAotCQkJICAgICAgIHN5bmNvYmotPnRpbWVsaW5lX2NvbnRleHQsCi0JCQkg ICAgICAgcG9pbnQpOwotCi0JCWRtYV9mZW5jZV9zaWduYWwoJmZlbmNlLT5iYXNlKTsKLQkJcmV0 dXJuICZmZW5jZS0+YmFzZTsKLQl9CisJICAgIChwb2ludCA8PSBzeW5jb2JqLT50aW1lbGluZSkp CisJCXJldHVybiBkcm1fc3luY29ial9nZXRfc3R1Yl9mZW5jZSgpOwogCiAJbGlzdF9mb3JfZWFj aF9lbnRyeShzaWduYWxfcHQsICZzeW5jb2JqLT5zaWduYWxfcHRfbGlzdCwgbGlzdCkgewogCQlp ZiAocG9pbnQgPiBzaWduYWxfcHQtPnZhbHVlKQotLSAKMi4xNy4xCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK