From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH v3 5/5] xenstore: use temporary memory context for firing watches Date: Tue, 19 Jul 2016 13:30:46 +0200 Message-ID: <1468927846-23676-6-git-send-email-jgross@suse.com> References: <1468927846-23676-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: <1468927846-23676-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: xen-devel@lists.xen.org Cc: Juergen Gross , wei.liu2@citrix.com, ian.jackson@eu.citrix.com List-Id: xen-devel@lists.xenproject.org VXNlIGEgdGVtcG9yYXJ5IG1lbW9yeSBjb250ZXh0IGZvciBtZW1vcnkgYWxsb2NhdGlvbnMgd2hl biBmaXJpbmcKd2F0Y2hlcy4gVGhpcyB3aWxsIGF2b2lkIGxlYWtpbmcgbWVtb3J5IGluIGNhc2Ug b2YgbG9uZyBsaXZpbmcKY29ubmVjdGlvbnMgYW5kL29yIHhlbnN0b3JlIGVudHJpZXMuCgpUaGlz IHJlcXVpcmVzIGFkZGluZyBhIG5ldyBwYXJhbWV0ZXIgdG8gZmlyZV93YXRjaGVzKCkgYW5kIGFk ZF9ldmVudCgpCnRvIHNwZWNpZnkgdGhlIG1lbW9yeSBjb250ZXh0IHRvIHVzZSBmb3IgYWxsb2Nh dGlvbnMuCgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+ClJl dmlld2VkLWJ5OiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgpBY2tlZC1ieTogSWFuIEph Y2tzb24gPGlhbi5qYWNrc29uQGV1LmNpdHJpeC5jb20+Ci0tLQogdG9vbHMveGVuc3RvcmUveGVu c3RvcmVkX2NvcmUuYyAgICAgICAgfCAgOCArKysrLS0tLQogdG9vbHMveGVuc3RvcmUveGVuc3Rv cmVkX2RvbWFpbi5jICAgICAgfCAgNiArKystLS0KIHRvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90 cmFuc2FjdGlvbi5jIHwgIDIgKy0KIHRvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF93YXRjaC5jICAg ICAgIHwgMjIgKysrKysrKysrKysrKysrKy0tLS0tLQogdG9vbHMveGVuc3RvcmUveGVuc3RvcmVk X3dhdGNoLmggICAgICAgfCAgMyArKy0KIDUgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygr KSwgMTUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVk X2NvcmUuYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9jb3JlLmMKaW5kZXggNDIzOTQxMC4u MTIzMjE2OSAxMDA2NDQKLS0tIGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2NvcmUuYworKysg Yi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfY29yZS5jCkBAIC05NjEsNyArOTYxLDcgQEAgc3Rh dGljIHZvaWQgZG9fd3JpdGUoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBidWZmZXJl ZF9kYXRhICppbikKIAl9CiAKIAlhZGRfY2hhbmdlX25vZGUoY29ubi0+dHJhbnNhY3Rpb24sIG5h bWUsIGZhbHNlKTsKLQlmaXJlX3dhdGNoZXMoY29ubiwgbmFtZSwgZmFsc2UpOworCWZpcmVfd2F0 Y2hlcyhjb25uLCBpbiwgbmFtZSwgZmFsc2UpOwogCXNlbmRfYWNrKGNvbm4sIFhTX1dSSVRFKTsK IH0KIApAQCAtOTg2LDcgKzk4Niw3IEBAIHN0YXRpYyB2b2lkIGRvX21rZGlyKHN0cnVjdCBjb25u ZWN0aW9uICpjb25uLCBzdHJ1Y3QgYnVmZmVyZWRfZGF0YSAqaW4pCiAJCQlyZXR1cm47CiAJCX0K IAkJYWRkX2NoYW5nZV9ub2RlKGNvbm4tPnRyYW5zYWN0aW9uLCBuYW1lLCBmYWxzZSk7Ci0JCWZp cmVfd2F0Y2hlcyhjb25uLCBuYW1lLCBmYWxzZSk7CisJCWZpcmVfd2F0Y2hlcyhjb25uLCBpbiwg bmFtZSwgZmFsc2UpOwogCX0KIAlzZW5kX2Fjayhjb25uLCBYU19NS0RJUik7CiB9CkBAIC0xMTEy LDcgKzExMTIsNyBAQCBzdGF0aWMgdm9pZCBkb19ybShzdHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwg c3RydWN0IGJ1ZmZlcmVkX2RhdGEgKmluKQogCiAJaWYgKF9ybShjb25uLCBub2RlLCBuYW1lKSkg ewogCQlhZGRfY2hhbmdlX25vZGUoY29ubi0+dHJhbnNhY3Rpb24sIG5hbWUsIHRydWUpOwotCQlm aXJlX3dhdGNoZXMoY29ubiwgbmFtZSwgdHJ1ZSk7CisJCWZpcmVfd2F0Y2hlcyhjb25uLCBpbiwg bmFtZSwgdHJ1ZSk7CiAJCXNlbmRfYWNrKGNvbm4sIFhTX1JNKTsKIAl9CiB9CkBAIC0xMTg4LDcg KzExODgsNyBAQCBzdGF0aWMgdm9pZCBkb19zZXRfcGVybXMoc3RydWN0IGNvbm5lY3Rpb24gKmNv bm4sIHN0cnVjdCBidWZmZXJlZF9kYXRhICppbikKIAl9CiAKIAlhZGRfY2hhbmdlX25vZGUoY29u bi0+dHJhbnNhY3Rpb24sIG5hbWUsIGZhbHNlKTsKLQlmaXJlX3dhdGNoZXMoY29ubiwgbmFtZSwg ZmFsc2UpOworCWZpcmVfd2F0Y2hlcyhjb25uLCBpbiwgbmFtZSwgZmFsc2UpOwogCXNlbmRfYWNr KGNvbm4sIFhTX1NFVF9QRVJNUyk7CiB9CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL3hlbnN0b3JlL3hl bnN0b3JlZF9kb21haW4uYyBiL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF9kb21haW4uYwppbmRl eCBjNjY1MzlhLi41ZGU5M2Q0IDEwMDY0NAotLS0gYS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRf ZG9tYWluLmMKKysrIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX2RvbWFpbi5jCkBAIC0yMDQs NyArMjA0LDcgQEAgc3RhdGljIGludCBkZXN0cm95X2RvbWFpbih2b2lkICpfZG9tYWluKQogCQkJ dW5tYXBfaW50ZXJmYWNlKGRvbWFpbi0+aW50ZXJmYWNlKTsKIAl9CiAKLQlmaXJlX3dhdGNoZXMo TlVMTCwgIkByZWxlYXNlRG9tYWluIiwgZmFsc2UpOworCWZpcmVfd2F0Y2hlcyhOVUxMLCBkb21h aW4sICJAcmVsZWFzZURvbWFpbiIsIGZhbHNlKTsKIAogCXJldHVybiAwOwogfQpAQCAtMjMyLDcg KzIzMiw3IEBAIHN0YXRpYyB2b2lkIGRvbWFpbl9jbGVhbnVwKHZvaWQpCiAJfQogCiAJaWYgKG5v dGlmeSkKLQkJZmlyZV93YXRjaGVzKE5VTEwsICJAcmVsZWFzZURvbWFpbiIsIGZhbHNlKTsKKwkJ ZmlyZV93YXRjaGVzKE5VTEwsIE5VTEwsICJAcmVsZWFzZURvbWFpbiIsIGZhbHNlKTsKIH0KIAog LyogV2Ugc2NhbiBhbGwgZG9tYWlucyByYXRoZXIgdGhhbiB1c2UgdGhlIGluZm9ybWF0aW9uIGdp dmVuIGhlcmUuICovCkBAIC0zODksNyArMzg5LDcgQEAgdm9pZCBkb19pbnRyb2R1Y2Uoc3RydWN0 IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBidWZmZXJlZF9kYXRhICppbikKIAkJLyogTm93IGRv bWFpbiBiZWxvbmdzIHRvIGl0cyBjb25uZWN0aW9uLiAqLwogCQl0YWxsb2Nfc3RlYWwoZG9tYWlu LT5jb25uLCBkb21haW4pOwogCi0JCWZpcmVfd2F0Y2hlcyhOVUxMLCAiQGludHJvZHVjZURvbWFp biIsIGZhbHNlKTsKKwkJZmlyZV93YXRjaGVzKE5VTEwsIGluLCAiQGludHJvZHVjZURvbWFpbiIs IGZhbHNlKTsKIAl9IGVsc2UgaWYgKChkb21haW4tPm1mbiA9PSBtZm4pICYmIChkb21haW4tPmNv bm4gIT0gY29ubikpIHsKIAkJLyogVXNlIFhTX0lOVFJPRFVDRSBmb3IgcmVjcmVhdGluZyB0aGUg eGVuYnVzIGV2ZW50LWNoYW5uZWwuICovCiAJCWlmIChkb21haW4tPnBvcnQpCmRpZmYgLS1naXQg YS90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRfdHJhbnNhY3Rpb24uYyBiL3Rvb2xzL3hlbnN0b3Jl L3hlbnN0b3JlZF90cmFuc2FjdGlvbi5jCmluZGV4IDNjZGUyNmUuLjM0NzIwZmEgMTAwNjQ0Ci0t LSBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF90cmFuc2FjdGlvbi5jCisrKyBiL3Rvb2xzL3hl bnN0b3JlL3hlbnN0b3JlZF90cmFuc2FjdGlvbi5jCkBAIC0yMjcsNyArMjI3LDcgQEAgdm9pZCBk b190cmFuc2FjdGlvbl9lbmQoc3RydWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBidWZmZXJl ZF9kYXRhICppbikKIAogCQkvKiBGaXJlIG9mZiB0aGUgd2F0Y2hlcyBmb3IgZXZlcnl0aGluZyB0 aGF0IGNoYW5nZWQuICovCiAJCWxpc3RfZm9yX2VhY2hfZW50cnkoaSwgJnRyYW5zLT5jaGFuZ2Vz LCBsaXN0KQotCQkJZmlyZV93YXRjaGVzKGNvbm4sIGktPm5vZGUsIGktPnJlY3Vyc2UpOworCQkJ ZmlyZV93YXRjaGVzKGNvbm4sIGluLCBpLT5ub2RlLCBpLT5yZWN1cnNlKTsKIAkJZ2VuZXJhdGlv bisrOwogCX0KIAlzZW5kX2Fjayhjb25uLCBYU19UUkFOU0FDVElPTl9FTkQpOwpkaWZmIC0tZ2l0 IGEvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVkX3dhdGNoLmMgYi90b29scy94ZW5zdG9yZS94ZW5z dG9yZWRfd2F0Y2guYwppbmRleCBiZWVmZDZjLi44NTY3NTBlIDEwMDY0NAotLS0gYS90b29scy94 ZW5zdG9yZS94ZW5zdG9yZWRfd2F0Y2guYworKysgYi90b29scy94ZW5zdG9yZS94ZW5zdG9yZWRf d2F0Y2guYwpAQCAtNDcsNyArNDcsMTIgQEAgc3RydWN0IHdhdGNoCiAJY2hhciAqbm9kZTsKIH07 CiAKKy8qCisgKiBTZW5kIGEgd2F0Y2ggZXZlbnQuCisgKiBUZW1wb3JhcnkgbWVtb3J5IGFsbG9j YXRpb25zIGFyZSBkb25lIHdpdGggY3R4LgorICovCiBzdGF0aWMgdm9pZCBhZGRfZXZlbnQoc3Ry dWN0IGNvbm5lY3Rpb24gKmNvbm4sCisJCSAgICAgIHZvaWQgKmN0eCwKIAkJICAgICAgc3RydWN0 IHdhdGNoICp3YXRjaCwKIAkJICAgICAgY29uc3QgY2hhciAqbmFtZSkKIHsKQEAgLTU3LDcgKzYy LDcgQEAgc3RhdGljIHZvaWQgYWRkX2V2ZW50KHN0cnVjdCBjb25uZWN0aW9uICpjb25uLAogCiAJ aWYgKCFjaGVja19ldmVudF9ub2RlKG5hbWUpKSB7CiAJCS8qIENhbiB0aGlzIGNvbm4gbG9hZCBu b2RlLCBvciBzZWUgdGhhdCBpdCBkb2Vzbid0IGV4aXN0PyAqLwotCQlzdHJ1Y3Qgbm9kZSAqbm9k ZSA9IGdldF9ub2RlKGNvbm4sIG5hbWUsIG5hbWUsIFhTX1BFUk1fUkVBRCk7CisJCXN0cnVjdCBu b2RlICpub2RlID0gZ2V0X25vZGUoY29ubiwgY3R4LCBuYW1lLCBYU19QRVJNX1JFQUQpOwogCQkv KgogCQkgKiBYWFggV2UgYWxsb3cgRUFDQ0VTIGhlcmUgYmVjYXVzZSBvdGhlcndpc2UgYSBub24t ZG9tMAogCQkgKiBiYWNrZW5kIGRyaXZlciBjYW5ub3Qgd2F0Y2ggZm9yIGRpc2FwcGVhcmFuY2Ug b2YgYSBmcm9udGVuZApAQCAtNzgsMTQgKzgzLDE5IEBAIHN0YXRpYyB2b2lkIGFkZF9ldmVudChz dHJ1Y3QgY29ubmVjdGlvbiAqY29ubiwKIAl9CiAKIAlsZW4gPSBzdHJsZW4obmFtZSkgKyAxICsg c3RybGVuKHdhdGNoLT50b2tlbikgKyAxOwotCWRhdGEgPSB0YWxsb2NfYXJyYXkod2F0Y2gsIGNo YXIsIGxlbik7CisJZGF0YSA9IHRhbGxvY19hcnJheShjdHgsIGNoYXIsIGxlbik7CiAJc3RyY3B5 KGRhdGEsIG5hbWUpOwogCXN0cmNweShkYXRhICsgc3RybGVuKG5hbWUpICsgMSwgd2F0Y2gtPnRv a2VuKTsKIAlzZW5kX3JlcGx5KGNvbm4sIFhTX1dBVENIX0VWRU5ULCBkYXRhLCBsZW4pOwogCXRh bGxvY19mcmVlKGRhdGEpOwogfQogCi12b2lkIGZpcmVfd2F0Y2hlcyhzdHJ1Y3QgY29ubmVjdGlv biAqY29ubiwgY29uc3QgY2hhciAqbmFtZSwgYm9vbCByZWN1cnNlKQorLyoKKyAqIENoZWNrIHdo ZXRoZXIgYW55IHdhdGNoIGV2ZW50cyBhcmUgdG8gYmUgc2VudC4KKyAqIFRlbXBvcmFyeSBtZW1v cnkgYWxsb2NhdGlvbnMgYXJlIGRvbmUgd2l0aCBjdHguCisgKi8KK3ZvaWQgZmlyZV93YXRjaGVz KHN0cnVjdCBjb25uZWN0aW9uICpjb25uLCB2b2lkICpjdHgsIGNvbnN0IGNoYXIgKm5hbWUsCisJ CSAgYm9vbCByZWN1cnNlKQogewogCXN0cnVjdCBjb25uZWN0aW9uICppOwogCXN0cnVjdCB3YXRj aCAqd2F0Y2g7CkBAIC05OCw5ICsxMDgsOSBAQCB2b2lkIGZpcmVfd2F0Y2hlcyhzdHJ1Y3QgY29u bmVjdGlvbiAqY29ubiwgY29uc3QgY2hhciAqbmFtZSwgYm9vbCByZWN1cnNlKQogCWxpc3RfZm9y X2VhY2hfZW50cnkoaSwgJmNvbm5lY3Rpb25zLCBsaXN0KSB7CiAJCWxpc3RfZm9yX2VhY2hfZW50 cnkod2F0Y2gsICZpLT53YXRjaGVzLCBsaXN0KSB7CiAJCQlpZiAoaXNfY2hpbGQobmFtZSwgd2F0 Y2gtPm5vZGUpKQotCQkJCWFkZF9ldmVudChpLCB3YXRjaCwgbmFtZSk7CisJCQkJYWRkX2V2ZW50 KGksIGN0eCwgd2F0Y2gsIG5hbWUpOwogCQkJZWxzZSBpZiAocmVjdXJzZSAmJiBpc19jaGlsZCh3 YXRjaC0+bm9kZSwgbmFtZSkpCi0JCQkJYWRkX2V2ZW50KGksIHdhdGNoLCB3YXRjaC0+bm9kZSk7 CisJCQkJYWRkX2V2ZW50KGksIGN0eCwgd2F0Y2gsIHdhdGNoLT5ub2RlKTsKIAkJfQogCX0KIH0K QEAgLTE2OSw3ICsxNzksNyBAQCB2b2lkIGRvX3dhdGNoKHN0cnVjdCBjb25uZWN0aW9uICpjb25u LCBzdHJ1Y3QgYnVmZmVyZWRfZGF0YSAqaW4pCiAJc2VuZF9hY2soY29ubiwgWFNfV0FUQ0gpOwog CiAJLyogV2UgZmlyZSBvbmNlIHVwIGZyb250OiBzaW1wbGlmaWVzIGNsaWVudHMgYW5kIHJlc3Rh cnQuICovCi0JYWRkX2V2ZW50KGNvbm4sIHdhdGNoLCB3YXRjaC0+bm9kZSk7CisJYWRkX2V2ZW50 KGNvbm4sIGluLCB3YXRjaCwgd2F0Y2gtPm5vZGUpOwogfQogCiB2b2lkIGRvX3Vud2F0Y2goc3Ry dWN0IGNvbm5lY3Rpb24gKmNvbm4sIHN0cnVjdCBidWZmZXJlZF9kYXRhICppbikKZGlmZiAtLWdp dCBhL3Rvb2xzL3hlbnN0b3JlL3hlbnN0b3JlZF93YXRjaC5oIGIvdG9vbHMveGVuc3RvcmUveGVu c3RvcmVkX3dhdGNoLmgKaW5kZXggNWJjNGY4OC4uOGVkMWRkZSAxMDA2NDQKLS0tIGEvdG9vbHMv eGVuc3RvcmUveGVuc3RvcmVkX3dhdGNoLmgKKysrIGIvdG9vbHMveGVuc3RvcmUveGVuc3RvcmVk X3dhdGNoLmgKQEAgLTI1LDcgKzI1LDggQEAgdm9pZCBkb193YXRjaChzdHJ1Y3QgY29ubmVjdGlv biAqY29ubiwgc3RydWN0IGJ1ZmZlcmVkX2RhdGEgKmluKTsKIHZvaWQgZG9fdW53YXRjaChzdHJ1 Y3QgY29ubmVjdGlvbiAqY29ubiwgc3RydWN0IGJ1ZmZlcmVkX2RhdGEgKmluKTsKIAogLyogRmly ZSBhbGwgd2F0Y2hlczogcmVjdXJzZSBtZWFucyBhbGwgdGhlIGNoaWxkcmVuIGFyZSBhZmZlY3Rl ZCAoaWUuIHJtKS4gKi8KLXZvaWQgZmlyZV93YXRjaGVzKHN0cnVjdCBjb25uZWN0aW9uICpjb25u LCBjb25zdCBjaGFyICpuYW1lLCBib29sIHJlY3Vyc2UpOwordm9pZCBmaXJlX3dhdGNoZXMoc3Ry dWN0IGNvbm5lY3Rpb24gKmNvbm4sIHZvaWQgKnRtcCwgY29uc3QgY2hhciAqbmFtZSwKKwkJICBi b29sIHJlY3Vyc2UpOwogCiB2b2lkIGR1bXBfd2F0Y2hlcyhzdHJ1Y3QgY29ubmVjdGlvbiAqY29u bik7CiAKLS0gCjIuNi42CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpo dHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==