From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: [PATCH RFC 6/8] spinlock: Introduce _spin_lock_cond() Date: Sun, 26 Feb 2017 19:22:38 -0500 Message-ID: <1488154960-2826-7-git-send-email-boris.ostrovsky@oracle.com> References: <1488154960-2826-1-git-send-email-boris.ostrovsky@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1488154960-2826-1-git-send-email-boris.ostrovsky@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: sstabellini@kernel.org, wei.liu2@citrix.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, jbeulich@suse.com, tim@xen.orgc, Boris Ostrovsky List-Id: xen-devel@lists.xenproject.org QmVjYXVzZSBfc3Bpbl90cnlsb2NrKCkgZG9lc24ndCB0YWtlIGxvY2sgdGlja2V0IGl0IG1heSB0 YWtlIGEKbG9uZyB0aW1lIHVudGlsIHRoZSBsb2NrIGlzIHRha2VuLgoKQWRkIF9zcGluX2xvY2tf Y29uZCgpIHRoYXQgd2FpdHMgZm9yIHRoZSBsb2NrIHdoaWxlIHBlcmlvZGljYWxseQpjaGVja2lu ZyBjb25kaXRpb24gdGhhdCBtYXkgY2F1c2UgdGhlIGxvY2sgcmVxdWVzdCB0byBiZSBkcm9wcGVk LgoKU2lnbmVkLW9mZi1ieTogQm9yaXMgT3N0cm92c2t5IDxib3Jpcy5vc3Ryb3Zza3lAb3JhY2xl LmNvbT4KLS0tCiB4ZW4vY29tbW9uL3NwaW5sb2NrLmMgICAgICB8ICAgMjUgKysrKysrKysrKysr KysrKysrKysrKysrKwogeGVuL2luY2x1ZGUveGVuL3NwaW5sb2NrLmggfCAgICAzICsrKwogMiBm aWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3hlbi9jb21tb24vc3BpbmxvY2suYyBiL3hlbi9jb21tb24vc3BpbmxvY2suYwppbmRleCAy YTA2NDA2Li40ZmQ0NmU1IDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL3NwaW5sb2NrLmMKKysrIGIv eGVuL2NvbW1vbi9zcGlubG9jay5jCkBAIC0xMjksNiArMTI5LDMxIEBAIHN0YXRpYyBhbHdheXNf aW5saW5lIHUxNiBvYnNlcnZlX2hlYWQoc3BpbmxvY2tfdGlja2V0c190ICp0KQogICAgIHJldHVy biByZWFkX2F0b21pYygmdC0+aGVhZCk7CiB9CiAKK2ludCBfc3Bpbl9sb2NrX2NvbmQoc3Bpbmxv Y2tfdCAqbG9jaywgYm9vbF90ICgqY29uZCkodm9pZCAqKSwgdm9pZCAqZGF0YSkKK3sKKyAgICBz cGlubG9ja190aWNrZXRzX3QgdGlja2V0cyA9IFNQSU5MT0NLX1RJQ0tFVF9JTkM7CisgICAgTE9D S19QUk9GSUxFX1ZBUjsKKworICAgIGNoZWNrX2xvY2soJmxvY2stPmRlYnVnKTsKKyAgICB0aWNr ZXRzLmhlYWRfdGFpbCA9IGFyY2hfZmV0Y2hfYW5kX2FkZCgmbG9jay0+dGlja2V0cy5oZWFkX3Rh aWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGlja2V0cy5o ZWFkX3RhaWwpOworICAgIHdoaWxlICggdGlja2V0cy50YWlsICE9IG9ic2VydmVfaGVhZCgmbG9j ay0+dGlja2V0cykgKQorICAgIHsKKyAgICAgICAgTE9DS19QUk9GSUxFX0JMT0NLOworICAgICAg ICBhcmNoX2xvY2tfcmVsYXgoKTsKKyAgICAgICAgaWYgKCBjb25kICYmICFjb25kKGRhdGEpICkK KyAgICAgICAgeworICAgICAgICAgICAgYWRkX3NpemVkKCZsb2NrLT50aWNrZXRzLmhlYWQsIDEp OworICAgICAgICAgICAgYXJjaF9sb2NrX3NpZ25hbCgpOworICAgICAgICAgICAgcmV0dXJuIDA7 CisgICAgICAgIH0KKyAgICB9CisgICAgTE9DS19QUk9GSUxFX0dPVDsKKyAgICBwcmVlbXB0X2Rp c2FibGUoKTsKKyAgICBhcmNoX2xvY2tfYWNxdWlyZV9iYXJyaWVyKCk7CisgICAgcmV0dXJuIDE7 Cit9CisKIHZvaWQgX3NwaW5fbG9jayhzcGlubG9ja190ICpsb2NrKQogewogICAgIHNwaW5sb2Nr X3RpY2tldHNfdCB0aWNrZXRzID0gU1BJTkxPQ0tfVElDS0VUX0lOQzsKZGlmZiAtLWdpdCBhL3hl bi9pbmNsdWRlL3hlbi9zcGlubG9jay5oIGIveGVuL2luY2x1ZGUveGVuL3NwaW5sb2NrLmgKaW5k ZXggYzE4ODNiZC4uYjhiZjcyYSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUveGVuL3NwaW5sb2Nr LmgKKysrIGIveGVuL2luY2x1ZGUveGVuL3NwaW5sb2NrLmgKQEAgLTE1Myw2ICsxNTMsNyBAQCB0 eXBlZGVmIHN0cnVjdCBzcGlubG9jayB7CiAjZGVmaW5lIHNwaW5fbG9ja19pbml0KGwpICgqKGwp ID0gKHNwaW5sb2NrX3QpU1BJTl9MT0NLX1VOTE9DS0VEKQogCiB2b2lkIF9zcGluX2xvY2soc3Bp bmxvY2tfdCAqbG9jayk7CitpbnQgX3NwaW5fbG9ja19jb25kKHNwaW5sb2NrX3QgKmxvY2ssIGJv b2xfdCAoKmNvbmQpKHZvaWQgKiksIHZvaWQgKmRhdGEpOwogdm9pZCBfc3Bpbl9sb2NrX2lycShz cGlubG9ja190ICpsb2NrKTsKIHVuc2lnbmVkIGxvbmcgX3NwaW5fbG9ja19pcnFzYXZlKHNwaW5s b2NrX3QgKmxvY2spOwogCkBAIC0xNjksNiArMTcwLDggQEAgdm9pZCBfc3Bpbl9sb2NrX3JlY3Vy c2l2ZShzcGlubG9ja190ICpsb2NrKTsKIHZvaWQgX3NwaW5fdW5sb2NrX3JlY3Vyc2l2ZShzcGlu bG9ja190ICpsb2NrKTsKIAogI2RlZmluZSBzcGluX2xvY2sobCkgICAgICAgICAgICAgICAgICBf c3Bpbl9sb2NrKGwpCisjZGVmaW5lIHNwaW5fbG9ja19jb25kKGwsIGMsIGQpICAgICAgIF9zcGlu X2xvY2tfY29uZChsLCBjLCBkKQorI2RlZmluZSBzcGlua19sb2NrX2tpY2sobCkgICAgICAgICAg ICBhcmNoX2xvY2tfc2lnbmFsKCkKICNkZWZpbmUgc3Bpbl9sb2NrX2lycShsKSAgICAgICAgICAg ICAgX3NwaW5fbG9ja19pcnEobCkKICNkZWZpbmUgc3Bpbl9sb2NrX2lycXNhdmUobCwgZikgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgKHsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAKMS43LjEKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFp bGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94 ZW4tZGV2ZWwK