From mboxrd@z Thu Jan 1 00:00:00 1970 From: Emil Condrea Subject: [PATCH v3 06/13] xen: Prepare xendev qtail to be shared with frontends Date: Tue, 25 Oct 2016 08:50:12 +0300 Message-ID: <1477374619-13149-7-git-send-email-emilcondrea@gmail.com> References: <1477374619-13149-1-git-send-email-emilcondrea@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1477374619-13149-1-git-send-email-emilcondrea@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: qemu-devel@nongnu.org Cc: xuquan8@huawei.com, sstabellini@kernel.org, wei.liu2@citrix.com, stefanb@linux.vnet.ibm.com, xen-devel@lists.xen.org, anthony.perard@citrix.com, pbonzini@redhat.com, dgdegra@tycho.nsa.gov, eblake@redhat.com List-Id: xen-devel@lists.xenproject.org ICogbW92ZSB4ZW5kZXZzIHF0YWlsIHRvIHhlbl9wdmRldi5jCiAqIGNoYW5nZSB4ZW5fYmVfZ2V0 X3hlbmRldiB0byB1c2UgYSBuZXcgZnVuY3Rpb246IHhlbl9wdl9pbnNlcnRfeGVuZGV2CgpTaWdu ZWQtb2ZmLWJ5OiBFbWlsIENvbmRyZWEgPGVtaWxjb25kcmVhQGdtYWlsLmNvbT4KLS0tCiBody94 ZW4veGVuX2JhY2tlbmQuYyAgICAgICAgIHwgNTEgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiBody94ZW4veGVuX3B2ZGV2LmMgICAgICAgICAgIHwgNTcgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGluY2x1ZGUvaHcveGVuL3hlbl9i YWNrZW5kLmggfCAgMSAtCiBpbmNsdWRlL2h3L3hlbi94ZW5fcHZkZXYuaCAgIHwgIDQgKysrKwog NCBmaWxlcyBjaGFuZ2VkLCA2MiBpbnNlcnRpb25zKCspLCA1MSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9ody94ZW4veGVuX2JhY2tlbmQuYyBiL2h3L3hlbi94ZW5fYmFja2VuZC5jCmluZGV4 IDE0ODdkYjIuLjI4NzVlN2MgMTAwNjQ0Ci0tLSBhL2h3L3hlbi94ZW5fYmFja2VuZC5jCisrKyBi L2h3L3hlbi94ZW5fYmFja2VuZC5jCkBAIC01NCw4ICs1NCw2IEBAIHN0cnVjdCB4c19kaXJzIHsK IHN0YXRpYyBRVEFJTFFfSEVBRCh4c19kaXJzX2hlYWQsIHhzX2RpcnMpIHhzX2NsZWFudXAgPQog ICAgIFFUQUlMUV9IRUFEX0lOSVRJQUxJWkVSKHhzX2NsZWFudXApOwogCi1zdGF0aWMgUVRBSUxR X0hFQUQoWGVuRGV2aWNlSGVhZCwgWGVuRGV2aWNlKSB4ZW5kZXZzID0KLSAgICBRVEFJTFFfSEVB RF9JTklUSUFMSVpFUih4ZW5kZXZzKTsKIHN0YXRpYyBpbnQgZGVidWc7CiAKIHN0YXRpYyB2b2lk IHhlbnN0b3JlX2NsZWFudXBfZGlyKGNoYXIgKmRpcikKQEAgLTE1NywyNyArMTU1LDYgQEAgaW50 IHhlbl9iZV9zZXRfc3RhdGUoc3RydWN0IFhlbkRldmljZSAqeGVuZGV2LCBlbnVtIHhlbmJ1c19z dGF0ZSBzdGF0ZSkKICAgICByZXR1cm4gMDsKIH0KIAotLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwotCi1zdHJ1Y3QgWGVu RGV2aWNlICp4ZW5fYmVfZmluZF94ZW5kZXYoY29uc3QgY2hhciAqdHlwZSwgaW50IGRvbSwgaW50 IGRldikKLXsKLSAgICBzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXY7Ci0KLSAgICBRVEFJTFFfRk9S RUFDSCh4ZW5kZXYsICZ4ZW5kZXZzLCBuZXh0KSB7Ci0gICAgICAgIGlmICh4ZW5kZXYtPmRvbSAh PSBkb20pIHsKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0gICAgICAgIGlmICh4 ZW5kZXYtPmRldiAhPSBkZXYpIHsKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0g ICAgICAgIGlmIChzdHJjbXAoeGVuZGV2LT50eXBlLCB0eXBlKSAhPSAwKSB7Ci0gICAgICAgICAg ICBjb250aW51ZTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4geGVuZGV2OwotICAgIH0KLSAg ICByZXR1cm4gTlVMTDsKLX0KLQogLyoKICAqIGdldCB4ZW4gYmFja2VuZCBkZXZpY2UsIGFsbG9j YXRlIGEgbmV3IG9uZSBpZiBpdCBkb2Vzbid0IGV4aXN0LgogICovCkBAIC0yMjYsNyArMjAzLDcg QEAgc3RhdGljIHN0cnVjdCBYZW5EZXZpY2UgKnhlbl9iZV9nZXRfeGVuZGV2KGNvbnN0IGNoYXIg KnR5cGUsIGludCBkb20sIGludCBkZXYsCiAgICAgICAgIHhlbmRldi0+Z250dGFiZGV2ID0gTlVM TDsKICAgICB9CiAKLSAgICBRVEFJTFFfSU5TRVJUX1RBSUwoJnhlbmRldnMsIHhlbmRldiwgbmV4 dCk7CisgICAgeGVuX3B2X2luc2VydF94ZW5kZXYoeGVuZGV2KTsKIAogICAgIGlmICh4ZW5kZXYt Pm9wcy0+YWxsb2MpIHsKICAgICAgICAgeGVuZGV2LT5vcHMtPmFsbG9jKHhlbmRldik7CkBAIC0y MzUsMzIgKzIxMiw2IEBAIHN0YXRpYyBzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5fYmVfZ2V0X3hlbmRl dihjb25zdCBjaGFyICp0eXBlLCBpbnQgZG9tLCBpbnQgZGV2LAogICAgIHJldHVybiB4ZW5kZXY7 CiB9CiAKLS8qCi0gKiByZWxlYXNlIHhlbiBiYWNrZW5kIGRldmljZS4KLSAqLwotc3RhdGljIHZv aWQgeGVuX2JlX2RlbF94ZW5kZXYoc3RydWN0IFhlbkRldmljZSAqeGVuZGV2KQotewotICAgIGlm ICh4ZW5kZXYtPm9wcy0+ZnJlZSkgewotICAgICAgICB4ZW5kZXYtPm9wcy0+ZnJlZSh4ZW5kZXYp OwotICAgIH0KLQotICAgIGlmICh4ZW5kZXYtPmZlKSB7Ci0gICAgICAgIGNoYXIgdG9rZW5bWEVO X0JVRlNJWkVdOwotICAgICAgICBzbnByaW50Zih0b2tlbiwgc2l6ZW9mKHRva2VuKSwgImZlOiVw IiwgeGVuZGV2KTsKLSAgICAgICAgeHNfdW53YXRjaCh4ZW5zdG9yZSwgeGVuZGV2LT5mZSwgdG9r ZW4pOwotICAgICAgICBnX2ZyZWUoeGVuZGV2LT5mZSk7Ci0gICAgfQotCi0gICAgaWYgKHhlbmRl di0+ZXZ0Y2huZGV2ICE9IE5VTEwpIHsKLSAgICAgICAgeGVuZXZ0Y2huX2Nsb3NlKHhlbmRldi0+ ZXZ0Y2huZGV2KTsKLSAgICB9Ci0gICAgaWYgKHhlbmRldi0+Z250dGFiZGV2ICE9IE5VTEwpIHsK LSAgICAgICAgeGVuZ250dGFiX2Nsb3NlKHhlbmRldi0+Z250dGFiZGV2KTsKLSAgICB9Ci0KLSAg ICBRVEFJTFFfUkVNT1ZFKCZ4ZW5kZXZzLCB4ZW5kZXYsIG5leHQpOwotICAgIGdfZnJlZSh4ZW5k ZXYpOwotfQogCiAvKgogICogU3luYyBpbnRlcm5hbCBkYXRhIHN0cnVjdHVyZXMgb24geGVuc3Rv cmUgdXBkYXRlcy4KZGlmZiAtLWdpdCBhL2h3L3hlbi94ZW5fcHZkZXYuYyBiL2h3L3hlbi94ZW5f cHZkZXYuYwppbmRleCA3NjA3ZTQ0Li45NmVkMmEzIDEwMDY0NAotLS0gYS9ody94ZW4veGVuX3B2 ZGV2LmMKKysrIGIvaHcveGVuL3hlbl9wdmRldi5jCkBAIC0yMiw3ICsyMiwxMSBAQAogI2luY2x1 ZGUgImh3L3hlbi94ZW5fYmFja2VuZC5oIgogI2luY2x1ZGUgImh3L3hlbi94ZW5fcHZkZXYuaCIK IAorLyogcHJpdmF0ZSAqLwogc3RhdGljIGludCBkZWJ1ZzsKK3N0YXRpYyBRVEFJTFFfSEVBRChY ZW5EZXZpY2VIZWFkLCBYZW5EZXZpY2UpIHhlbmRldnMgPQorICAgIFFUQUlMUV9IRUFEX0lOSVRJ QUxJWkVSKHhlbmRldnMpOworCiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKIGludCB4ZW5zdG9yZV93cml0ZV9zdHIo Y29uc3QgY2hhciAqYmFzZSwgY29uc3QgY2hhciAqbm9kZSwgY29uc3QgY2hhciAqdmFsKQpAQCAt MjA2LDMgKzIxMCw1NiBAQCBpbnQgeGVuX2JlX3NlbmRfbm90aWZ5KHN0cnVjdCBYZW5EZXZpY2Ug KnhlbmRldikKIHsKICAgICByZXR1cm4geGVuZXZ0Y2huX25vdGlmeSh4ZW5kZXYtPmV2dGNobmRl diwgeGVuZGV2LT5sb2NhbF9wb3J0KTsKIH0KKworLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLworCitzdHJ1Y3QgWGVuRGV2 aWNlICp4ZW5fYmVfZmluZF94ZW5kZXYoY29uc3QgY2hhciAqdHlwZSwgaW50IGRvbSwgaW50IGRl dikKK3sKKyAgICBzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXY7CisKKyAgICBRVEFJTFFfRk9SRUFD SCh4ZW5kZXYsICZ4ZW5kZXZzLCBuZXh0KSB7CisgICAgICAgIGlmICh4ZW5kZXYtPmRvbSAhPSBk b20pIHsKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICAgIGlmICh4ZW5k ZXYtPmRldiAhPSBkZXYpIHsKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAg ICAgIGlmIChzdHJjbXAoeGVuZGV2LT50eXBlLCB0eXBlKSAhPSAwKSB7CisgICAgICAgICAgICBj b250aW51ZTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4geGVuZGV2OworICAgIH0KKyAgICBy ZXR1cm4gTlVMTDsKK30KKworLyoKKyAqIHJlbGVhc2UgeGVuIGJhY2tlbmQgZGV2aWNlLgorICov Cit2b2lkIHhlbl9iZV9kZWxfeGVuZGV2KHN0cnVjdCBYZW5EZXZpY2UgKnhlbmRldikKK3sKKyAg ICBpZiAoeGVuZGV2LT5vcHMtPmZyZWUpIHsKKyAgICAgICAgeGVuZGV2LT5vcHMtPmZyZWUoeGVu ZGV2KTsKKyAgICB9CisKKyAgICBpZiAoeGVuZGV2LT5mZSkgeworICAgICAgICBjaGFyIHRva2Vu W1hFTl9CVUZTSVpFXTsKKyAgICAgICAgc25wcmludGYodG9rZW4sIHNpemVvZih0b2tlbiksICJm ZTolcCIsIHhlbmRldik7CisgICAgICAgIHhzX3Vud2F0Y2goeGVuc3RvcmUsIHhlbmRldi0+ZmUs IHRva2VuKTsKKyAgICAgICAgZ19mcmVlKHhlbmRldi0+ZmUpOworICAgIH0KKworICAgIGlmICh4 ZW5kZXYtPmV2dGNobmRldiAhPSBOVUxMKSB7CisgICAgICAgIHhlbmV2dGNobl9jbG9zZSh4ZW5k ZXYtPmV2dGNobmRldik7CisgICAgfQorICAgIGlmICh4ZW5kZXYtPmdudHRhYmRldiAhPSBOVUxM KSB7CisgICAgICAgIHhlbmdudHRhYl9jbG9zZSh4ZW5kZXYtPmdudHRhYmRldik7CisgICAgfQor CisgICAgUVRBSUxRX1JFTU9WRSgmeGVuZGV2cywgeGVuZGV2LCBuZXh0KTsKKyAgICBnX2ZyZWUo eGVuZGV2KTsKK30KKwordm9pZCB4ZW5fcHZfaW5zZXJ0X3hlbmRldihzdHJ1Y3QgWGVuRGV2aWNl ICp4ZW5kZXYpCit7CisgICAgUVRBSUxRX0lOU0VSVF9UQUlMKCZ4ZW5kZXZzLCB4ZW5kZXYsIG5l eHQpOworfQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9ody94ZW4veGVuX2JhY2tlbmQuaCBiL2luY2x1 ZGUvaHcveGVuL3hlbl9iYWNrZW5kLmgKaW5kZXggNmM2MTdkOS4uY2JkYTQwZSAxMDA2NDQKLS0t IGEvaW5jbHVkZS9ody94ZW4veGVuX2JhY2tlbmQuaAorKysgYi9pbmNsdWRlL2h3L3hlbi94ZW5f YmFja2VuZC5oCkBAIC0yNyw3ICsyNyw2IEBAIGludCB4ZW5zdG9yZV9yZWFkX2ZlX2ludChzdHJ1 Y3QgWGVuRGV2aWNlICp4ZW5kZXYsIGNvbnN0IGNoYXIgKm5vZGUsIGludCAqaXZhbCk7CiBpbnQg eGVuc3RvcmVfcmVhZF9mZV91aW50NjQoc3RydWN0IFhlbkRldmljZSAqeGVuZGV2LCBjb25zdCBj aGFyICpub2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ2NF90ICp1dmFsKTsK IAotc3RydWN0IFhlbkRldmljZSAqeGVuX2JlX2ZpbmRfeGVuZGV2KGNvbnN0IGNoYXIgKnR5cGUs IGludCBkb20sIGludCBkZXYpOwogdm9pZCB4ZW5fYmVfY2hlY2tfc3RhdGUoc3RydWN0IFhlbkRl dmljZSAqeGVuZGV2KTsKIAogLyogeGVuIGJhY2tlbmQgZHJpdmVyIGJpdHMgKi8KZGlmZiAtLWdp dCBhL2luY2x1ZGUvaHcveGVuL3hlbl9wdmRldi5oIGIvaW5jbHVkZS9ody94ZW4veGVuX3B2ZGV2 LmgKaW5kZXggYThkYTNkYS4uNTE3NTM3YSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9ody94ZW4veGVu X3B2ZGV2LmgKKysrIGIvaW5jbHVkZS9ody94ZW4veGVuX3B2ZGV2LmgKQEAgLTY1LDYgKzY1LDEw IEBAIHZvaWQgeGVuc3RvcmVfdXBkYXRlKHZvaWQgKnVudXNlZCk7CiBjb25zdCBjaGFyICp4ZW5i dXNfc3Ryc3RhdGUoZW51bSB4ZW5idXNfc3RhdGUgc3RhdGUpOwogCiB2b2lkIHhlbl9iZV9ldnRj aG5fZXZlbnQodm9pZCAqb3BhcXVlKTsKK3ZvaWQgeGVuX3B2X2luc2VydF94ZW5kZXYoc3RydWN0 IFhlbkRldmljZSAqeGVuZGV2KTsKK3ZvaWQgeGVuX2JlX2RlbF94ZW5kZXYoc3RydWN0IFhlbkRl dmljZSAqeGVuZGV2KTsKK3N0cnVjdCBYZW5EZXZpY2UgKnhlbl9iZV9maW5kX3hlbmRldihjb25z dCBjaGFyICp0eXBlLCBpbnQgZG9tLCBpbnQgZGV2KTsKKwogdm9pZCB4ZW5fYmVfdW5iaW5kX2V2 dGNobihzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYpOwogaW50IHhlbl9iZV9zZW5kX25vdGlmeShz dHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYpOwogCi0tIAoxLjkuMQoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVu LWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=