From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: [PATCH v6 1/6] livepatch: Disallow applying after an revert Date: Fri, 16 Sep 2016 11:29:09 -0400 Message-ID: <1474039754-25816-2-git-send-email-konrad.wilk@oracle.com> References: <1474039754-25816-1-git-send-email-konrad.wilk@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bkv4w-0003xT-Fn for xen-devel@lists.xenproject.org; Fri, 16 Sep 2016 15:29:26 +0000 In-Reply-To: <1474039754-25816-1-git-send-email-konrad.wilk@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.xenproject.org, konrad@kernel.org, ross.lagerwall@citrix.com, andrew.cooper3@citrix.com Cc: Jan Beulich , Konrad Rzeszutek Wilk List-Id: xen-devel@lists.xenproject.org T24gZ2VuZXJhbCB0aGlzIGlzIHVuaGVhbHRoeSAtIGFzIHRoZSBwYXlsb2FkJ3MgLmJzcyAoZGVm aW5pdGx5KQpvciAuZGF0YSAobWF5YmUpIHdpbGwgYmUgbW9kaWZpZWQgb25jZSB0aGUgcGF5bG9h ZCBpcyBydW5uaW5nLgoKRG9pbmcgYW4gcmV2ZXJ0IGFuZCB0aGVuIHJlLWFwcGx5aW5nIHRoZSBw YXlsb2FkIHdpdGggYSBub24tcHJpc3RpbmUKLmJzcyBvciAuZGF0YSBjYW4gbGVhZCB0byB1bmZv cnNlZW4gY29uc2VxdWVuY2VzICguYnNzIGFyZSBhc3N1bWVkCnRvIGFsd2F5cyBjb250YWluIHpl cm8gdmFsdWUgYnV0IG5vdyB0aGV5IG1heSBoYXZlIGEgZGlmZmVyZW50IHZhbHVlKS4KClRoZXJl IGlzIG9uZSBleGNlcHRpb24gLSBpZiB0aGUgcGF5bG9hZCBjb250YWlucyBvbmx5IG9uZSAuZGF0 YSBzZWN0aW9uCi0gdGhlIC5saXZlcGF0Y2guZnVuY3MsIHRoZW4gaXQgaXMgT0sgdG8gcmUtYXBw bHkgYW4gcmV2ZXJ0LgoKU3VnZ2VzdGVkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5j b20+ClNpZ25lZC1vZmYtYnk6IEtvbnJhZCBSemVzenV0ZWsgV2lsayA8a29ucmFkLndpbGtAb3Jh Y2xlLmNvbT4KCi0tLQpDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNv bT4KQ2M6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KCnY2OiBOZXcgc3VibWlzc2lv bgotLS0KIGRvY3MvbWlzYy9saXZlcGF0Y2gubWFya2Rvd24gfCAgNyArKysrKysrCiB4ZW4vY29t bW9uL2xpdmVwYXRjaC5jICAgICAgIHwgMjcgKysrKysrKysrKysrKysrKysrKysrKysrKystCiAy IGZpbGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9kb2NzL21pc2MvbGl2ZXBhdGNoLm1hcmtkb3duIGIvZG9jcy9taXNjL2xpdmVwYXRjaC5t YXJrZG93bgppbmRleCA4OWMxMDUwLi44MWY0ZmM5IDEwMDY0NAotLS0gYS9kb2NzL21pc2MvbGl2 ZXBhdGNoLm1hcmtkb3duCisrKyBiL2RvY3MvbWlzYy9saXZlcGF0Y2gubWFya2Rvd24KQEAgLTEw NjEsNiArMTA2MSwxMyBAQCBkZXBlbmRpbmcgb24gdGhlIGN1cnJlbnQgc3RhdGUgb2YgZGF0YS4g QXMgc3VjaCBpdCBzaG91bGQgbm90IGJlIGF0dGVtcHRlZC4KIFRoYXQgc2FpZCB3ZSBzaG91bGQg cHJvdmlkZSBob29rIGZ1bmN0aW9ucyBzbyB0aGF0IHRoZSBleGlzdGluZyBkYXRhCiBjYW4gYmUg Y2hhbmdlZCBkdXJpbmcgcGF5bG9hZCBhcHBsaWNhdGlvbi4KIAorVG8gZ3VhcmFudGVlIHNhZmV0 eSB3ZSBkaXNhbGxvdyByZS1hcHBseWluZyBhbiBwYXlsb2FkIGFmdGVyIGl0IGhhcyBiZWVuCity ZXZlcnRlZC4gVGhpcyBpcyBiZWNhdXNlIHdlIGNhbm5vdCBndWFyYW50ZWUgdGhhdCB0aGUgc3Rh dGUgb2YgLmJzcworYW5kIC5kYXRhIHRvIGJlIGV4YWN0bHkgYXMgaXQgd2FzIGR1cmluZyBsb2Fk aW5nLiBIZW5jZSB0aGUgYWRtaW5pc3RyYXRvcgorTVVTVCB1bmxvYWQgdGhlIHBheWxvYWQgYW5k IHVwbG9hZCBpdCBhZ2FpbiB0byBhcHBseSBpdC4KKworVGhlcmUgaXMgYW4gZXhjZXB0aW9uIHRv IHRoaXM6IGlmIHRoZSBwYXlsb2FkIG9ubHkgaGFzIC5saXZlcGF0Y2guZnVuY3M7CithbmQgbm8g LmRhdGEgb3IgLmJzcyBzZWN0aW9ucy4KIAogIyMjIElubGluZSBwYXRjaGluZwogCmRpZmYgLS1n aXQgYS94ZW4vY29tbW9uL2xpdmVwYXRjaC5jIGIveGVuL2NvbW1vbi9saXZlcGF0Y2guYwppbmRl eCAyM2U0ZDUxLi45Njc5ODVjIDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL2xpdmVwYXRjaC5jCisr KyBiL3hlbi9jb21tb24vbGl2ZXBhdGNoLmMKQEAgLTUyLDYgKzUyLDggQEAgc3RydWN0IGxpdmVw YXRjaF9idWlsZF9pZCB7CiBzdHJ1Y3QgcGF5bG9hZCB7CiAgICAgdWludDMyX3Qgc3RhdGU7ICAg ICAgICAgICAgICAgICAgICAgIC8qIE9uZSBvZiB0aGUgTElWRVBBVENIX1NUQVRFXyouICovCiAg ICAgaW50MzJfdCByYzsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIDAgb3IgLVhFTl9FWFgu ICovCisgICAgYm9vbF90IHJldmVydGVkOyAgICAgICAgICAgICAgICAgICAgIC8qIFdoZXRoZXIg aXQgd2FzIHJldmVydGVkLiAqLworICAgIGJvb2xfdCBzYWZlX3RvX3JlYXBwbHk7ICAgICAgICAg ICAgICAvKiBDYW4gYXBwbHkgc2FmZWx5IGFmdGVyIHJldmVydC4gKi8KICAgICBzdHJ1Y3QgbGlz dF9oZWFkIGxpc3Q7ICAgICAgICAgICAgICAgLyogTGlua2VkIHRvICdwYXlsb2FkX2xpc3QnLiAq LwogICAgIGNvbnN0IHZvaWQgKnRleHRfYWRkcjsgICAgICAgICAgICAgICAvKiBWaXJ0dWFsIGFk ZHJlc3Mgb2YgLnRleHQuICovCiAgICAgc2l6ZV90IHRleHRfc2l6ZTsgICAgICAgICAgICAgICAg ICAgIC8qIC4uIGFuZCBpdHMgc2l6ZS4gKi8KQEAgLTMwOCw3ICszMTAsNyBAQCBzdGF0aWMgdm9p ZCBjYWxjX3NlY3Rpb24oY29uc3Qgc3RydWN0IGxpdmVwYXRjaF9lbGZfc2VjICpzZWMsIHNpemVf dCAqc2l6ZSwKIHN0YXRpYyBpbnQgbW92ZV9wYXlsb2FkKHN0cnVjdCBwYXlsb2FkICpwYXlsb2Fk LCBzdHJ1Y3QgbGl2ZXBhdGNoX2VsZiAqZWxmKQogewogICAgIHZvaWQgKnRleHRfYnVmLCAqcm9f YnVmLCAqcndfYnVmOwotICAgIHVuc2lnbmVkIGludCBpOworICAgIHVuc2lnbmVkIGludCBpLCBy d19idWZfc2VjLCByd19idWZfY250ID0gMDsKICAgICBzaXplX3Qgc2l6ZSA9IDA7CiAgICAgdW5z aWduZWQgaW50ICpvZmZzZXQ7CiAgICAgaW50IHJjID0gMDsKQEAgLTM4MSw3ICszODMsMTEgQEAg c3RhdGljIGludCBtb3ZlX3BheWxvYWQoc3RydWN0IHBheWxvYWQgKnBheWxvYWQsIHN0cnVjdCBs aXZlcGF0Y2hfZWxmICplbGYpCiAgICAgICAgICAgICBpZiAoIGVsZi0+c2VjW2ldLnNlYy0+c2hf ZmxhZ3MgJiBTSEZfRVhFQ0lOU1RSICkKICAgICAgICAgICAgICAgICBidWYgPSB0ZXh0X2J1ZjsK ICAgICAgICAgICAgIGVsc2UgaWYgKCBlbGYtPnNlY1tpXS5zZWMtPnNoX2ZsYWdzICYgU0hGX1dS SVRFICkKKyAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBidWYgPSByd19idWY7CisgICAg ICAgICAgICAgICAgcndfYnVmX3NlYyA9IGk7CisgICAgICAgICAgICAgICAgcndfYnVmX2NudCsr OworICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIGJ1ZiA9 IHJvX2J1ZjsKIApAQCAtNDAyLDYgKzQwOCwxMCBAQCBzdGF0aWMgaW50IG1vdmVfcGF5bG9hZChz dHJ1Y3QgcGF5bG9hZCAqcGF5bG9hZCwgc3RydWN0IGxpdmVwYXRjaF9lbGYgKmVsZikKICAgICAg ICAgfQogICAgIH0KIAorICAgIC8qIE5vIC5ic3MgYW5kIG5vIC5kYXRhLCBhbmQgb25seSBvbiBS VyAtIC5saXZlcGF0Y2guZnVuY3Mgc2VjdGlvbi4gKi8KKyAgICBpZiAoIHJ3X2J1Zl9jbnQgPT0g MSAmJgorICAgICAgICAgIXN0cmNtcChlbGYtPnNlY1tyd19idWZfc2VjXS5uYW1lLCBFTEZfTElW RVBBVENIX0ZVTkMpICkKKyAgICAgICAgcGF5bG9hZC0+c2FmZV90b19yZWFwcGx5ID0gdHJ1ZTsK ICBvdXQ6CiAgICAgeGZyZWUob2Zmc2V0KTsKIApAQCAtMTA1Nyw2ICsxMDY3LDcgQEAgc3RhdGlj IGludCByZXZlcnRfcGF5bG9hZChzdHJ1Y3QgcGF5bG9hZCAqZGF0YSkKICAgICBsaXN0X2RlbF9y Y3UoJmRhdGEtPmFwcGxpZWRfbGlzdCk7CiAgICAgdW5yZWdpc3Rlcl92aXJ0dWFsX3JlZ2lvbigm ZGF0YS0+cmVnaW9uKTsKIAorICAgIGRhdGEtPnJldmVydGVkID0gdHJ1ZTsKICAgICByZXR1cm4g MDsKIH0KIApAQCAtMTQzOCw2ICsxNDQ5LDIwIEBAIHN0YXRpYyBpbnQgbGl2ZXBhdGNoX2FjdGlv bih4ZW5fc3lzY3RsX2xpdmVwYXRjaF9hY3Rpb25fdCAqYWN0aW9uKQogICAgIGNhc2UgTElWRVBB VENIX0FDVElPTl9BUFBMWToKICAgICAgICAgaWYgKCBkYXRhLT5zdGF0ZSA9PSBMSVZFUEFUQ0hf U1RBVEVfQ0hFQ0tFRCApCiAgICAgICAgIHsKKyAgICAgICAgICAgIC8qCisgICAgICAgICAgICAg KiBJdCBpcyB1bnNhZmUgdG8gYXBwbHkgYW4gcmV2ZXJ0ZWQgcGF5bG9hZCBhcyB0aGUgLmRhdGEg KG9yIC5ic3MpCisgICAgICAgICAgICAgKiBtYXkgbm90IGJlIGluIGluIHByaXN0aW5lIGNvbmRp dGlvbi4gSGVuY2UgTVVTVCB1bmxvYWQgYW5kIHRoZW4KKyAgICAgICAgICAgICAqIGFwcGx5IHBh dGNoIGFnYWluLiBVbmxlc3MgdGhlIHBheWxvYWQgaGFzIG5vIC5ic3Mgb3Igb25seSBvbmUKKyAg ICAgICAgICAgICAqIFJXIHNlY3Rpb24gKC5saXZlcGF0Y2guZnVuY3MpLgorICAgICAgICAgICAg ICovCisgICAgICAgICAgICBpZiAoIGRhdGEtPnJldmVydGVkICYmICFkYXRhLT5zYWZlX3RvX3Jl YXBwbHkgKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRwcmludGsoWEVOTE9HX0VS UiwgIiVzJXM6IGNhbid0IHJldmVydCBhcyBwYXlsb2FkIGhhcyAuZGF0YS4gUGxlYXNlIHVubG9h ZCFcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICBMSVZFUEFUQ0gsIGRhdGEtPm5hbWUpOwor ICAgICAgICAgICAgICAgIGRhdGEtPnJjID0gLUVJTlZBTDsKKyAgICAgICAgICAgICAgICBicmVh azsKKyAgICAgICAgICAgIH0KKwogICAgICAgICAgICAgcmMgPSBidWlsZF9pZF9kZXAoZGF0YSwg ISFsaXN0X2VtcHR5KCZhcHBsaWVkX2xpc3QpKTsKICAgICAgICAgICAgIGlmICggcmMgKQogICAg ICAgICAgICAgICAgIGJyZWFrOwotLSAKMi41LjUKCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK