From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pa0-f43.google.com (mail-pa0-f43.google.com [209.85.220.43]) by kanga.kvack.org (Postfix) with ESMTP id 5185E6B0038 for ; Fri, 7 Aug 2015 03:28:06 -0400 (EDT) Received: by pawu10 with SMTP id u10so82434619paw.1 for ; Fri, 07 Aug 2015 00:28:06 -0700 (PDT) Received: from tyo200.gate.nec.co.jp (TYO200.gate.nec.co.jp. [210.143.35.50]) by mx.google.com with ESMTPS id z10si12467944pas.47.2015.08.07.00.28.04 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Fri, 07 Aug 2015 00:28:05 -0700 (PDT) Received: from tyo202.gate.nec.co.jp ([10.7.69.202]) by tyo200.gate.nec.co.jp (8.13.8/8.13.4) with ESMTP id t777S0Bu008940 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 7 Aug 2015 16:28:01 +0900 (JST) From: Naoya Horiguchi Subject: [PATCH v2 2/2] mm: hugetlb: add VmHugetlbRSS: field in /proc/pid/status Date: Fri, 7 Aug 2015 07:24:50 +0000 Message-ID: <1438932278-7973-3-git-send-email-n-horiguchi@ah.jp.nec.com> References: <20150806074443.GA7870@hori1.linux.bs1.fc.nec.co.jp> <1438932278-7973-1-git-send-email-n-horiguchi@ah.jp.nec.com> In-Reply-To: <1438932278-7973-1-git-send-email-n-horiguchi@ah.jp.nec.com> Content-Language: ja-JP Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: owner-linux-mm@kvack.org List-ID: To: Andrew Morton , David Rientjes , =?utf-8?B?SsO2cm4gRW5nZWw=?= Cc: Mike Kravetz , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , Naoya Horiguchi , Naoya Horiguchi Q3VycmVudGx5IHRoZXJlJ3Mgbm8gZWFzeSB3YXkgdG8gZ2V0IHBlci1wcm9jZXNzIHVzYWdlIG9m IGh1Z2V0bGIgcGFnZXMsIHdoaWNoDQppcyBpbmNvbnZlbmllbnQgYmVjYXVzZSBhcHBsaWNhdGlv bnMgd2hpY2ggdXNlIGh1Z2V0bGIgdHlwaWNhbGx5IHdhbnQgdG8gY29udHJvbA0KdGhlaXIgcHJv Y2Vzc2VzIG9uIHRoZSBiYXNpcyBvZiBob3cgbXVjaCBtZW1vcnkgKGluY2x1ZGluZyBodWdldGxi KSB0aGV5IHVzZS4NClNvIHRoaXMgcGF0Y2ggc2ltcGx5IHByb3ZpZGVzIGVhc3kgYWNjZXNzIHRv IHRoZSBpbmZvIHZpYSAvcHJvYy9waWQvc3RhdHVzLg0KDQpUaGlzIHBhdGNoIHNob3VsZG4ndCBj aGFuZ2UgdGhlIE9PTSBiZWhhdmlvciAoc28gaHVnZXRsYiB1c2FnZSBpcyBpZ25vcmVkIGFzDQpp cyBub3csKSB3aGljaCBJIGd1ZXNzIGlzIGZpbmUgdW50aWwgd2UgaGF2ZSBzb21lIHN0cm9uZyBy ZWFzb24gdG8gZG8gaXQuDQoNClNpZ25lZC1vZmYtYnk6IE5hb3lhIEhvcmlndWNoaSA8bi1ob3Jp Z3VjaGlAYWguanAubmVjLmNvbT4NCi0tLQ0KIGZzL3Byb2MvdGFza19tbXUuYyAgICAgICB8ICA1 ICsrKystDQogaW5jbHVkZS9saW51eC9odWdldGxiLmggIHwgMTggKysrKysrKysrKysrKysrKysr DQogaW5jbHVkZS9saW51eC9tbS5oICAgICAgIHwgIDMgKysrDQogaW5jbHVkZS9saW51eC9tbV90 eXBlcy5oIHwgIDMgKysrDQogbW0vaHVnZXRsYi5jICAgICAgICAgICAgIHwgIDkgKysrKysrKysr DQogbW0vbWVtb3J5LmMgICAgICAgICAgICAgIHwgIDQgKystLQ0KIG1tL3JtYXAuYyAgICAgICAg ICAgICAgICB8ICA0ICsrKy0NCiA3IGZpbGVzIGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDQg ZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgdjQuMi1yYzQub3JpZy9mcy9wcm9jL3Rhc2tfbW11 LmMgdjQuMi1yYzQvZnMvcHJvYy90YXNrX21tdS5jDQppbmRleCBjNzIxODYwMzMwNmQuLmYxODFm NTZmY2NlMiAxMDA2NDQNCi0tLSB2NC4yLXJjNC5vcmlnL2ZzL3Byb2MvdGFza19tbXUuYw0KKysr IHY0LjItcmM0L2ZzL3Byb2MvdGFza19tbXUuYw0KQEAgLTIyLDcgKzIyLDcgQEANCiB2b2lkIHRh c2tfbWVtKHN0cnVjdCBzZXFfZmlsZSAqbSwgc3RydWN0IG1tX3N0cnVjdCAqbW0pDQogew0KIAl1 bnNpZ25lZCBsb25nIGRhdGEsIHRleHQsIGxpYiwgc3dhcCwgcHRlcywgcG1kczsNCi0JdW5zaWdu ZWQgbG9uZyBoaXdhdGVyX3ZtLCB0b3RhbF92bSwgaGl3YXRlcl9yc3MsIHRvdGFsX3JzczsNCisJ dW5zaWduZWQgbG9uZyBoaXdhdGVyX3ZtLCB0b3RhbF92bSwgaGl3YXRlcl9yc3MsIHRvdGFsX3Jz cywgaHVnZXRsYl9yc3M7DQogDQogCS8qDQogCSAqIE5vdGU6IHRvIG1pbmltaXplIHRoZWlyIG92 ZXJoZWFkLCBtbSBtYWludGFpbnMgaGl3YXRlcl92bSBhbmQNCkBAIC0zNyw2ICszNyw3IEBAIHZv aWQgdGFza19tZW0oc3RydWN0IHNlcV9maWxlICptLCBzdHJ1Y3QgbW1fc3RydWN0ICptbSkNCiAJ aGl3YXRlcl9yc3MgPSB0b3RhbF9yc3MgPSBnZXRfbW1fcnNzKG1tKTsNCiAJaWYgKGhpd2F0ZXJf cnNzIDwgbW0tPmhpd2F0ZXJfcnNzKQ0KIAkJaGl3YXRlcl9yc3MgPSBtbS0+aGl3YXRlcl9yc3M7 DQorCWh1Z2V0bGJfcnNzID0gZ2V0X2h1Z2V0bGJfcnNzKG1tKTsNCiANCiAJZGF0YSA9IG1tLT50 b3RhbF92bSAtIG1tLT5zaGFyZWRfdm0gLSBtbS0+c3RhY2tfdm07DQogCXRleHQgPSAoUEFHRV9B TElHTihtbS0+ZW5kX2NvZGUpIC0gKG1tLT5zdGFydF9jb2RlICYgUEFHRV9NQVNLKSkgPj4gMTA7 DQpAQCAtNTEsNiArNTIsNyBAQCB2b2lkIHRhc2tfbWVtKHN0cnVjdCBzZXFfZmlsZSAqbSwgc3Ry dWN0IG1tX3N0cnVjdCAqbW0pDQogCQkiVm1QaW46XHQlOGx1IGtCXG4iDQogCQkiVm1IV006XHQl OGx1IGtCXG4iDQogCQkiVm1SU1M6XHQlOGx1IGtCXG4iDQorCQkiVm1IdWdldGxiUlNTOlx0JThs dSBrQlxuIg0KIAkJIlZtRGF0YTpcdCU4bHUga0JcbiINCiAJCSJWbVN0azpcdCU4bHUga0JcbiIN CiAJCSJWbUV4ZTpcdCU4bHUga0JcbiINCkBAIC02NCw2ICs2Niw3IEBAIHZvaWQgdGFza19tZW0o c3RydWN0IHNlcV9maWxlICptLCBzdHJ1Y3QgbW1fc3RydWN0ICptbSkNCiAJCW1tLT5waW5uZWRf dm0gPDwgKFBBR0VfU0hJRlQtMTApLA0KIAkJaGl3YXRlcl9yc3MgPDwgKFBBR0VfU0hJRlQtMTAp LA0KIAkJdG90YWxfcnNzIDw8IChQQUdFX1NISUZULTEwKSwNCisJCWh1Z2V0bGJfcnNzIDw8IChQ QUdFX1NISUZULTEwKSwNCiAJCWRhdGEgPDwgKFBBR0VfU0hJRlQtMTApLA0KIAkJbW0tPnN0YWNr X3ZtIDw8IChQQUdFX1NISUZULTEwKSwgdGV4dCwgbGliLA0KIAkJcHRlcyA+PiAxMCwNCmRpZmYg LS1naXQgdjQuMi1yYzQub3JpZy9pbmNsdWRlL2xpbnV4L2h1Z2V0bGIuaCB2NC4yLXJjNC9pbmNs dWRlL2xpbnV4L2h1Z2V0bGIuaA0KaW5kZXggZDg5MWY5NDk0NjZhLi42MzE5ZGYxMjRlNjggMTAw NjQ0DQotLS0gdjQuMi1yYzQub3JpZy9pbmNsdWRlL2xpbnV4L2h1Z2V0bGIuaA0KKysrIHY0LjIt cmM0L2luY2x1ZGUvbGludXgvaHVnZXRsYi5oDQpAQCAtNDY5LDYgKzQ2OSwyMSBAQCBzdGF0aWMg aW5saW5lIHNwaW5sb2NrX3QgKmh1Z2VfcHRlX2xvY2twdHIoc3RydWN0IGhzdGF0ZSAqaCwNCiAj ZGVmaW5lIGh1Z2VwYWdlc19zdXBwb3J0ZWQoKSAoSFBBR0VfU0hJRlQgIT0gMCkNCiAjZW5kaWYN CiANCisvKg0KKyAqIFRoaXMgc2ltcGxlIHdyYXBwZXJzIGFyZSB0byBoaWRlIE1NX0hVR0VUTEJQ QUdFUyBmcm9tIG91dHNpZGUgaHVnZXRsYmZzDQorICogc3Vic3lzdGVtLiBUaGUgY291bnRlciBN TV9IVUdFVExCUEFHRVMgaXMgbWFpbnRhaW5lZCBpbiBwYWdlIHVuaXQgYmFzaXMsDQorICogc28g aXQgY2hhbmdlcyBieSA1MTIgZm9yIGV4YW1wbGUgaWYgYSAyTUIgaHVnZXBhZ2UgaXMgbWFwcGVk IG9yIHVubWFwcGVkLg0KKyAqLw0KK3N0YXRpYyBpbmxpbmUgaW50IGdldF9odWdldGxiX3Jzcyhz dHJ1Y3QgbW1fc3RydWN0ICptbSkNCit7DQorCXJldHVybiBnZXRfbW1fY291bnRlcihtbSwgTU1f SFVHRVRMQlBBR0VTKTsNCit9DQorDQorc3RhdGljIGlubGluZSB2b2lkIG1vZF9odWdldGxiX3Jz cyhzdHJ1Y3QgbW1fc3RydWN0ICptbSwgbG9uZyB2YWx1ZSkNCit7DQorCWFkZF9tbV9jb3VudGVy KG1tLCBNTV9IVUdFVExCUEFHRVMsIHZhbHVlKTsNCit9DQorDQogI2Vsc2UJLyogQ09ORklHX0hV R0VUTEJfUEFHRSAqLw0KIHN0cnVjdCBoc3RhdGUge307DQogI2RlZmluZSBhbGxvY19odWdlX3Bh Z2Vfbm9kZShoLCBuaWQpIE5VTEwNCkBAIC01MDQsNiArNTE5LDkgQEAgc3RhdGljIGlubGluZSBz cGlubG9ja190ICpodWdlX3B0ZV9sb2NrcHRyKHN0cnVjdCBoc3RhdGUgKmgsDQogew0KIAlyZXR1 cm4gJm1tLT5wYWdlX3RhYmxlX2xvY2s7DQogfQ0KKw0KKyNkZWZpbmUgZ2V0X2h1Z2V0bGJfcnNz KG1tKQkwDQorI2RlZmluZSBtb2RfaHVnZXRsYl9yc3MobW0sIHZhbHVlKQlkbyB7fSB3aGlsZSAo MCkNCiAjZW5kaWYJLyogQ09ORklHX0hVR0VUTEJfUEFHRSAqLw0KIA0KIHN0YXRpYyBpbmxpbmUg c3BpbmxvY2tfdCAqaHVnZV9wdGVfbG9jayhzdHJ1Y3QgaHN0YXRlICpoLA0KZGlmZiAtLWdpdCB2 NC4yLXJjNC5vcmlnL2luY2x1ZGUvbGludXgvbW0uaCB2NC4yLXJjNC9pbmNsdWRlL2xpbnV4L21t LmgNCmluZGV4IDJlODcyZjkyZGJhYy4uOTIxOGE4ODU2NDgzIDEwMDY0NA0KLS0tIHY0LjItcmM0 Lm9yaWcvaW5jbHVkZS9saW51eC9tbS5oDQorKysgdjQuMi1yYzQvaW5jbHVkZS9saW51eC9tbS5o DQpAQCAtMTM1NSw2ICsxMzU1LDkgQEAgc3RhdGljIGlubGluZSB2b2lkIHN5bmNfbW1fcnNzKHN0 cnVjdCBtbV9zdHJ1Y3QgKm1tKQ0KIH0NCiAjZW5kaWYNCiANCitleHRlcm4gaW5saW5lIHZvaWQg aW5pdF9yc3NfdmVjKGludCAqcnNzKTsNCitleHRlcm4gaW5saW5lIHZvaWQgYWRkX21tX3Jzc192 ZWMoc3RydWN0IG1tX3N0cnVjdCAqbW0sIGludCAqcnNzKTsNCisNCiBpbnQgdm1hX3dhbnRzX3dy aXRlbm90aWZ5KHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hKTsNCiANCiBleHRlcm4gcHRlX3Qg Kl9fZ2V0X2xvY2tlZF9wdGUoc3RydWN0IG1tX3N0cnVjdCAqbW0sIHVuc2lnbmVkIGxvbmcgYWRk ciwNCmRpZmYgLS1naXQgdjQuMi1yYzQub3JpZy9pbmNsdWRlL2xpbnV4L21tX3R5cGVzLmggdjQu Mi1yYzQvaW5jbHVkZS9saW51eC9tbV90eXBlcy5oDQppbmRleCAwMDM4YWM3NDY2ZmQuLjg4N2I0 M2JhNWExOCAxMDA2NDQNCi0tLSB2NC4yLXJjNC5vcmlnL2luY2x1ZGUvbGludXgvbW1fdHlwZXMu aA0KKysrIHY0LjItcmM0L2luY2x1ZGUvbGludXgvbW1fdHlwZXMuaA0KQEAgLTM0OCw2ICszNDgs OSBAQCBlbnVtIHsNCiAJTU1fRklMRVBBR0VTLA0KIAlNTV9BTk9OUEFHRVMsDQogCU1NX1NXQVBF TlRTLA0KKyNpZmRlZiBDT05GSUdfSFVHRVRMQl9QQUdFDQorCU1NX0hVR0VUTEJQQUdFUywNCisj ZW5kaWYNCiAJTlJfTU1fQ09VTlRFUlMNCiB9Ow0KIA0KZGlmZiAtLWdpdCB2NC4yLXJjNC5vcmln L21tL2h1Z2V0bGIuYyB2NC4yLXJjNC9tbS9odWdldGxiLmMNCmluZGV4IGE4YzMwODcwODlkOC4u MTJlNWU3ZDNiNjBmIDEwMDY0NA0KLS0tIHY0LjItcmM0Lm9yaWcvbW0vaHVnZXRsYi5jDQorKysg djQuMi1yYzQvbW0vaHVnZXRsYi5jDQpAQCAtMjc0Myw5ICsyNzQzLDExIEBAIGludCBjb3B5X2h1 Z2V0bGJfcGFnZV9yYW5nZShzdHJ1Y3QgbW1fc3RydWN0ICpkc3QsIHN0cnVjdCBtbV9zdHJ1Y3Qg KnNyYywNCiAJdW5zaWduZWQgbG9uZyBtbXVuX3N0YXJ0OwkvKiBGb3IgbW11X25vdGlmaWVycyAq Lw0KIAl1bnNpZ25lZCBsb25nIG1tdW5fZW5kOwkJLyogRm9yIG1tdV9ub3RpZmllcnMgKi8NCiAJ aW50IHJldCA9IDA7DQorCWludCByc3NbTlJfTU1fQ09VTlRFUlNdOw0KIA0KIAljb3cgPSAodm1h LT52bV9mbGFncyAmIChWTV9TSEFSRUQgfCBWTV9NQVlXUklURSkpID09IFZNX01BWVdSSVRFOw0K IA0KKwlpbml0X3Jzc192ZWMocnNzKTsNCiAJbW11bl9zdGFydCA9IHZtYS0+dm1fc3RhcnQ7DQog CW1tdW5fZW5kID0gdm1hLT52bV9lbmQ7DQogCWlmIChjb3cpDQpAQCAtMjc5Nyw2ICsyNzk5LDcg QEAgaW50IGNvcHlfaHVnZXRsYl9wYWdlX3JhbmdlKHN0cnVjdCBtbV9zdHJ1Y3QgKmRzdCwgc3Ry dWN0IG1tX3N0cnVjdCAqc3JjLA0KIAkJCWdldF9wYWdlKHB0ZXBhZ2UpOw0KIAkJCXBhZ2VfZHVw X3JtYXAocHRlcGFnZSk7DQogCQkJc2V0X2h1Z2VfcHRlX2F0KGRzdCwgYWRkciwgZHN0X3B0ZSwg ZW50cnkpOw0KKwkJCXJzc1tNTV9IVUdFVExCUEFHRVNdICs9IHBhZ2VzX3Blcl9odWdlX3BhZ2Uo aCk7DQogCQl9DQogCQlzcGluX3VubG9jayhzcmNfcHRsKTsNCiAJCXNwaW5fdW5sb2NrKGRzdF9w dGwpOw0KQEAgLTI4MDUsNiArMjgwOCw3IEBAIGludCBjb3B5X2h1Z2V0bGJfcGFnZV9yYW5nZShz dHJ1Y3QgbW1fc3RydWN0ICpkc3QsIHN0cnVjdCBtbV9zdHJ1Y3QgKnNyYywNCiAJaWYgKGNvdykN CiAJCW1tdV9ub3RpZmllcl9pbnZhbGlkYXRlX3JhbmdlX2VuZChzcmMsIG1tdW5fc3RhcnQsIG1t dW5fZW5kKTsNCiANCisJYWRkX21tX3Jzc192ZWMoZHN0LCByc3MpOw0KIAlyZXR1cm4gcmV0Ow0K IH0NCiANCkBAIC0yODIzLDYgKzI4MjcsNyBAQCB2b2lkIF9fdW5tYXBfaHVnZXBhZ2VfcmFuZ2Uo c3RydWN0IG1tdV9nYXRoZXIgKnRsYiwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsDQogCXVu c2lnbmVkIGxvbmcgc3ogPSBodWdlX3BhZ2Vfc2l6ZShoKTsNCiAJY29uc3QgdW5zaWduZWQgbG9u ZyBtbXVuX3N0YXJ0ID0gc3RhcnQ7CS8qIEZvciBtbXVfbm90aWZpZXJzICovDQogCWNvbnN0IHVu c2lnbmVkIGxvbmcgbW11bl9lbmQgICA9IGVuZDsJLyogRm9yIG1tdV9ub3RpZmllcnMgKi8NCisJ aW50IHJzc1tOUl9NTV9DT1VOVEVSU107DQogDQogCVdBUk5fT04oIWlzX3ZtX2h1Z2V0bGJfcGFn ZSh2bWEpKTsNCiAJQlVHX09OKHN0YXJ0ICYgfmh1Z2VfcGFnZV9tYXNrKGgpKTsNCkBAIC0yODMy LDYgKzI4MzcsNyBAQCB2b2lkIF9fdW5tYXBfaHVnZXBhZ2VfcmFuZ2Uoc3RydWN0IG1tdV9nYXRo ZXIgKnRsYiwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsDQogCW1tdV9ub3RpZmllcl9pbnZh bGlkYXRlX3JhbmdlX3N0YXJ0KG1tLCBtbXVuX3N0YXJ0LCBtbXVuX2VuZCk7DQogCWFkZHJlc3Mg PSBzdGFydDsNCiBhZ2FpbjoNCisJaW5pdF9yc3NfdmVjKHJzcyk7DQogCWZvciAoOyBhZGRyZXNz IDwgZW5kOyBhZGRyZXNzICs9IHN6KSB7DQogCQlwdGVwID0gaHVnZV9wdGVfb2Zmc2V0KG1tLCBh ZGRyZXNzKTsNCiAJCWlmICghcHRlcCkNCkBAIC0yODc3LDYgKzI4ODMsNyBAQCB2b2lkIF9fdW5t YXBfaHVnZXBhZ2VfcmFuZ2Uoc3RydWN0IG1tdV9nYXRoZXIgKnRsYiwgc3RydWN0IHZtX2FyZWFf c3RydWN0ICp2bWEsDQogCQlpZiAoaHVnZV9wdGVfZGlydHkocHRlKSkNCiAJCQlzZXRfcGFnZV9k aXJ0eShwYWdlKTsNCiANCisJCXJzc1tNTV9IVUdFVExCUEFHRVNdIC09IHBhZ2VzX3Blcl9odWdl X3BhZ2UoaCk7DQogCQlwYWdlX3JlbW92ZV9ybWFwKHBhZ2UpOw0KIAkJZm9yY2VfZmx1c2ggPSAh X190bGJfcmVtb3ZlX3BhZ2UodGxiLCBwYWdlKTsNCiAJCWlmIChmb3JjZV9mbHVzaCkgew0KQEAg LTI4OTIsNiArMjg5OSw3IEBAIHZvaWQgX191bm1hcF9odWdlcGFnZV9yYW5nZShzdHJ1Y3QgbW11 X2dhdGhlciAqdGxiLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwNCiB1bmxvY2s6DQogCQlz cGluX3VubG9jayhwdGwpOw0KIAl9DQorCWFkZF9tbV9yc3NfdmVjKG1tLCByc3MpOw0KIAkvKg0K IAkgKiBtbXVfZ2F0aGVyIHJhbiBvdXQgb2Ygcm9vbSB0byBiYXRjaCBwYWdlcywgd2UgYnJlYWsg b3V0IG9mDQogCSAqIHRoZSBQVEUgbG9jayB0byBhdm9pZCBkb2luZyB0aGUgcG90ZW50aWFsIGV4 cGVuc2l2ZSBUTEIgaW52YWxpZGF0ZQ0KQEAgLTMyNjEsNiArMzI2OSw3IEBAIHN0YXRpYyBpbnQg aHVnZXRsYl9ub19wYWdlKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1 Y3QgKnZtYSwNCiAJCQkJJiYgKHZtYS0+dm1fZmxhZ3MgJiBWTV9TSEFSRUQpKSk7DQogCXNldF9o dWdlX3B0ZV9hdChtbSwgYWRkcmVzcywgcHRlcCwgbmV3X3B0ZSk7DQogDQorCW1vZF9odWdldGxi X3JzcyhtbSwgcGFnZXNfcGVyX2h1Z2VfcGFnZShoKSk7DQogCWlmICgoZmxhZ3MgJiBGQVVMVF9G TEFHX1dSSVRFKSAmJiAhKHZtYS0+dm1fZmxhZ3MgJiBWTV9TSEFSRUQpKSB7DQogCQkvKiBPcHRp bWl6YXRpb24sIGRvIHRoZSBDT1cgd2l0aG91dCBhIHNlY29uZCBmYXVsdCAqLw0KIAkJcmV0ID0g aHVnZXRsYl9jb3cobW0sIHZtYSwgYWRkcmVzcywgcHRlcCwgbmV3X3B0ZSwgcGFnZSwgcHRsKTsN CmRpZmYgLS1naXQgdjQuMi1yYzQub3JpZy9tbS9tZW1vcnkuYyB2NC4yLXJjNC9tbS9tZW1vcnku Yw0KaW5kZXggMzg4ZGNmOWFhMjgzLi5lMDliNTNkYTI3MzMgMTAwNjQ0DQotLS0gdjQuMi1yYzQu b3JpZy9tbS9tZW1vcnkuYw0KKysrIHY0LjItcmM0L21tL21lbW9yeS5jDQpAQCAtNjIwLDEyICs2 MjAsMTIgQEAgaW50IF9fcHRlX2FsbG9jX2tlcm5lbChwbWRfdCAqcG1kLCB1bnNpZ25lZCBsb25n IGFkZHJlc3MpDQogCXJldHVybiAwOw0KIH0NCiANCi1zdGF0aWMgaW5saW5lIHZvaWQgaW5pdF9y c3NfdmVjKGludCAqcnNzKQ0KK2lubGluZSB2b2lkIGluaXRfcnNzX3ZlYyhpbnQgKnJzcykNCiB7 DQogCW1lbXNldChyc3MsIDAsIHNpemVvZihpbnQpICogTlJfTU1fQ09VTlRFUlMpOw0KIH0NCiAN Ci1zdGF0aWMgaW5saW5lIHZvaWQgYWRkX21tX3Jzc192ZWMoc3RydWN0IG1tX3N0cnVjdCAqbW0s IGludCAqcnNzKQ0KK2lubGluZSB2b2lkIGFkZF9tbV9yc3NfdmVjKHN0cnVjdCBtbV9zdHJ1Y3Qg Km1tLCBpbnQgKnJzcykNCiB7DQogCWludCBpOw0KIA0KZGlmZiAtLWdpdCB2NC4yLXJjNC5vcmln L21tL3JtYXAuYyB2NC4yLXJjNC9tbS9ybWFwLmMNCmluZGV4IDE3MWI2ODc2OGRmMS4uNzhlNzdi MGVhM2MzIDEwMDY0NA0KLS0tIHY0LjItcmM0Lm9yaWcvbW0vcm1hcC5jDQorKysgdjQuMi1yYzQv bW0vcm1hcC5jDQpAQCAtMTIzMCw3ICsxMjMwLDkgQEAgc3RhdGljIGludCB0cnlfdG9fdW5tYXBf b25lKHN0cnVjdCBwYWdlICpwYWdlLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwNCiAJdXBk YXRlX2hpd2F0ZXJfcnNzKG1tKTsNCiANCiAJaWYgKFBhZ2VIV1BvaXNvbihwYWdlKSAmJiAhKGZs YWdzICYgVFRVX0lHTk9SRV9IV1BPSVNPTikpIHsNCi0JCWlmICghUGFnZUh1Z2UocGFnZSkpIHsN CisJCWlmIChQYWdlSHVnZShwYWdlKSkgew0KKwkJCW1vZF9odWdldGxiX3JzcyhtbSwgLSgxIDw8 IGNvbXBvdW5kX29yZGVyKHBhZ2UpKSk7DQorCQl9IGVsc2Ugew0KIAkJCWlmIChQYWdlQW5vbihw YWdlKSkNCiAJCQkJZGVjX21tX2NvdW50ZXIobW0sIE1NX0FOT05QQUdFUyk7DQogCQkJZWxzZQ0K LS0gDQoyLjQuMw0K -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org