From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: [PATCH v2 2/5] livepatch: Include sizes when an mismatch occurs Date: Wed, 26 Jul 2017 15:47:53 -0400 Message-ID: <20170726194756.20265-3-konrad@kernel.org> References: <20170726194756.20265-1-konrad@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1daSIW-0008Tv-MK for xen-devel@lists.xenproject.org; Wed, 26 Jul 2017 19:48:44 +0000 Received: by mail-qk0-f195.google.com with SMTP id v76so4786613qka.5 for ; Wed, 26 Jul 2017 12:48:43 -0700 (PDT) In-Reply-To: <20170726194756.20265-1-konrad@kernel.org> 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, julien.grall@arm.com, sstabellini@kernel.org, andrew.cooper3@citrix.com Cc: jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org RnJvbTogS29ucmFkIFJ6ZXN6dXRlayBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29tPgoKSWYg dGhlIC5idWcuZnJhbWVzLlggb3IgLmxpdmVwYXRjaC5mdW5jcyBzaXplcyBhcmUgZGlmZmVyZW50 CnRoYW4gd2hhdCB0aGUgaHlwZXJ2aXNvciBleHBlY3RzIC0gd2UgZmFpbCB0aGUgcGF5bG9hZC4g VG8gaGVscAppbiBkaWFnbm9zaW5nIHRoaXMgaW5jbHVkZSB0aGUgZXhwZWN0ZWQgYW5kIHRoZSBw YXlsb2FkCnNpemVzLgoKQWxzbyBtYWtlIGl0IG1vcmUgbmF0dXJhbCBieSBoYXZpbmcgIk11bHRp cGxlcyIgaW4gdGhlIHdhcm5pbmcuCgpTaWduZWQtb2ZmLWJ5OiBLb25yYWQgUnplc3p1dGVrIFdp bGsgPGtvbnJhZC53aWxrQG9yYWNsZS5jb20+Ci0tLQp2MTogSW5pdGlhbCB2ZXJzaW9uCnYyOiAt IENoYW5nZWQgdG8gJ011bHRpcGxlJyBwZXIgSmFuJ3MgcmVjb21tZW5kYXRpb24uCiAgICAtIEZv bGRlZCB0aGUgY2hlY2tzIGluICdjaGVja19zaXplJyBmdW5jdGlvbiBhbmQgcmVtb3ZlZCBhbGwg dGhlIG90aGVyCiAgICAgIHBhcnRzIG9mIGNvZGUgdGhhdCBjaGVja2VkIGZvciB0aGlzLgotLS0K IHhlbi9jb21tb24vbGl2ZXBhdGNoLmMgICAgICAgfCA0OCArKysrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogeGVuL2luY2x1ZGUveGVuL2VsZnN0cnVjdHMuaCB8ICAy ICsrCiAyIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vbGl2ZXBhdGNoLmMgYi94ZW4vY29tbW9uL2xpdmVwYXRj aC5jCmluZGV4IDY2ZDUzMmRiMTQuLjQwZmY2YjNhMjcgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24v bGl2ZXBhdGNoLmMKKysrIGIveGVuL2NvbW1vbi9saXZlcGF0Y2guYwpAQCAtNDU3LDYgKzQ1Nywy NCBAQCBzdGF0aWMgaW50IHNlY3VyZV9wYXlsb2FkKHN0cnVjdCBwYXlsb2FkICpwYXlsb2FkLCBz dHJ1Y3QgbGl2ZXBhdGNoX2VsZiAqZWxmKQogICAgIHJldHVybiByYzsKIH0KIAorc3RhdGljIGlu dCBjaGVja19zZWN0aW9uKGNvbnN0IHN0cnVjdCBsaXZlcGF0Y2hfZWxmICplbGYsCisgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGxpdmVwYXRjaF9lbGZfc2VjICpzZWMsCisg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2l6ZV90IHN6LCBib29sIHplcm9fb2spCit7 CisgICAgaWYgKCAhZWxmIHx8ICFzZWMgKQorICAgICAgICByZXR1cm4gLUVJTlZBTDsKKworICAg IGlmICggKCFzZWMtPnNlYy0+c2hfc2l6ZSAmJiAhemVyb19vaykgfHwKKyAgICAgICAgKHNlYy0+ c2VjLT5zaF9zaXplICUgc3opICkKKyAgICB7CisgICAgICAgIGRwcmludGsoWEVOTE9HX0VSUiwg TElWRVBBVENIICIlczogV3Jvbmcgc2l6ZSAlIlBSSXVFbGZXb3JkIiBvZiAlcyAobXVzdCBiZSBt dWx0aXBsZSBvZiAlenUpXG4iLAorICAgICAgICAgICAgICAgIGVsZi0+bmFtZSwgc2VjLT5zZWMt PnNoX3NpemUsIHNlYy0+bmFtZSwgc3opOworICAgICAgICByZXR1cm4gLUVJTlZBTDsKKyAgICB9 CisKKyAgICByZXR1cm4gMDsKK30KKwogc3RhdGljIGludCBjaGVja19zcGVjaWFsX3NlY3Rpb25z KGNvbnN0IHN0cnVjdCBsaXZlcGF0Y2hfZWxmICplbGYpCiB7CiAgICAgdW5zaWduZWQgaW50IGk7 CkBAIC01MDYsMTIgKzUyNCw4IEBAIHN0YXRpYyBpbnQgcHJlcGFyZV9wYXlsb2FkKHN0cnVjdCBw YXlsb2FkICpwYXlsb2FkLAogCiAgICAgc2VjID0gbGl2ZXBhdGNoX2VsZl9zZWNfYnlfbmFtZShl bGYsIEVMRl9MSVZFUEFUQ0hfRlVOQyk7CiAgICAgQVNTRVJUKHNlYyk7Ci0gICAgaWYgKCBzZWMt PnNlYy0+c2hfc2l6ZSAlIHNpemVvZigqcGF5bG9hZC0+ZnVuY3MpICkKLSAgICB7Ci0gICAgICAg IGRwcmludGsoWEVOTE9HX0VSUiwgTElWRVBBVENIICIlczogV3Jvbmcgc2l6ZSBvZiAiRUxGX0xJ VkVQQVRDSF9GVU5DIiFcbiIsCi0gICAgICAgICAgICAgICAgZWxmLT5uYW1lKTsKKyAgICBpZiAo IGNoZWNrX3NlY3Rpb24oZWxmLCBzZWMsIHNpemVvZigqcGF5bG9hZC0+ZnVuY3MpLCB0cnVlKSAp CiAgICAgICAgIHJldHVybiAtRUlOVkFMOwotICAgIH0KIAogICAgIHBheWxvYWQtPmZ1bmNzID0g c2VjLT5sb2FkX2FkZHI7CiAgICAgcGF5bG9hZC0+bmZ1bmNzID0gc2VjLT5zZWMtPnNoX3NpemUg LyBzaXplb2YoKnBheWxvYWQtPmZ1bmNzKTsKQEAgLTU1Myw3ICs1NjcsNyBAQCBzdGF0aWMgaW50 IHByZXBhcmVfcGF5bG9hZChzdHJ1Y3QgcGF5bG9hZCAqcGF5bG9hZCwKICAgICBzZWMgPSBsaXZl cGF0Y2hfZWxmX3NlY19ieV9uYW1lKGVsZiwgIi5saXZlcGF0Y2guaG9va3MubG9hZCIpOwogICAg IGlmICggc2VjICkKICAgICB7Ci0gICAgICAgIGlmICggc2VjLT5zZWMtPnNoX3NpemUgJSBzaXpl b2YoKnBheWxvYWQtPmxvYWRfZnVuY3MpICkKKyAgICAgICAgaWYgKCBjaGVja19zZWN0aW9uKGVs Ziwgc2VjLCBzaXplb2YoKnBheWxvYWQtPmxvYWRfZnVuY3MpLCB0cnVlKSApCiAgICAgICAgICAg ICByZXR1cm4gLUVJTlZBTDsKIAogICAgICAgICBwYXlsb2FkLT5sb2FkX2Z1bmNzID0gc2VjLT5s b2FkX2FkZHI7CkBAIC01NjMsNyArNTc3LDcgQEAgc3RhdGljIGludCBwcmVwYXJlX3BheWxvYWQo c3RydWN0IHBheWxvYWQgKnBheWxvYWQsCiAgICAgc2VjID0gbGl2ZXBhdGNoX2VsZl9zZWNfYnlf bmFtZShlbGYsICIubGl2ZXBhdGNoLmhvb2tzLnVubG9hZCIpOwogICAgIGlmICggc2VjICkKICAg ICB7Ci0gICAgICAgIGlmICggc2VjLT5zZWMtPnNoX3NpemUgJSBzaXplb2YoKnBheWxvYWQtPnVu bG9hZF9mdW5jcykgKQorICAgICAgICBpZiAoIGNoZWNrX3NlY3Rpb24oZWxmLCBzZWMsIHNpemVv ZigqcGF5bG9hZC0+dW5sb2FkX2Z1bmNzKSwgdHJ1ZSkgKQogICAgICAgICAgICAgcmV0dXJuIC1F SU5WQUw7CiAKICAgICAgICAgcGF5bG9hZC0+dW5sb2FkX2Z1bmNzID0gc2VjLT5sb2FkX2FkZHI7 CkBAIC02MzQsMTIgKzY0OCw4IEBAIHN0YXRpYyBpbnQgcHJlcGFyZV9wYXlsb2FkKHN0cnVjdCBw YXlsb2FkICpwYXlsb2FkLAogICAgICAgICBpZiAoICFzZWMgKQogICAgICAgICAgICAgY29udGlu dWU7CiAKLSAgICAgICAgaWYgKCBzZWMtPnNlYy0+c2hfc2l6ZSAlIHNpemVvZigqcmVnaW9uLT5m cmFtZVtpXS5idWdzKSApCi0gICAgICAgIHsKLSAgICAgICAgICAgIGRwcmludGsoWEVOTE9HX0VS UiwgTElWRVBBVENIICIlczogV3Jvbmcgc2l6ZSBvZiAuYnVnX2ZyYW1lcy4ldSFcbiIsCi0gICAg ICAgICAgICAgICAgICAgIGVsZi0+bmFtZSwgaSk7CisgICAgICAgIGlmICggY2hlY2tfc2VjdGlv bihlbGYsIHNlYywgc2l6ZW9mKCpyZWdpb24tPmZyYW1lW2ldLmJ1Z3MpLCB0cnVlKSApCiAgICAg ICAgICAgICByZXR1cm4gLUVJTlZBTDsKLSAgICAgICAgfQogCiAgICAgICAgIHJlZ2lvbi0+ZnJh bWVbaV0uYnVncyA9IHNlYy0+bG9hZF9hZGRyOwogICAgICAgICByZWdpb24tPmZyYW1lW2ldLm5f YnVncyA9IHNlYy0+c2VjLT5zaF9zaXplIC8KQEAgLTY1MiwxMiArNjYyLDggQEAgc3RhdGljIGlu dCBwcmVwYXJlX3BheWxvYWQoc3RydWN0IHBheWxvYWQgKnBheWxvYWQsCiAjaWZkZWYgQ09ORklH X0hBU19BTFRFUk5BVElWRQogICAgICAgICBzdHJ1Y3QgYWx0X2luc3RyICphLCAqc3RhcnQsICpl bmQ7CiAKLSAgICAgICAgaWYgKCBzZWMtPnNlYy0+c2hfc2l6ZSAlIHNpemVvZigqYSkgKQotICAg ICAgICB7Ci0gICAgICAgICAgICBkcHJpbnRrKFhFTkxPR19FUlIsIExJVkVQQVRDSCAiJXM6IFNp emUgb2YgLmFsdF9pbnN0ciBpcyBub3QgbXVsdGlwbGUgb2YgJXp1IVxuIiwKLSAgICAgICAgICAg ICAgICAgICAgZWxmLT5uYW1lLCBzaXplb2YoKmEpKTsKKyAgICAgICAgaWYgKCBjaGVja19zZWN0 aW9uKGVsZiwgc2VjLCBzaXplb2YoKmEpLCB0cnVlKSApCiAgICAgICAgICAgICByZXR1cm4gLUVJ TlZBTDsKLSAgICAgICAgfQogCiAgICAgICAgIHN0YXJ0ID0gc2VjLT5sb2FkX2FkZHI7CiAgICAg ICAgIGVuZCA9IHNlYy0+bG9hZF9hZGRyICsgc2VjLT5zZWMtPnNoX3NpemU7CkBAIC02ODksMTQg KzY5NSw4IEBAIHN0YXRpYyBpbnQgcHJlcGFyZV9wYXlsb2FkKHN0cnVjdCBwYXlsb2FkICpwYXls b2FkLAogI2lmZGVmIENPTkZJR19IQVNfRVhfVEFCTEUKICAgICAgICAgc3RydWN0IGV4Y2VwdGlv bl90YWJsZV9lbnRyeSAqcywgKmU7CiAKLSAgICAgICAgaWYgKCAhc2VjLT5zZWMtPnNoX3NpemUg fHwKLSAgICAgICAgICAgICAoc2VjLT5zZWMtPnNoX3NpemUgJSBzaXplb2YoKnJlZ2lvbi0+ZXgp KSApCi0gICAgICAgIHsKLSAgICAgICAgICAgIGRwcmludGsoWEVOTE9HX0VSUiwgTElWRVBBVENI ICIlczogV3Jvbmcgc2l6ZSBvZiAuZXhfdGFibGUgKGV4cDolbHUgdnMgJWx1KSFcbiIsCi0gICAg ICAgICAgICAgICAgICAgIGVsZi0+bmFtZSwgc2l6ZW9mKCpyZWdpb24tPmV4KSwKLSAgICAgICAg ICAgICAgICAgICAgc2VjLT5zZWMtPnNoX3NpemUpOworICAgICAgICBpZiAoIGNoZWNrX3NlY3Rp b24oZWxmLCBzZWMsIHNpemVvZigqcmVnaW9uLT5leCksIGZhbHNlKSApCiAgICAgICAgICAgICBy ZXR1cm4gLUVJTlZBTDsKLSAgICAgICAgfQogCiAgICAgICAgIHMgPSBzZWMtPmxvYWRfYWRkcjsK ICAgICAgICAgZSA9IHNlYy0+bG9hZF9hZGRyICsgc2VjLT5zZWMtPnNoX3NpemU7CmRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS94ZW4vZWxmc3RydWN0cy5oIGIveGVuL2luY2x1ZGUveGVuL2VsZnN0 cnVjdHMuaAppbmRleCA5NTBlMTQ5MmU1Li43MjZjYThmNjBkIDEwMDY0NAotLS0gYS94ZW4vaW5j bHVkZS94ZW4vZWxmc3RydWN0cy5oCisrKyBiL3hlbi9pbmNsdWRlL3hlbi9lbGZzdHJ1Y3RzLmgK QEAgLTU1NSw2ICs1NTUsNyBAQCB0eXBlZGVmIHN0cnVjdCB7CiAKICNpZiBkZWZpbmVkKEVMRlNJ WkUpICYmIChFTEZTSVpFID09IDMyKQogI2RlZmluZSBQUkl4RWxmQWRkcgkiMDh4IgorI2RlZmlu ZSBQUkl1RWxmV29yZAkiOHUiCiAKICNkZWZpbmUgRWxmX0VoZHIJRWxmMzJfRWhkcgogI2RlZmlu ZSBFbGZfUGhkcglFbGYzMl9QaGRyCkBAIC01ODIsNiArNTgzLDcgQEAgdHlwZWRlZiBzdHJ1Y3Qg ewogI2RlZmluZSBBdXhJbmZvCQlBdXgzMkluZm8KICNlbGlmIGRlZmluZWQoRUxGU0laRSkgJiYg KEVMRlNJWkUgPT0gNjQpCiAjZGVmaW5lIFBSSXhFbGZBZGRyCVBSSXg2NAorI2RlZmluZSBQUkl1 RWxmV29yZAlQUkl1NjQKIAogI2RlZmluZSBFbGZfRWhkcglFbGY2NF9FaGRyCiAjZGVmaW5lIEVs Zl9QaGRyCUVsZjY0X1BoZHIKLS0gCjIuMTMuMwoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxp c3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=