From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mihai =?UTF-8?B?RG9uyJt1?= Subject: Re: [PATCH v2] xmalloc: add support for checking the pool integrity Date: Mon, 8 Dec 2014 04:38:25 +0200 Message-ID: <20141208043825.00f5cbd9@bitdefender.com> References: <1418005848-17447-1-git-send-email-mdontu@bitdefender.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1418005848-17447-1-git-send-email-mdontu@bitdefender.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org T24gTW9uLCA4IERlYyAyMDE0IDA0OjMwOjQ4ICswMjAwIE1paGFpIERvbsibdSB3cm90ZToKPiBJ bXBsZW1lbnRlZCB4bWVtX3Bvb2xfY2hlY2soKSwgeG1lbV9wb29sX2NoZWNrX2xvY2tlZCgpIGFu ZAo+IHhtZW1fcG9vbF9jaGVja191bmxvY2tlZCgpIHRvIHZlcml0eSB0aGUgaW50ZWdyaXR5IG9m IHRoZSBUTFNGIG1hdHJpeC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBNaWhhaSBEb27Im3UgPG1kb250 dUBiaXRkZWZlbmRlci5jb20+Cj4gCj4gLS0tCj4gQ2hhbmdlcyBzaW5jZSB2MToKPiAgLSBmaXhl ZCB0aGUgY29kaW5nc3R5bGUKPiAgLSBzd2FwZWQgX2xvY2tlZC9fdW5sb2NrZWQgbmFtaW5nCj4g IC0gcmV3b3JrZWQgX194bWVtX3Bvb2xfY2hlY2tfbG9ja2VkKCkgYSBiaXQKPiAgLSB1c2VkIGJv b2xfdCB3aGVyZSBhcHByb3ByaWF0ZQo+ICAtIG1hZGUgeG1lbV9wb29sX2NoZWNrKCkgdGFrZSBh IHBvb2wgYXJndW1lbnQgd2hpY2ggY2FuIGJlIE5VTEwKPiAtLS0KPiAgeGVuL2NvbW1vbi94bWFs bG9jX3Rsc2YuYyB8IDExMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystCj4gIHhlbi9pbmNsdWRlL3hlbi94bWFsbG9jLmggfCAgIDcgKysrCj4gIDIgZmlsZXMg Y2hhbmdlZCwgMTE1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdp dCBhL3hlbi9jb21tb24veG1hbGxvY190bHNmLmMgYi94ZW4vY29tbW9uL3htYWxsb2NfdGxzZi5j Cj4gaW5kZXggYTU3NjljOS4uODY4MTE4NSAxMDA2NDQKPiAtLS0gYS94ZW4vY29tbW9uL3htYWxs b2NfdGxzZi5jCj4gKysrIGIveGVuL2NvbW1vbi94bWFsbG9jX3Rsc2YuYwo+IEBAIC0xMjAsOSAr MTIwLDExMSBAQCBzdHJ1Y3QgeG1lbV9wb29sIHsKPiAgICAgIGNoYXIgbmFtZVtNQVhfUE9PTF9O QU1FX0xFTl07Cj4gIH07Cj4gCj4gK3N0YXRpYyBzdHJ1Y3QgeG1lbV9wb29sICp4ZW5wb29sOwo+ ICsKPiArc3RhdGljIGlubGluZSB2b2lkIE1BUFBJTkdfSU5TRVJUKHVuc2lnbmVkIGxvbmcgciwg aW50ICpmbCwgaW50ICpzbCk7Cj4gKwo+ICAvKgo+ICAgKiBIZWxwaW5nIGZ1bmN0aW9ucwo+ICAg Ki8KPiArI2lmbmRlZiBOREVCVUcKPiArc3RhdGljIGJvb2xfdCB4bWVtX3Bvb2xfY2hlY2tfc2l6 ZShjb25zdCBzdHJ1Y3QgYmhkciAqYiwgaW50IGZsLCBpbnQgc2wpCj4gK3sKPiArICAgIHdoaWxl ICggYiApCj4gKyAgICB7Cj4gKyAgICAgICAgaW50IF9fZmw7Cj4gKyAgICAgICAgaW50IF9fc2w7 Cj4gKwo+ICsgICAgICAgIE1BUFBJTkdfSU5TRVJUKGItPnNpemUsICZfX2ZsLCAmX19zbCk7Cj4g KyAgICAgICAgaWYgKCBfX2ZsICE9IGZsIHx8IF9fc2wgIT0gc2wgKQo+ICsgICAgICAgIHsKPiAr ICAgICAgICAgICAgcHJpbnRrKFhFTkxPR19FUlIgInhtZW1fcG9vbDogZm9yIGJsb2NrICVwIHNp emUgPSAldSwgeyBmbCA9ICVkLCBzbCA9ICVkIH0gc2hvdWxkIGJlIHsgZmwgPSAlZCwgc2wgPSAl ZCB9XG4iLAo+ICsgICAgICAgICAgICAgICAgICAgYiwgYi0+c2l6ZSwgZmwsIHNsLCBfX2ZsLCBf X3NsKTsKPiArICAgICAgICAgICAgcmV0dXJuIDA7Cj4gKyAgICAgICAgfQo+ICsgICAgICAgIGIg PSBiLT5wdHIuZnJlZV9wdHIubmV4dDsKPiArICAgIH0KPiArICAgIHJldHVybiAxOwo+ICt9Cj4g Kwo+ICsvKgo+ICsgKiBUaGlzIGZ1bmN0aW9uIG11c3QgYmUgY2FsbGVkIGZyb20gYSBjb250ZXh0 IHdoZXJlIHBvb2wtPmxvY2sgaXMKPiArICogYWxyZWFkeSBhY3F1aXJlZC4KPiArICoKPiArICog UmV0dXJucyB0cnVlIGlmIHRoZSBwb29sIGhhcyBiZWVuIGNvcnJ1cHRlZCwgZmFsc2Ugb3RoZXJ3 aXNlCj4gKyAqLwo+ICsjZGVmaW5lIHhtZW1fcG9vbF9jaGVja19sb2NrZWQocG9vbCkgX194bWVt X3Bvb2xfY2hlY2tfbG9ja2VkKF9fRklMRV9fLCBfX0xJTkVfXywgcG9vbCkKPiArc3RhdGljIGJv b2xfdCBfX3htZW1fcG9vbF9jaGVja19sb2NrZWQoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUs IGNvbnN0IHN0cnVjdCB4bWVtX3Bvb2wgKnBvb2wpCj4gK3sKPiArICAgIGludCBpOwo+ICsgICAg c3RhdGljIGJvb2xfdCBvbmNlID0gMTsKPiArCj4gKyAgICBpZiAoICFvbmNlICkKPiArICAgICAg ICBnb3RvIG91dDsKPiArICAgIGZvciAoIGkgPSAwOyBpIDwgUkVBTF9GTEk7IGkrKyApCj4gKyAg ICB7Cj4gKyAgICAgICAgaW50IGZsID0gKHBvb2wtPmZsX2JpdG1hcCAmICgxIDw8IGkpKSA/IGkg OiAtMTsKPiArCj4gKyAgICAgICAgaWYgKCBmbCA+PSAwICkKPiArICAgICAgICB7Cj4gKyAgICAg ICAgICAgIGludCBqOwo+ICsKPiArICAgICAgICAgICAgaWYgKCAhcG9vbC0+c2xfYml0bWFwW2Zs XSApCj4gKyAgICAgICAgICAgIHsKPiArICAgICAgICAgICAgICAgIHByaW50ayhYRU5MT0dfRVJS ICJ4bWVtX3Bvb2w6IHRoZSBUTFNGIGJpdG1hcCBpcyBjb3JydXB0ZWQgKG5vbi1lbXB0eSBGTCB3 aXRoIGVtcHR5IFNMKVxuIik7Cj4gKyAgICAgICAgICAgICAgICBfX3dhcm4oZmlsZSwgbGluZSk7 Cj4gKyAgICAgICAgICAgICAgICBvbmNlID0gMDsKPiArICAgICAgICAgICAgICAgIGJyZWFrOwo+ ICsgICAgICAgICAgICB9Cj4gKyAgICAgICAgICAgIGZvciAoIGogPSAwOyBqIDwgTUFYX1NMSTsg aisrICkKPiArICAgICAgICAgICAgewo+ICsgICAgICAgICAgICAgICAgaW50IHNsID0gKHBvb2wt PnNsX2JpdG1hcFtmbF0gJiAoMSA8PCBqKSkgPyBqIDogLTE7Cj4gKwo+ICsgICAgICAgICAgICAg ICAgaWYgKCBzbCA8IDAgKQo+ICsgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwo+ICsgICAg ICAgICAgICAgICAgaWYgKCAhcG9vbC0+bWF0cml4W2ZsXVtzbF0gKQo+ICsgICAgICAgICAgICAg ICAgewo+ICsgICAgICAgICAgICAgICAgICAgIHByaW50ayhYRU5MT0dfRVJSICJ4bWVtX3Bvb2w6 IHRoZSBUTFNGIGJpdG1hcCBpcyBjb3JydXB0ZWQgKG1hdHJpeFslZF1bJWRdIGlzIE5VTEwpXG4i LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICBmbCwgc2wpOwo+ICsgICAgICAgICAgICAgICAg ICAgIF9fd2FybihmaWxlLCBsaW5lKTsKPiArICAgICAgICAgICAgICAgICAgICBvbmNlID0gMDsK PiArICAgICAgICAgICAgICAgICAgICBicmVhazsKPiArICAgICAgICAgICAgICAgIH0KPiArICAg ICAgICAgICAgICAgIGlmICggIXhtZW1fcG9vbF9jaGVja19zaXplKHBvb2wtPm1hdHJpeFtmbF1b c2xdLCBmbCwgc2wpICkKPiArICAgICAgICAgICAgICAgIHsKPiArICAgICAgICAgICAgICAgICAg ICBwcmludGsoWEVOTE9HX0VSUiAieG1lbV9wb29sOiB0aGUgVExTRiBjaHVuayBtYXRyaXggaXMg Y29ycnVwdGVkXG4iKTsKPiArICAgICAgICAgICAgICAgICAgICBfX3dhcm4oZmlsZSwgbGluZSk7 Cj4gKyAgICAgICAgICAgICAgICAgICAgb25jZSA9IDA7Cj4gKyAgICAgICAgICAgICAgICAgICAg YnJlYWs7Cj4gKyAgICAgICAgICAgICAgICB9Cj4gKyAgICAgICAgICAgIH0KPiArICAgICAgICAg ICAgaWYgKCAhb25jZSApCj4gKyAgICAgICAgICAgICAgICBicmVhazsKPiArICAgICAgICB9Cj4g KyAgICB9Cj4gK291dDoKPiArICAgIHJldHVybiAhb25jZTsKPiArfQo+ICsKPiArI2RlZmluZSB4 bWVtX3Bvb2xfY2hlY2tfdW5sb2NrZWQocG9vbCkgX194bWVtX3Bvb2xfY2hlY2tfdW5sb2NrZWQo X19GSUxFX18sIF9fTElORV9fLCBwb29sKQo+ICtzdGF0aWMgYm9vbF90IF9feG1lbV9wb29sX2No ZWNrX3VubG9ja2VkKGNvbnN0IGNoYXIgKmZpbGUsIGludCBsaW5lLCBzdHJ1Y3QgeG1lbV9wb29s ICpwb29sKQo+ICt7Cj4gKyAgICBib29sX3Qgb29wczsKPiArCj4gKyAgICBzcGluX2xvY2soJnBv b2wtPmxvY2spOwo+ICsgICAgb29wcyA9IF9feG1lbV9wb29sX2NoZWNrX2xvY2tlZChmaWxlLCBs aW5lLCBwb29sKTsKPiArICAgIHNwaW5fdW5sb2NrKCZwb29sLT5sb2NrKTsKPiArICAgIHJldHVy biBvb3BzOwo+ICt9Cj4gKwo+ICtib29sX3QgX194bWVtX3Bvb2xfY2hlY2soY29uc3QgY2hhciAq ZmlsZSwgaW50IGxpbmUsIHN0cnVjdCB4bWVtX3Bvb2wgKnBvb2wpCj4gK3sKPiArICAgIHJldHVy biBfX3htZW1fcG9vbF9jaGVja191bmxvY2tlZChmaWxlLCBsaW5lLCBwb29sID8gcG9vbCA6IHhl bnBvb2wpOwo+ICt9Cj4gKyNlbHNlCj4gKyNkZWZpbmUgeG1lbV9wb29sX2NoZWNrX2xvY2tlZChw b29sKSAoKHZvaWQpKHBvb2wpKQo+ICsjZGVmaW5lIHhtZW1fcG9vbF9jaGVja191bmxvY2tlZChw b29sKSAoKHZvaWQpKHBvb2wpKQo+ICsjZW5kaWYKPiAKPiAgLyoqCj4gICAqIFJldHVybnMgaW5k ZXhlcyAoZmwsIHNsKSBvZiB0aGUgbGlzdCB1c2VkIHRvIHNlcnZlIHJlcXVlc3Qgb2Ygc2l6ZSBy Cj4gQEAgLTM4MSw2ICs0ODMsOCBAQCB2b2lkICp4bWVtX3Bvb2xfYWxsb2ModW5zaWduZWQgbG9u ZyBzaXplLCBzdHJ1Y3QgeG1lbV9wb29sICpwb29sKQo+ICAgICAgaW50IGZsLCBzbDsKPiAgICAg IHVuc2lnbmVkIGxvbmcgdG1wX3NpemU7Cj4gCj4gKyAgICB4bWVtX3Bvb2xfY2hlY2tfdW5sb2Nr ZWQocG9vbCk7Cj4gKwo+ICAgICAgaWYgKCBwb29sLT5pbml0X3JlZ2lvbiA9PSBOVUxMICkKPiAg ICAgIHsKPiAgICAgICAgICBpZiAoIChyZWdpb24gPSBwb29sLT5nZXRfbWVtKHBvb2wtPmluaXRf c2l6ZSkpID09IE5VTEwgKQo+IEBAIC00NDIsMTEgKzU0NiwxMyBAQCB2b2lkICp4bWVtX3Bvb2xf YWxsb2ModW5zaWduZWQgbG9uZyBzaXplLCBzdHJ1Y3QgeG1lbV9wb29sICpwb29sKQo+IAo+ICAg ICAgcG9vbC0+dXNlZF9zaXplICs9IChiLT5zaXplICYgQkxPQ0tfU0laRV9NQVNLKSArIEJIRFJf T1ZFUkhFQUQ7Cj4gCj4gKyAgICB4bWVtX3Bvb2xfY2hlY2tfbG9ja2VkKHBvb2wpOwo+ICAgICAg c3Bpbl91bmxvY2soJnBvb2wtPmxvY2spOwo+ICAgICAgcmV0dXJuICh2b2lkICopYi0+cHRyLmJ1 ZmZlcjsKPiAKPiAgICAgIC8qIEZhaWxlZCBhbGxvYyAqLwo+ICAgb3V0X2xvY2tlZDoKPiArICAg IHhtZW1fcG9vbF9jaGVja19sb2NrZWQocG9vbCk7Cj4gICAgICBzcGluX3VubG9jaygmcG9vbC0+ bG9jayk7Cj4gCj4gICBvdXQ6Cj4gQEAgLTQ2NCw2ICs1NzAsNyBAQCB2b2lkIHhtZW1fcG9vbF9m cmVlKHZvaWQgKnB0ciwgc3RydWN0IHhtZW1fcG9vbCAqcG9vbCkKPiAgICAgIGIgPSAoc3RydWN0 IGJoZHIgKikoKGNoYXIgKikgcHRyIC0gQkhEUl9PVkVSSEVBRCk7Cj4gCj4gICAgICBzcGluX2xv Y2soJnBvb2wtPmxvY2spOwo+ICsgICAgeG1lbV9wb29sX2NoZWNrX2xvY2tlZChwb29sKTsKPiAg ICAgIGItPnNpemUgfD0gRlJFRV9CTE9DSzsKPiAgICAgIHBvb2wtPnVzZWRfc2l6ZSAtPSAoYi0+ c2l6ZSAmIEJMT0NLX1NJWkVfTUFTSykgKyBCSERSX09WRVJIRUFEOwo+ICAgICAgYi0+cHRyLmZy ZWVfcHRyID0gKHN0cnVjdCBmcmVlX3B0cikgeyBOVUxMLCBOVUxMfTsKPiBAQCAtNTAwLDYgKzYw Nyw3IEBAIHZvaWQgeG1lbV9wb29sX2ZyZWUodm9pZCAqcHRyLCBzdHJ1Y3QgeG1lbV9wb29sICpw b29sKQo+ICAgICAgdG1wX2ItPnNpemUgfD0gUFJFVl9GUkVFOwo+ICAgICAgdG1wX2ItPnByZXZf aGRyID0gYjsKPiAgIG91dDoKPiArICAgIHhtZW1fcG9vbF9jaGVja19sb2NrZWQocG9vbCk7Cj4g ICAgICBzcGluX3VubG9jaygmcG9vbC0+bG9jayk7Cj4gIH0KPiAKPiBAQCAtNTEyLDggKzYyMCw2 IEBAIGludCB4bWVtX3Bvb2xfbWF4YWxsb2Moc3RydWN0IHhtZW1fcG9vbCAqcG9vbCkKPiAgICog R2x1ZSBmb3IgeG1hbGxvYygpLgo+ICAgKi8KPiAKPiAtc3RhdGljIHN0cnVjdCB4bWVtX3Bvb2wg KnhlbnBvb2w7Cj4gLQo+ICBzdGF0aWMgdm9pZCAqeG1hbGxvY19wb29sX2dldCh1bnNpZ25lZCBs b25nIHNpemUpCj4gIHsKPiAgICAgIEFTU0VSVChzaXplID09IFBBR0VfU0laRSk7Cj4gZGlmZiAt LWdpdCBhL3hlbi9pbmNsdWRlL3hlbi94bWFsbG9jLmggYi94ZW4vaW5jbHVkZS94ZW4veG1hbGxv Yy5oCj4gaW5kZXggMjRhOTlhYy4uYWQ0ODkzMCAxMDA2NDQKPiAtLS0gYS94ZW4vaW5jbHVkZS94 ZW4veG1hbGxvYy5oCj4gKysrIGIveGVuL2luY2x1ZGUveGVuL3htYWxsb2MuaAo+IEBAIC0xMjMs NCArMTIzLDExIEBAIHVuc2lnbmVkIGxvbmcgeG1lbV9wb29sX2dldF91c2VkX3NpemUoc3RydWN0 IHhtZW1fcG9vbCAqcG9vbCk7Cj4gICAqLwo+ICB1bnNpZ25lZCBsb25nIHhtZW1fcG9vbF9nZXRf dG90YWxfc2l6ZShzdHJ1Y3QgeG1lbV9wb29sICpwb29sKTsKPiAKPiArI2lmbmRlZiBOREVCVUcK PiArI2RlZmluZSB4bWVtX3Bvb2xfY2hlY2socG9vbCkgX194bWVtX3Bvb2xfY2hlY2soX19GSUxF X18sIF9fTElORV9fLCBwb29sKQo+ICtib29sX3QgX194bWVtX3Bvb2xfY2hlY2soY29uc3QgY2hh ciAqZmlsZSwgaW50IGxpbmUsIHN0cnVjdCB4bWVtX3Bvb2wgKnBvb2wpOwo+ICsjZWxzZQo+ICsj ZGVmaW5lIHhtZW1fcG9vbF9jaGVjayhwb29sKSAoKHZvaWQpMCkKPiArI2VuZGlmCj4gKwo+ICAj ZW5kaWYgLyogX19YTUFMTE9DX0hfXyAqLwoKVGhpcyBwYXRjaCBkZXBlbmRzIG9uOgpodHRwOi8v bGlzdHMueGVucHJvamVjdC5vcmcvYXJjaGl2ZXMvaHRtbC94ZW4tZGV2ZWwvMjAxNC0xMi9tc2cw MDgwOS5odG1sCgotLSAKTWloYWkgRE9OyJpVCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0 cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=