From mboxrd@z Thu Jan 1 00:00:00 1970 From: Emil Condrea Subject: [PATCH 05/19] xen: Prepare xendev qtail to be shared with frontends Date: Sun, 10 Jul 2016 14:47:36 +0300 Message-ID: <1468151270-12984-6-git-send-email-emilcondrea__19985.6644882404$1468151398$gmane$org@gmail.com> References: <1468151270-12984-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: <1468151270-12984-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: wei.liu2@citrix.com, stefanb@linux.vnet.ibm.com, stefano.stabellini@eu.citrix.com, xen-devel@lists.xen.org, quan.xu@intel.com, dgdegra@tycho.nsa.gov, eblake@redhat.com, emilcondrea@gmail.com List-Id: xen-devel@lists.xenproject.org ICogbW92ZSB4ZW5kZXZzIHF0YWlsIHRvIHhlbl9wdmRldi5jCiAqIGNoYW5nZSB4ZW5fYmVfZ2V0 X3hlbmRldiB0byB1c2UgYSBuZXcgZnVuY3Rpb246IHhlbl9wdl9pbnNlcnRfeGVuZGV2CgpTaWdu ZWQtb2ZmLWJ5OiBFbWlsIENvbmRyZWEgPGVtaWxjb25kcmVhQGdtYWlsLmNvbT4KLS0tCiBody94 ZW4veGVuX2JhY2tlbmQuYyAgICAgICAgICB8IDcwICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIGh3L3hlbi94ZW5fcHZkZXYuYyAgICAgICAgICAgIHwgNzUgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9ody94ZW4veGVu X2JhY2tlbmQuaCAgfCAgMSAtCiBpbmNsdWRlL2h3L3hlbi94ZW5fZnJvbnRlbmQuaCB8ICAyICsr CiBpbmNsdWRlL2h3L3hlbi94ZW5fcHZkZXYuaCAgICB8ICA0ICsrKwogNSBmaWxlcyBjaGFuZ2Vk LCA4MiBpbnNlcnRpb25zKCspLCA3MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9ody94ZW4v eGVuX2JhY2tlbmQuYyBiL2h3L3hlbi94ZW5fYmFja2VuZC5jCmluZGV4IDVmMjgyMWEuLjJmN2Yx YTYgMTAwNjQ0Ci0tLSBhL2h3L3hlbi94ZW5fYmFja2VuZC5jCisrKyBiL2h3L3hlbi94ZW5fYmFj a2VuZC5jCkBAIC01NSw3ICs1NSw2IEBAIHN0cnVjdCB4c19kaXJzIHsKIHN0YXRpYyBRVEFJTFFf SEVBRCh4c19kaXJzX2hlYWQsIHhzX2RpcnMpIHhzX2NsZWFudXAgPQogICAgIFFUQUlMUV9IRUFE X0lOSVRJQUxJWkVSKHhzX2NsZWFudXApOwogCi1zdGF0aWMgUVRBSUxRX0hFQUQoWGVuRGV2aWNl SGVhZCwgWGVuRGV2aWNlKSB4ZW5kZXZzID0gUVRBSUxRX0hFQURfSU5JVElBTElaRVIoeGVuZGV2 cyk7CiBzdGF0aWMgaW50IGRlYnVnID0gMDsKIAogc3RhdGljIHZvaWQgeGVuc3RvcmVfY2xlYW51 cF9kaXIoY2hhciAqZGlyKQpAQCAtMTQxLDI3ICsxNDAsNiBAQCBpbnQgeGVuX2JlX3NldF9zdGF0 ZShzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYsIGVudW0geGVuYnVzX3N0YXRlIHN0YXRlKQogICAg IHJldHVybiAwOwogfQogCi0vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi0KLXN0cnVjdCBYZW5EZXZpY2UgKnhlbl9iZV9m aW5kX3hlbmRldihjb25zdCBjaGFyICp0eXBlLCBpbnQgZG9tLCBpbnQgZGV2KQotewotICAgIHN0 cnVjdCBYZW5EZXZpY2UgKnhlbmRldjsKLQotICAgIFFUQUlMUV9GT1JFQUNIKHhlbmRldiwgJnhl bmRldnMsIG5leHQpIHsKLSAgICAgICAgaWYgKHhlbmRldi0+ZG9tICE9IGRvbSkgewotICAgICAg ICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKHhlbmRldi0+ZGV2ICE9IGRl dikgewotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKHN0cmNt cCh4ZW5kZXYtPnR5cGUsIHR5cGUpICE9IDApIHsKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAg ICAgICB9Ci0gICAgICAgIHJldHVybiB4ZW5kZXY7Ci0gICAgfQotICAgIHJldHVybiBOVUxMOwot fQotCiAvKgogICogZ2V0IHhlbiBiYWNrZW5kIGRldmljZSwgYWxsb2NhdGUgYSBuZXcgb25lIGlm IGl0IGRvZXNuJ3QgZXhpc3QuCiAgKi8KQEAgLTIxMCw3ICsxODgsNyBAQCBzdGF0aWMgc3RydWN0 IFhlbkRldmljZSAqeGVuX2JlX2dldF94ZW5kZXYoY29uc3QgY2hhciAqdHlwZSwgaW50IGRvbSwg aW50IGRldiwKICAgICAgICAgeGVuZGV2LT5nbnR0YWJkZXYgPSBOVUxMOwogICAgIH0KIAotICAg IFFUQUlMUV9JTlNFUlRfVEFJTCgmeGVuZGV2cywgeGVuZGV2LCBuZXh0KTsKKyAgICB4ZW5fcHZf aW5zZXJ0X3hlbmRldih4ZW5kZXYpOwogCiAgICAgaWYgKHhlbmRldi0+b3BzLT5hbGxvYykgewog ICAgICAgICB4ZW5kZXYtPm9wcy0+YWxsb2MoeGVuZGV2KTsKQEAgLTIxOSw1MiArMTk3LDYgQEAg c3RhdGljIHN0cnVjdCBYZW5EZXZpY2UgKnhlbl9iZV9nZXRfeGVuZGV2KGNvbnN0IGNoYXIgKnR5 cGUsIGludCBkb20sIGludCBkZXYsCiAgICAgcmV0dXJuIHhlbmRldjsKIH0KIAotLyoKLSAqIHJl bGVhc2UgeGVuIGJhY2tlbmQgZGV2aWNlLgotICovCi1zdGF0aWMgc3RydWN0IFhlbkRldmljZSAq eGVuX2JlX2RlbF94ZW5kZXYoaW50IGRvbSwgaW50IGRldikKLXsKLSAgICBzdHJ1Y3QgWGVuRGV2 aWNlICp4ZW5kZXYsICp4bmV4dDsKLQotICAgIC8qCi0gICAgICogVGhpcyBpcyBwcmV0dHkgbXVj aCBsaWtlIFFUQUlMUV9GT1JFQUNIKHhlbmRldiwgJnhlbmRldnMsIG5leHQpIGJ1dAotICAgICAq IHdlIHNhdmUgdGhlIG5leHQgcG9pbnRlciBpbiB4bmV4dCBiZWNhdXNlIHdlIG1pZ2h0IGZyZWUg eGVuZGV2LgotICAgICAqLwotICAgIHhuZXh0ID0geGVuZGV2cy50cWhfZmlyc3Q7Ci0gICAgd2hp bGUgKHhuZXh0KSB7Ci0gICAgICAgIHhlbmRldiA9IHhuZXh0OwotICAgICAgICB4bmV4dCA9IHhl bmRldi0+bmV4dC50cWVfbmV4dDsKLQotICAgICAgICBpZiAoeGVuZGV2LT5kb20gIT0gZG9tKSB7 Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotICAgICAgICBpZiAoeGVuZGV2LT5k ZXYgIT0gZGV2ICYmIGRldiAhPSAtMSkgewotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAg IH0KLQotICAgICAgICBpZiAoeGVuZGV2LT5vcHMtPmZyZWUpIHsKLSAgICAgICAgICAgIHhlbmRl di0+b3BzLT5mcmVlKHhlbmRldik7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoeGVuZGV2LT5m ZSkgewotICAgICAgICAgICAgY2hhciB0b2tlbltYRU5fQlVGU0laRV07Ci0gICAgICAgICAgICBz bnByaW50Zih0b2tlbiwgc2l6ZW9mKHRva2VuKSwgImZlOiVwIiwgeGVuZGV2KTsKLSAgICAgICAg ICAgIHhzX3Vud2F0Y2goeGVuc3RvcmUsIHhlbmRldi0+ZmUsIHRva2VuKTsKLSAgICAgICAgICAg IGdfZnJlZSh4ZW5kZXYtPmZlKTsKLSAgICAgICAgfQotCi0gICAgICAgIGlmICh4ZW5kZXYtPmV2 dGNobmRldiAhPSBOVUxMKSB7Ci0gICAgICAgICAgICB4ZW5ldnRjaG5fY2xvc2UoeGVuZGV2LT5l dnRjaG5kZXYpOwotICAgICAgICB9Ci0gICAgICAgIGlmICh4ZW5kZXYtPmdudHRhYmRldiAhPSBO VUxMKSB7Ci0gICAgICAgICAgICB4ZW5nbnR0YWJfY2xvc2UoeGVuZGV2LT5nbnR0YWJkZXYpOwot ICAgICAgICB9Ci0KLSAgICAgICAgUVRBSUxRX1JFTU9WRSgmeGVuZGV2cywgeGVuZGV2LCBuZXh0 KTsKLSAgICAgICAgZ19mcmVlKHhlbmRldik7Ci0gICAgfQotICAgIHJldHVybiBOVUxMOwotfQog CiAvKgogICogU3luYyBpbnRlcm5hbCBkYXRhIHN0cnVjdHVyZXMgb24geGVuc3RvcmUgdXBkYXRl cy4KZGlmZiAtLWdpdCBhL2h3L3hlbi94ZW5fcHZkZXYuYyBiL2h3L3hlbi94ZW5fcHZkZXYuYwpp bmRleCA3ODc2NzI0Li4wNDJhZGViIDEwMDY0NAotLS0gYS9ody94ZW4veGVuX3B2ZGV2LmMKKysr IGIvaHcveGVuL3hlbl9wdmRldi5jCkBAIC0yMyw3ICsyMyw5IEBACiAjaW5jbHVkZSAiaHcveGVu L3hlbl9mcm9udGVuZC5oIgogI2luY2x1ZGUgImh3L3hlbi94ZW5fcHZkZXYuaCIKIAorLyogcHJp dmF0ZSAqLwogc3RhdGljIGludCBkZWJ1ZyA9IDA7CitzdGF0aWMgUVRBSUxRX0hFQUQoWGVuRGV2 aWNlSGVhZCwgWGVuRGV2aWNlKSB4ZW5kZXZzID0gUVRBSUxRX0hFQURfSU5JVElBTElaRVIoeGVu ZGV2cyk7CiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tICovCiAKIGludCB4ZW5zdG9yZV93cml0ZV9zdHIoY29uc3QgY2hhciAq YmFzZSwgY29uc3QgY2hhciAqbm9kZSwgY29uc3QgY2hhciAqdmFsKQpAQCAtMjA2LDMgKzIwOCw3 NiBAQCBpbnQgeGVuX2JlX3NlbmRfbm90aWZ5KHN0cnVjdCBYZW5EZXZpY2UgKnhlbmRldikKIHsK ICAgICByZXR1cm4geGVuZXZ0Y2huX25vdGlmeSh4ZW5kZXYtPmV2dGNobmRldiwgeGVuZGV2LT5s b2NhbF9wb3J0KTsKIH0KKworLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLworCitzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5fYmVf ZmluZF94ZW5kZXYoY29uc3QgY2hhciAqdHlwZSwgaW50IGRvbSwgaW50IGRldikKK3sKKyAgICBz dHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXY7CisKKyAgICBRVEFJTFFfRk9SRUFDSCh4ZW5kZXYsICZ4 ZW5kZXZzLCBuZXh0KSB7CisgICAgICAgIGlmICh4ZW5kZXYtPmRvbSAhPSBkb20pIHsKKyAgICAg ICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICAgIGlmICh4ZW5kZXYtPmRldiAhPSBk ZXYpIHsKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICAgIGlmIChzdHJj bXAoeGVuZGV2LT50eXBlLCB0eXBlKSAhPSAwKSB7CisgICAgICAgICAgICBjb250aW51ZTsKKyAg ICAgICAgfQorICAgICAgICByZXR1cm4geGVuZGV2OworICAgIH0KKyAgICByZXR1cm4gTlVMTDsK K30KKworLyoKKyAqIHJlbGVhc2UgeGVuIGJhY2tlbmQgZGV2aWNlLgorICovCitzdHJ1Y3QgWGVu RGV2aWNlICp4ZW5fYmVfZGVsX3hlbmRldihpbnQgZG9tLCBpbnQgZGV2KQoreworICAgIHN0cnVj dCBYZW5EZXZpY2UgKnhlbmRldiwgKnhuZXh0OworCisgICAgLyoKKyAgICAgKiBUaGlzIGlzIHBy ZXR0eSBtdWNoIGxpa2UgUVRBSUxRX0ZPUkVBQ0goeGVuZGV2LCAmeGVuZGV2cywgbmV4dCkgYnV0 CisgICAgICogd2Ugc2F2ZSB0aGUgbmV4dCBwb2ludGVyIGluIHhuZXh0IGJlY2F1c2Ugd2UgbWln aHQgZnJlZSB4ZW5kZXYuCisgICAgICovCisgICAgeG5leHQgPSB4ZW5kZXZzLnRxaF9maXJzdDsK KyAgICB3aGlsZSAoeG5leHQpIHsKKyAgICAgICAgeGVuZGV2ID0geG5leHQ7CisgICAgICAgIHhu ZXh0ID0geGVuZGV2LT5uZXh0LnRxZV9uZXh0OworCisgICAgICAgIGlmICh4ZW5kZXYtPmRvbSAh PSBkb20pIHsKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICAgIGlmICh4 ZW5kZXYtPmRldiAhPSBkZXYgJiYgZGV2ICE9IC0xKSB7CisgICAgICAgICAgICBjb250aW51ZTsK KyAgICAgICAgfQorCisgICAgICAgIGlmICh4ZW5kZXYtPm9wcy0+ZnJlZSkgeworICAgICAgICAg ICAgeGVuZGV2LT5vcHMtPmZyZWUoeGVuZGV2KTsKKyAgICAgICAgfQorCisgICAgICAgIGlmICh4 ZW5kZXYtPmZlKSB7CisgICAgICAgICAgICBjaGFyIHRva2VuW1hFTl9CVUZTSVpFXTsKKyAgICAg ICAgICAgIHNucHJpbnRmKHRva2VuLCBzaXplb2YodG9rZW4pLCAiZmU6JXAiLCB4ZW5kZXYpOwor ICAgICAgICAgICAgeHNfdW53YXRjaCh4ZW5zdG9yZSwgeGVuZGV2LT5mZSwgdG9rZW4pOworICAg ICAgICAgICAgZ19mcmVlKHhlbmRldi0+ZmUpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKHhl bmRldi0+ZXZ0Y2huZGV2ICE9IE5VTEwpIHsKKyAgICAgICAgICAgIHhlbmV2dGNobl9jbG9zZSh4 ZW5kZXYtPmV2dGNobmRldik7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHhlbmRldi0+Z250dGFi ZGV2ICE9IE5VTEwpIHsKKyAgICAgICAgICAgIHhlbmdudHRhYl9jbG9zZSh4ZW5kZXYtPmdudHRh YmRldik7CisgICAgICAgIH0KKworICAgICAgICBRVEFJTFFfUkVNT1ZFKCZ4ZW5kZXZzLCB4ZW5k ZXYsIG5leHQpOworICAgICAgICBnX2ZyZWUoeGVuZGV2KTsKKyAgICB9CisgICAgcmV0dXJuIE5V TEw7Cit9CisKK3ZvaWQgeGVuX3B2X2luc2VydF94ZW5kZXYoc3RydWN0IFhlbkRldmljZSAqeGVu ZGV2KQoreworICAgIFFUQUlMUV9JTlNFUlRfVEFJTCgmeGVuZGV2cywgeGVuZGV2LCBuZXh0KTsK K30KZGlmZiAtLWdpdCBhL2luY2x1ZGUvaHcveGVuL3hlbl9iYWNrZW5kLmggYi9pbmNsdWRlL2h3 L3hlbi94ZW5fYmFja2VuZC5oCmluZGV4IDYwYjYzNGUuLjcxZGQxNTggMTAwNjQ0Ci0tLSBhL2lu Y2x1ZGUvaHcveGVuL3hlbl9iYWNrZW5kLmgKKysrIGIvaW5jbHVkZS9ody94ZW4veGVuX2JhY2tl bmQuaApAQCAtMjEsNyArMjEsNiBAQCBjaGFyICp4ZW5zdG9yZV9yZWFkX2JlX3N0cihzdHJ1Y3Qg WGVuRGV2aWNlICp4ZW5kZXYsIGNvbnN0IGNoYXIgKm5vZGUpOwogaW50IHhlbnN0b3JlX3JlYWRf YmVfaW50KHN0cnVjdCBYZW5EZXZpY2UgKnhlbmRldiwgY29uc3QgY2hhciAqbm9kZSwgaW50ICpp dmFsKTsKIHZvaWQgeGVuc3RvcmVfdXBkYXRlX2JlKGNoYXIgKndhdGNoLCBjaGFyICp0eXBlLCBp bnQgZG9tLCBzdHJ1Y3QgWGVuRGV2T3BzICpvcHMpOwogCi1zdHJ1Y3QgWGVuRGV2aWNlICp4ZW5f YmVfZmluZF94ZW5kZXYoY29uc3QgY2hhciAqdHlwZSwgaW50IGRvbSwgaW50IGRldik7CiB2b2lk IHhlbl9iZV9jaGVja19zdGF0ZShzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYpOwogCiAvKiB4ZW4g YmFja2VuZCBkcml2ZXIgYml0cyAqLwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9ody94ZW4veGVuX2Zy b250ZW5kLmggYi9pbmNsdWRlL2h3L3hlbi94ZW5fZnJvbnRlbmQuaAppbmRleCA3ZDg3ZGE0Li5h ZTU4N2UxIDEwMDY0NAotLS0gYS9pbmNsdWRlL2h3L3hlbi94ZW5fZnJvbnRlbmQuaAorKysgYi9p bmNsdWRlL2h3L3hlbi94ZW5fZnJvbnRlbmQuaApAQCAtMSw2ICsxLDggQEAKICNpZm5kZWYgUUVN VV9IV19YRU5fRlJPTlRFTkRfSAogI2RlZmluZSBRRU1VX0hXX1hFTl9GUk9OVEVORF9IIDEKIAor I2luY2x1ZGUgImh3L3hlbi94ZW5fcHZkZXYuaCIKKwogY2hhciAqeGVuc3RvcmVfcmVhZF9mZV9z dHIoc3RydWN0IFhlbkRldmljZSAqeGVuZGV2LCBjb25zdCBjaGFyICpub2RlKTsKIGludCB4ZW5z dG9yZV9yZWFkX2ZlX2ludChzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYsIGNvbnN0IGNoYXIgKm5v ZGUsIGludCAqaXZhbCk7CiBpbnQgeGVuc3RvcmVfcmVhZF9mZV91aW50NjQoc3RydWN0IFhlbkRl dmljZSAqeGVuZGV2LCBjb25zdCBjaGFyICpub2RlLCB1aW50NjRfdCAqdXZhbCk7CmRpZmYgLS1n aXQgYS9pbmNsdWRlL2h3L3hlbi94ZW5fcHZkZXYuaCBiL2luY2x1ZGUvaHcveGVuL3hlbl9wdmRl di5oCmluZGV4IGYyNjliMDQuLjIzNGUxMTEgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvaHcveGVuL3hl bl9wdmRldi5oCisrKyBiL2luY2x1ZGUvaHcveGVuL3hlbl9wdmRldi5oCkBAIC02Nyw2ICs2Nywx MCBAQCB2b2lkIHhlbnN0b3JlX3VwZGF0ZSh2b2lkICp1bnVzZWQpOwogY29uc3QgY2hhciAqeGVu YnVzX3N0cnN0YXRlKGVudW0geGVuYnVzX3N0YXRlIHN0YXRlKTsKIAogdm9pZCB4ZW5fYmVfZXZ0 Y2huX2V2ZW50KHZvaWQgKm9wYXF1ZSk7Cit2b2lkIHhlbl9wdl9pbnNlcnRfeGVuZGV2KHN0cnVj dCBYZW5EZXZpY2UgKnhlbmRldik7CitzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5fYmVfZGVsX3hlbmRl dihpbnQgZG9tLCBpbnQgZGV2KTsKK3N0cnVjdCBYZW5EZXZpY2UgKnhlbl9iZV9maW5kX3hlbmRl dihjb25zdCBjaGFyICp0eXBlLCBpbnQgZG9tLCBpbnQgZGV2KTsKKwogdm9pZCB4ZW5fYmVfdW5i aW5kX2V2dGNobihzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYpOwogaW50IHhlbl9iZV9zZW5kX25v dGlmeShzdHJ1Y3QgWGVuRGV2aWNlICp4ZW5kZXYpOwogCi0tIAoxLjkuMQoKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxp c3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZl bAo=