From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH 03/12] xen: make use of xenbus_read_unsigned() in xen-blkfront Date: Mon, 31 Oct 2016 17:48:21 +0100 Message-ID: <1477932510-28594-4-git-send-email-jgross@suse.com> References: <1477932510-28594-1-git-send-email-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1477932510-28594-1-git-send-email-jgross@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: linux-kernel@vger.kernel.org, xen-devel@lists.xen.org Cc: Juergen Gross , boris.ostrovsky@oracle.com, roger.pau@citrix.com, david.vrabel@citrix.com List-Id: xen-devel@lists.xenproject.org VXNlIHhlbmJ1c19yZWFkX3Vuc2lnbmVkKCkgaW5zdGVhZCBvZiB4ZW5idXNfc2NhbmYoKSB3aGVu IHBvc3NpYmxlLgpUaGlzIHJlcXVpcmVzIHRvIGNoYW5nZSB0aGUgdHlwZSBvZiBzb21lIHJlYWRz IGZyb20gaW50IHRvIHVuc2lnbmVkLApidXQgdGhlc2UgY2FzZXMgaGF2ZSBiZWVuIHdyb25nIGJl Zm9yZTogbmVnYXRpdmUgdmFsdWVzIGFyZSBub3QgYWxsb3dlZApmb3IgdGhlIG1vZGlmaWVkIGNh c2VzLgoKQ2M6IGtvbnJhZC53aWxrQG9yYWNsZS5jb20KQ2M6IHJvZ2VyLnBhdUBjaXRyaXguY29t CgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+Ci0tLQogZHJp dmVycy9ibG9jay94ZW4tYmxrZnJvbnQuYyB8IDgxICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgNTUg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ibG9jay94ZW4tYmxrZnJvbnQuYyBi L2RyaXZlcnMvYmxvY2sveGVuLWJsa2Zyb250LmMKaW5kZXggOTkwODU5Ny4uMmVlOTY0NiAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ibG9jay94ZW4tYmxrZnJvbnQuYworKysgYi9kcml2ZXJzL2Jsb2Nr L3hlbi1ibGtmcm9udC5jCkBAIC0xNzU4LDE3ICsxNzU4LDEzIEBAIHN0YXRpYyBpbnQgdGFsa190 b19ibGtiYWNrKHN0cnVjdCB4ZW5idXNfZGV2aWNlICpkZXYsCiAJY29uc3QgY2hhciAqbWVzc2Fn ZSA9IE5VTEw7CiAJc3RydWN0IHhlbmJ1c190cmFuc2FjdGlvbiB4YnQ7CiAJaW50IGVycjsKLQl1 bnNpZ25lZCBpbnQgaSwgbWF4X3BhZ2Vfb3JkZXIgPSAwOwotCXVuc2lnbmVkIGludCByaW5nX3Bh Z2Vfb3JkZXIgPSAwOworCXVuc2lnbmVkIGludCBpLCBtYXhfcGFnZV9vcmRlcjsKKwl1bnNpZ25l ZCBpbnQgcmluZ19wYWdlX29yZGVyOwogCi0JZXJyID0geGVuYnVzX3NjYW5mKFhCVF9OSUwsIGlu Zm8tPnhiZGV2LT5vdGhlcmVuZCwKLQkJCSAgICJtYXgtcmluZy1wYWdlLW9yZGVyIiwgIiV1Iiwg Jm1heF9wYWdlX29yZGVyKTsKLQlpZiAoZXJyICE9IDEpCi0JCWluZm8tPm5yX3JpbmdfcGFnZXMg PSAxOwotCWVsc2UgewotCQlyaW5nX3BhZ2Vfb3JkZXIgPSBtaW4oeGVuX2Jsa2lmX21heF9yaW5n X29yZGVyLCBtYXhfcGFnZV9vcmRlcik7Ci0JCWluZm8tPm5yX3JpbmdfcGFnZXMgPSAxIDw8IHJp bmdfcGFnZV9vcmRlcjsKLQl9CisJbWF4X3BhZ2Vfb3JkZXIgPSB4ZW5idXNfcmVhZF91bnNpZ25l ZChpbmZvLT54YmRldi0+b3RoZXJlbmQsCisJCQkJCSAgICAgICJtYXgtcmluZy1wYWdlLW9yZGVy IiwgMCk7CisJcmluZ19wYWdlX29yZGVyID0gbWluKHhlbl9ibGtpZl9tYXhfcmluZ19vcmRlciwg bWF4X3BhZ2Vfb3JkZXIpOworCWluZm8tPm5yX3JpbmdfcGFnZXMgPSAxIDw8IHJpbmdfcGFnZV9v cmRlcjsKIAogCWZvciAoaSA9IDA7IGkgPCBpbmZvLT5ucl9yaW5nczsgaSsrKSB7CiAJCXN0cnVj dCBibGtmcm9udF9yaW5nX2luZm8gKnJpbmZvID0gJmluZm8tPnJpbmZvW2ldOwpAQCAtMTg3Nywx OCArMTg3MywxNCBAQCBzdGF0aWMgaW50IHRhbGtfdG9fYmxrYmFjayhzdHJ1Y3QgeGVuYnVzX2Rl dmljZSAqZGV2LAogCiBzdGF0aWMgaW50IG5lZ290aWF0ZV9tcShzdHJ1Y3QgYmxrZnJvbnRfaW5m byAqaW5mbykKIHsKLQl1bnNpZ25lZCBpbnQgYmFja2VuZF9tYXhfcXVldWVzID0gMDsKLQlpbnQg ZXJyOworCXVuc2lnbmVkIGludCBiYWNrZW5kX21heF9xdWV1ZXM7CiAJdW5zaWduZWQgaW50IGk7 CiAKIAlCVUdfT04oaW5mby0+bnJfcmluZ3MpOwogCiAJLyogQ2hlY2sgaWYgYmFja2VuZCBzdXBw b3J0cyBtdWx0aXBsZSBxdWV1ZXMuICovCi0JZXJyID0geGVuYnVzX3NjYW5mKFhCVF9OSUwsIGlu Zm8tPnhiZGV2LT5vdGhlcmVuZCwKLQkJCSAgICJtdWx0aS1xdWV1ZS1tYXgtcXVldWVzIiwgIiV1 IiwgJmJhY2tlbmRfbWF4X3F1ZXVlcyk7Ci0JaWYgKGVyciA8IDApCi0JCWJhY2tlbmRfbWF4X3F1 ZXVlcyA9IDE7Ci0KKwliYWNrZW5kX21heF9xdWV1ZXMgPSB4ZW5idXNfcmVhZF91bnNpZ25lZChp bmZvLT54YmRldi0+b3RoZXJlbmQsCisJCQkJCQkgICJtdWx0aS1xdWV1ZS1tYXgtcXVldWVzIiwg MSk7CiAJaW5mby0+bnJfcmluZ3MgPSBtaW4oYmFja2VuZF9tYXhfcXVldWVzLCB4ZW5fYmxraWZf bWF4X3F1ZXVlcyk7CiAJLyogV2UgbmVlZCBhdCBsZWFzdCBvbmUgcmluZy4gKi8KIAlpZiAoIWlu Zm8tPm5yX3JpbmdzKQpAQCAtMjE5NSw3ICsyMTg3LDYgQEAgc3RhdGljIHZvaWQgYmxrZnJvbnRf c2V0dXBfZGlzY2FyZChzdHJ1Y3QgYmxrZnJvbnRfaW5mbyAqaW5mbykKIAlpbnQgZXJyOwogCXVu c2lnbmVkIGludCBkaXNjYXJkX2dyYW51bGFyaXR5OwogCXVuc2lnbmVkIGludCBkaXNjYXJkX2Fs aWdubWVudDsKLQl1bnNpZ25lZCBpbnQgZGlzY2FyZF9zZWN1cmU7CiAKIAlpbmZvLT5mZWF0dXJl X2Rpc2NhcmQgPSAxOwogCWVyciA9IHhlbmJ1c19nYXRoZXIoWEJUX05JTCwgaW5mby0+eGJkZXYt Pm90aGVyZW5kLApAQCAtMjIwNiwxMCArMjE5Nyw5IEBAIHN0YXRpYyB2b2lkIGJsa2Zyb250X3Nl dHVwX2Rpc2NhcmQoc3RydWN0IGJsa2Zyb250X2luZm8gKmluZm8pCiAJCWluZm8tPmRpc2NhcmRf Z3JhbnVsYXJpdHkgPSBkaXNjYXJkX2dyYW51bGFyaXR5OwogCQlpbmZvLT5kaXNjYXJkX2FsaWdu bWVudCA9IGRpc2NhcmRfYWxpZ25tZW50OwogCX0KLQllcnIgPSB4ZW5idXNfc2NhbmYoWEJUX05J TCwgaW5mby0+eGJkZXYtPm90aGVyZW5kLAotCQkJICAgImRpc2NhcmQtc2VjdXJlIiwgIiV1Iiwg JmRpc2NhcmRfc2VjdXJlKTsKLQlpZiAoZXJyID4gMCkKLQkJaW5mby0+ZmVhdHVyZV9zZWNkaXNj YXJkID0gISFkaXNjYXJkX3NlY3VyZTsKKwlpbmZvLT5mZWF0dXJlX3NlY2Rpc2NhcmQgPQorCQkh IXhlbmJ1c19yZWFkX3Vuc2lnbmVkKGluZm8tPnhiZGV2LT5vdGhlcmVuZCwgImRpc2NhcmQtc2Vj dXJlIiwKKwkJCQkgICAgICAgMCk7CiB9CiAKIHN0YXRpYyBpbnQgYmxrZnJvbnRfc2V0dXBfaW5k aXJlY3Qoc3RydWN0IGJsa2Zyb250X3JpbmdfaW5mbyAqcmluZm8pCkBAIC0yMzAxLDE2ICsyMjkx LDExIEBAIHN0YXRpYyBpbnQgYmxrZnJvbnRfc2V0dXBfaW5kaXJlY3Qoc3RydWN0IGJsa2Zyb250 X3JpbmdfaW5mbyAqcmluZm8pCiAgKi8KIHN0YXRpYyB2b2lkIGJsa2Zyb250X2dhdGhlcl9iYWNr ZW5kX2ZlYXR1cmVzKHN0cnVjdCBibGtmcm9udF9pbmZvICppbmZvKQogewotCWludCBlcnI7Ci0J aW50IGJhcnJpZXIsIGZsdXNoLCBkaXNjYXJkLCBwZXJzaXN0ZW50OwogCXVuc2lnbmVkIGludCBp bmRpcmVjdF9zZWdtZW50czsKIAogCWluZm8tPmZlYXR1cmVfZmx1c2ggPSAwOwogCWluZm8tPmZl YXR1cmVfZnVhID0gMDsKIAotCWVyciA9IHhlbmJ1c19zY2FuZihYQlRfTklMLCBpbmZvLT54YmRl di0+b3RoZXJlbmQsCi0JCQkgICAiZmVhdHVyZS1iYXJyaWVyIiwgIiVkIiwgJmJhcnJpZXIpOwot CiAJLyoKIAkgKiBJZiB0aGVyZSdzIG5vICJmZWF0dXJlLWJhcnJpZXIiIGRlZmluZWQsIHRoZW4g aXQgbWVhbnMKIAkgKiB3ZSdyZSBkZWFsaW5nIHdpdGggYSB2ZXJ5IG9sZCBiYWNrZW5kIHdoaWNo IHdyaXRlcwpAQCAtMjMxOCw3ICsyMzAzLDcgQEAgc3RhdGljIHZvaWQgYmxrZnJvbnRfZ2F0aGVy X2JhY2tlbmRfZmVhdHVyZXMoc3RydWN0IGJsa2Zyb250X2luZm8gKmluZm8pCiAJICoKIAkgKiBJ ZiB0aGVyZSBhcmUgYmFycmllcnMsIHRoZW4gd2UgdXNlIGZsdXNoLgogCSAqLwotCWlmIChlcnIg PiAwICYmIGJhcnJpZXIpIHsKKwlpZiAoeGVuYnVzX3JlYWRfdW5zaWduZWQoaW5mby0+eGJkZXYt Pm90aGVyZW5kLCAiZmVhdHVyZS1iYXJyaWVyIiwgMCkpIHsKIAkJaW5mby0+ZmVhdHVyZV9mbHVz aCA9IDE7CiAJCWluZm8tPmZlYXR1cmVfZnVhID0gMTsKIAl9CkBAIC0yMzI3LDM1ICsyMzEyLDIz IEBAIHN0YXRpYyB2b2lkIGJsa2Zyb250X2dhdGhlcl9iYWNrZW5kX2ZlYXR1cmVzKHN0cnVjdCBi bGtmcm9udF9pbmZvICppbmZvKQogCSAqIEFuZCBpZiB0aGVyZSBpcyAiZmVhdHVyZS1mbHVzaC1j YWNoZSIgdXNlIHRoYXQgYWJvdmUKIAkgKiBiYXJyaWVycy4KIAkgKi8KLQllcnIgPSB4ZW5idXNf c2NhbmYoWEJUX05JTCwgaW5mby0+eGJkZXYtPm90aGVyZW5kLAotCQkJICAgImZlYXR1cmUtZmx1 c2gtY2FjaGUiLCAiJWQiLCAmZmx1c2gpOwotCi0JaWYgKGVyciA+IDAgJiYgZmx1c2gpIHsKKwlp ZiAoeGVuYnVzX3JlYWRfdW5zaWduZWQoaW5mby0+eGJkZXYtPm90aGVyZW5kLCAiZmVhdHVyZS1m bHVzaC1jYWNoZSIsCisJCQkJIDApKSB7CiAJCWluZm8tPmZlYXR1cmVfZmx1c2ggPSAxOwogCQlp bmZvLT5mZWF0dXJlX2Z1YSA9IDA7CiAJfQogCi0JZXJyID0geGVuYnVzX3NjYW5mKFhCVF9OSUws IGluZm8tPnhiZGV2LT5vdGhlcmVuZCwKLQkJCSAgICJmZWF0dXJlLWRpc2NhcmQiLCAiJWQiLCAm ZGlzY2FyZCk7Ci0KLQlpZiAoZXJyID4gMCAmJiBkaXNjYXJkKQorCWlmICh4ZW5idXNfcmVhZF91 bnNpZ25lZChpbmZvLT54YmRldi0+b3RoZXJlbmQsICJmZWF0dXJlLWRpc2NhcmQiLCAwKSkKIAkJ YmxrZnJvbnRfc2V0dXBfZGlzY2FyZChpbmZvKTsKIAotCWVyciA9IHhlbmJ1c19zY2FuZihYQlRf TklMLCBpbmZvLT54YmRldi0+b3RoZXJlbmQsCi0JCQkgICAiZmVhdHVyZS1wZXJzaXN0ZW50Iiwg IiVkIiwgJnBlcnNpc3RlbnQpOwotCWlmIChlcnIgPD0gMCkKLQkJaW5mby0+ZmVhdHVyZV9wZXJz aXN0ZW50ID0gMDsKLQllbHNlCi0JCWluZm8tPmZlYXR1cmVfcGVyc2lzdGVudCA9IHBlcnNpc3Rl bnQ7CisJaW5mby0+ZmVhdHVyZV9wZXJzaXN0ZW50ID0KKwkJeGVuYnVzX3JlYWRfdW5zaWduZWQo aW5mby0+eGJkZXYtPm90aGVyZW5kLAorCQkJCSAgICAgImZlYXR1cmUtcGVyc2lzdGVudCIsIDAp OwogCi0JZXJyID0geGVuYnVzX3NjYW5mKFhCVF9OSUwsIGluZm8tPnhiZGV2LT5vdGhlcmVuZCwK LQkJCSAgICJmZWF0dXJlLW1heC1pbmRpcmVjdC1zZWdtZW50cyIsICIldSIsCi0JCQkgICAmaW5k aXJlY3Rfc2VnbWVudHMpOwotCWlmIChlcnIgPD0gMCkKLQkJaW5mby0+bWF4X2luZGlyZWN0X3Nl Z21lbnRzID0gMDsKLQllbHNlCi0JCWluZm8tPm1heF9pbmRpcmVjdF9zZWdtZW50cyA9IG1pbihp bmRpcmVjdF9zZWdtZW50cywKLQkJCQkJCSAgeGVuX2Jsa2lmX21heF9zZWdtZW50cyk7CisJaW5k aXJlY3Rfc2VnbWVudHMgPSB4ZW5idXNfcmVhZF91bnNpZ25lZChpbmZvLT54YmRldi0+b3RoZXJl bmQsCisJCQkJCSJmZWF0dXJlLW1heC1pbmRpcmVjdC1zZWdtZW50cyIsIDApOworCWluZm8tPm1h eF9pbmRpcmVjdF9zZWdtZW50cyA9IG1pbihpbmRpcmVjdF9zZWdtZW50cywKKwkJCQkJICB4ZW5f YmxraWZfbWF4X3NlZ21lbnRzKTsKIH0KIAogLyoKQEAgLTI0MjAsMTEgKzIzOTMsOSBAQCBzdGF0 aWMgdm9pZCBibGtmcm9udF9jb25uZWN0KHN0cnVjdCBibGtmcm9udF9pbmZvICppbmZvKQogCSAq IHByb3ZpZGUgdGhpcy4gQXNzdW1lIHBoeXNpY2FsIHNlY3RvciBzaXplIHRvIGJlIHRoZSBzYW1l IGFzCiAJICogc2VjdG9yX3NpemUgaW4gdGhhdCBjYXNlLgogCSAqLwotCWVyciA9IHhlbmJ1c19z Y2FuZihYQlRfTklMLCBpbmZvLT54YmRldi0+b3RoZXJlbmQsCi0JCQkgICAicGh5c2ljYWwtc2Vj dG9yLXNpemUiLCAiJXUiLCAmcGh5c2ljYWxfc2VjdG9yX3NpemUpOwotCWlmIChlcnIgIT0gMSkK LQkJcGh5c2ljYWxfc2VjdG9yX3NpemUgPSBzZWN0b3Jfc2l6ZTsKLQorCXBoeXNpY2FsX3NlY3Rv cl9zaXplID0geGVuYnVzX3JlYWRfdW5zaWduZWQoaW5mby0+eGJkZXYtPm90aGVyZW5kLAorCQkJ CQkJICAgICJwaHlzaWNhbC1zZWN0b3Itc2l6ZSIsCisJCQkJCQkgICAgc2VjdG9yX3NpemUpOwog CWJsa2Zyb250X2dhdGhlcl9iYWNrZW5kX2ZlYXR1cmVzKGluZm8pOwogCWZvciAoaSA9IDA7IGkg PCBpbmZvLT5ucl9yaW5nczsgaSsrKSB7CiAJCWVyciA9IGJsa2Zyb250X3NldHVwX2luZGlyZWN0 KCZpbmZvLT5yaW5mb1tpXSk7Ci0tIAoyLjYuNgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxp c3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=