From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail190.messagelabs.com (mail190.messagelabs.com [216.82.249.51]) by kanga.kvack.org (Postfix) with SMTP id 00C8D6B00C6 for ; Tue, 25 Aug 2009 17:12:38 -0400 (EDT) Received: by gxk12 with SMTP id 12so4790758gxk.4 for ; Tue, 25 Aug 2009 14:12:41 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <82e12e5f0908220954p7019fb3dg15f9b99bb7e55a8c@mail.gmail.com> References: <82e12e5f0908220954p7019fb3dg15f9b99bb7e55a8c@mail.gmail.com> Date: Mon, 24 Aug 2009 10:44:41 +0900 Message-ID: <28c262360908231844o3df95b14v15b2d4424465f033@mail.gmail.com> Subject: Re: [PATCH] mm: make munlock fast when mlock is canceled by sigkill From: Minchan Kim Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 Sender: owner-linux-mm@kvack.org To: Hiroaki Wakabayashi , KAMEZAWA Hiroyuki Cc: Andrew Morton , LKML , linux-mm@kvack.org, Paul Menage , Ying Han , KOSAKI Motohiro , Pekka Enberg , Lee Schermerhorn List-ID: T24gU3VuLCBBdWcgMjMsIDIwMDkgYXQgMTo1NCBBTSwgSGlyb2FraQpXYWthYmF5YXNoaTxwcmlt dWxhZWxhdGlvckBnbWFpbC5jb20+IHdyb3RlOgo+IEZyb20gMjdiMmZkZTAyMjJjNTkwNDkwMjZl N2QwYmRjNGEyYTY4ZDA3MjBmNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKPiBGcm9tOiBIaXJv YWtpIFdha2FiYXlhc2hpIDxwcmltdWxhZWxhdGlvckBnbWFpbC5jb20+Cj4gRGF0ZTogU2F0LCAy MiBBdWcgMjAwOSAxOToxNDo1MyArMDkwMAo+IFN1YmplY3Q6IFtQQVRDSF0gbW06IG1ha2UgbXVu bG9jayBmYXN0IHdoZW4gbWxvY2sgaXMgY2FuY2VsZWQgYnkgc2lna2lsbAo+Cj4gVGhpcyBwYXRj aCBpcyBmb3IgbWFraW5nIGNvbW1pdCA0Nzc5MjgwZDFlIChtbTogbWFrZSBnZXRfdXNlcl9wYWdl cygpCj4gaW50ZXJydXB0aWJsZSkgY29tcGxldGUuCj4KPiBBdCBmaXJzdCwgbXVubG9jaygpIGFz c3VtZXMgdGhhdCBhbGwgcGFnZXMgaW4gdm1hIGFyZSBwaW5uZWQsCj4KPiBOb3csIGJ5IHRoZSBj b21taXQsIG1sb2NrKCkgY2FuIGJlIGludGVycnVwdGVkIGJ5IFNJR0tJTEwsIGV0YyDCoFNvLCBw YXJ0IG9mCj4gcGFnZXMgYXJlIG5vdCBwaW5uZWQuCj4gSWYgU0lHS0lMTCwgSW4gZXhpdCgpIHBh dGgsIG11bmxvY2sgaXMgY2FsbGVkIGZvciB1bmxvY2tpbmcgcGlubmVkIHBhZ2VzCj4gaW4gdm1h Lgo+Cj4gQnV0LCB0aGVyZSwgZ2V0X3VzZXJfcGFnZXMod3JpdGUpIGlzIHVzZWQgZm9yIG11bmxv Y2soKS4gVGhlbiwgcGFnZXMgYXJlCj4gYWxsb2NhdGVkIHZpYSBwYWdlLWZhdWx0IGZvciBleHNp dGluZyBwcm9jZXNzICEhISBUaGlzIGlzIHByb2JsZW0gYXQgY2FuY2VsaW5nCj4gYmlnIG1sb2Nr Lgo+IFRoaXMgcGF0Y2ggdHJpZXMgdG8gYXZvaWQgYWxsb2NhdGluZyBuZXcgcGFnZXMgYXQgbXVu bG9jaygpLgo+Cj4gwqAgbWxvY2soIGJpZyBhcmVhICkKPiDCoCDCoCDCoCDCoDw9PT09PSBzaWcg a2lsbAo+IMKgIGRvX2V4aXQoKQo+IMKgIMKgLT5tbXB1dCgpCj4gwqAgwqAgwqAgLT4gZG9fbXVu bG9jaygpCj4gwqAgwqAgwqAgwqAgLT4gZ2V0X3VzZXJfcGFnZXMoKQo+IMKgIMKgIMKgIMKgIMKg IMKgIMKgIDxhbGxvY2F0ZSAqbmV2ZXIgdXNlZCogbWVtb3J5Pgo+IMKgIMKgIMKgIC0+Li4uLi5m cmVlaW5nIGFsbG9jYXRlZCBtZW1vcnkuCj4KPiAqIFRlc3QgcHJvZ3JhbQo+ICUgY2F0IHJ1bi5z aAo+ICMhL2Jpbi9zaAo+Cj4gLi9tbG9ja190ZXN0IDIwMDAwMDAwMDAgJgo+IHNsZWVwIDIKPiBr aWxsIC05ICQhCj4gd2FpdAo+Cj4gJSBjYXQgbWxvY2tfdGVzdC5jCj4gI2luY2x1ZGUgPHN0ZGlv Lmg+Cj4gI2luY2x1ZGUgPHN0ZGxpYi5oPgo+ICNpbmNsdWRlIDxzdHJpbmcuaD4KPiAjaW5jbHVk ZSA8c3lzL21tYW4uaD4KPiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Cj4gI2luY2x1ZGUgPHN5cy9z dGF0Lmg+Cj4gI2luY2x1ZGUgPGZjbnRsLmg+Cj4gI2luY2x1ZGUgPGVycm5vLmg+Cj4gI2luY2x1 ZGUgPHRpbWUuaD4KPiAjaW5jbHVkZSA8dW5pc3RkLmg+Cj4gI2luY2x1ZGUgPHN5cy90aW1lLmg+ Cj4KPiBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCj4gewo+IMKgIMKgIMKgIMKgc2l6 ZV90IGxlbmd0aCA9IDUwICogMTAyNCAqIDEwMjQ7Cj4gwqAgwqAgwqAgwqB2b2lkICphZGRyOwo+ IMKgIMKgIMKgIMKgdGltZV90IHRpbWVyOwo+Cj4gwqAgwqAgwqAgwqBpZiAoYXJnYyA+PSAyKQo+ IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgbGVuZ3RoID0gc3RydG91bChhcmd2WzFdLCBOVUxMLCAx MCk7Cj4gwqAgwqAgwqAgwqBwcmludGYoIlBJRCA9ICVkXG4iLCBnZXRwaWQoKSk7Cj4gwqAgwqAg wqAgwqBhZGRyID0gbW1hcChOVUxMLCBsZW5ndGgsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCj4g wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBNQVBfUFJJVkFU RSB8IE1BUF9BTk9OWU1PVVMsIC0xLCAwKTsKPiDCoCDCoCDCoCDCoGlmIChhZGRyID09IE1BUF9G QUlMRUQpIHsKPiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoGZwcmludGYoc3RkZXJyLCAibW1hcCBm YWlsZWQ6ICVzLCBsZW5ndGg9JWx1XG4iLAo+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgc3RyZXJyb3IoZXJybm8pLCBsZW5ndGgpOwo+IMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgZXhpdChFWElUX0ZBSUxVUkUpOwo+IMKgIMKgIMKgIMKgfQo+IMKgIMKgIMKg IMKgcHJpbnRmKCJ0cnkgbWxvY2sgbGVuZ3RoPSVsdVxuIiwgbGVuZ3RoKTsKPiDCoCDCoCDCoCDC oHRpbWVyID0gdGltZShOVUxMKTsKPiDCoCDCoCDCoCDCoGlmIChtbG9jayhhZGRyLCBsZW5ndGgp IDwgMCkgewo+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgZnByaW50ZihzdGRlcnIsICJtbG9jayBm YWlsZWQ6ICVzLCB0aW1lPSVsdVtzZWNdXG4iLAo+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgc3RyZXJyb3IoZXJybm8pLCB0aW1lKE5VTEwpIC0gdGltZXIp Owo+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgZXhpdChFWElUX0ZBSUxVUkUpOwo+IMKgIMKgIMKg IMKgfQo+IMKgIMKgIMKgIMKgcHJpbnRmKCJtbG9jayBzdWNjZWVkLCB0aW1lPSVsdVtzZWNdXG5c biIsIHRpbWUoTlVMTCkgLSB0aW1lcik7Cj4gwqAgwqAgwqAgwqBwcmludGYoInRyeSBtdW5sb2Nr IGxlbmd0aD0lbHVcbiIsIGxlbmd0aCk7Cj4gwqAgwqAgwqAgwqB0aW1lciA9IHRpbWUoTlVMTCk7 Cj4gwqAgwqAgwqAgwqBpZiAobXVubG9jayhhZGRyLCBsZW5ndGgpIDwgMCkgewo+IMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgZnByaW50ZihzdGRlcnIsICJtdW5sb2NrIGZhaWxlZDogJXMsIHRpbWU9 JWx1W3NlY11cbiIsCj4gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqBzdHJlcnJvcihlcnJubyksIHRpbWUoTlVMTCktdGltZXIpOwo+IMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgZXhpdChFWElUX0ZBSUxVUkUpOwo+IMKgIMKgIMKgIMKgfQo+IMKgIMKgIMKgIMKg cHJpbnRmKCJtdW5sb2NrIHN1Y2NlZWQsIHRpbWU9JWx1W3NlY11cblxuIiwgdGltZShOVUxMKSAt IHRpbWVyKTsKPiDCoCDCoCDCoCDCoGlmIChtdW5tYXAoYWRkciwgbGVuZ3RoKSA8IDApIHsKPiDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoGZwcmludGYoc3RkZXJyLCAibXVubWFwIGZhaWxlZDogJXNc biIsIHN0cmVycm9yKGVycm5vKSk7Cj4gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBleGl0KEVYSVRf RkFJTFVSRSk7Cj4gwqAgwqAgwqAgwqB9Cj4gwqAgwqAgwqAgwqByZXR1cm4gMDsKPiB9Cj4KPiAq IEV4ZWN1dGVkIFJlc3VsdAo+IC0tIE9yaWdpbmFsIGV4ZWN1dGVkIHJlc3VsdAo+ICUgdGltZSAu L3J1bi5zaAo+Cj4gUElEID0gMjY3OAo+IHRyeSBtbG9jayBsZW5ndGg9MjAwMDAwMDAwMAo+IC4v cnVuLnNoOiBsaW5lIDY6IMKgMjY3OCBLaWxsZWQgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAu L21sb2NrX3Rlc3QgMjAwMDAwMDAwMAo+IC4vcnVuLnNoIMKgMC4wMHMgdXNlciAyLjU5cyBzeXN0 ZW0gMTMlIGNwdSAxOC43ODEgdG90YWwKPiAlCj4KPiAtLSBBZnRlciBhcHBsaWVkIHRoaXMgcGF0 Y2gKPiAlIHRpbWUgLi9ydW4uc2gKPgo+IFBJRCA9IDI1MTIKPiB0cnkgbWxvY2sgbGVuZ3RoPTIw MDAwMDAwMDAKPiAuL3J1bi5zaDogbGluZSA2OiDCoDI1MTIgS2lsbGVkIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgLi9tbG9ja190ZXN0IDIwMDAwMDAwMDAKPiAuL3J1bi5zaCDCoDAuMDBzIHVz ZXIgMS4xNXMgc3lzdGVtIDQ1JSBjcHUgMi41MDcgdG90YWwKPiAlCj4KPiBTaWduZWQtb2ZmLWJ5 OiBIaXJvYWtpIFdha2FiYXlhc2hpIDxwcmltdWxhZWxhdGlvckBnbWFpbC5jb20+Cj4gLS0tCj4g wqBtbS9pbnRlcm5hbC5oIHwgwqAgwqAxICsKPiDCoG1tL21lbW9yeS5jIMKgIHwgwqAgwqA5ICsr KysrKystLQo+IMKgbW0vbWxvY2suYyDCoCDCoHwgwqAgMzUgKysrKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tLS0KPiDCoDMgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgMTgg ZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvbW0vaW50ZXJuYWwuaCBiL21tL2ludGVybmFs LmgKPiBpbmRleCBmMjkwYzRkLi40YWI1YjI0IDEwMDY0NAo+IC0tLSBhL21tL2ludGVybmFsLmgK PiArKysgYi9tbS9pbnRlcm5hbC5oCj4gQEAgLTI1NCw2ICsyNTQsNyBAQCBzdGF0aWMgaW5saW5l IHZvaWQKPiBtbWluaXRfdmFsaWRhdGVfbWVtbW9kZWxfbGltaXRzKHVuc2lnbmVkIGxvbmcgKnN0 YXJ0X3BmbiwKPiDCoCNkZWZpbmUgR1VQX0ZMQUdTX0ZPUkNFIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgMHgyCj4gwqAjZGVmaW5lIEdVUF9GTEFHU19JR05PUkVfVk1BX1BFUk1JU1NJT05TIDB4 NAo+IMKgI2RlZmluZSBHVVBfRkxBR1NfSUdOT1JFX1NJR0tJTEwgwqAgwqAgwqAgwqAgMHg4Cj4g KyNkZWZpbmUgR1VQX0ZMQUdTX0FMTE9XX05VTEwgwqAgwqAgwqAgwqAgwqAgwqAgMHgxMAo+CgpJ IGFtIHdvcnJpZWQgYWJvdXQgYWRkaW5nIG5ldyBmbGFnIHdoZW5ldmVyIHdlIG5lZWQgaXQuCkJ1 dCBJIHRoaW5rIHRoaXMgY2FzZSBtYWtlcyBzZW5zZSB0byBtZS4KSW4gYWRkaXRpb24sIEkgZ3Vl c3MgWkVSTyBwYWdlIGNhbiBhbHNvIHVzZSB0aGlzIGZsYWcuCgpLYW1lLiBXaGF0IGRvIHlvdSB0 aGluayBhYm91dCBpdD8KCgo+IMKgaW50IF9fZ2V0X3VzZXJfcGFnZXMoc3RydWN0IHRhc2tfc3Ry dWN0ICp0c2ssIHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLAo+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIHVuc2lnbmVkIGxvbmcgc3RhcnQsIGludCBsZW4sIGludCBmbGFncywKPiBkaWZmIC0t Z2l0IGEvbW0vbWVtb3J5LmMgYi9tbS9tZW1vcnkuYwo+IGluZGV4IGFlZGUyY2UuLmI0MWZiZjkg MTAwNjQ0Cj4gLS0tIGEvbW0vbWVtb3J5LmMKPiArKysgYi9tbS9tZW1vcnkuYwo+IEBAIC0xMjE3 LDYgKzEyMTcsNyBAQCBpbnQgX19nZXRfdXNlcl9wYWdlcyhzdHJ1Y3QgdGFza19zdHJ1Y3QgKnRz aywKPiBzdHJ1Y3QgbW1fc3RydWN0ICptbSwKPiDCoCDCoCDCoCDCoGludCBmb3JjZSA9ICEhKGZs YWdzICYgR1VQX0ZMQUdTX0ZPUkNFKTsKPiDCoCDCoCDCoCDCoGludCBpZ25vcmUgPSAhIShmbGFn cyAmIEdVUF9GTEFHU19JR05PUkVfVk1BX1BFUk1JU1NJT05TKTsKPiDCoCDCoCDCoCDCoGludCBp Z25vcmVfc2lna2lsbCA9ICEhKGZsYWdzICYgR1VQX0ZMQUdTX0lHTk9SRV9TSUdLSUxMKTsKPiAr IMKgIMKgIMKgIGludCBhbGxvd19udWxsID0gISEoZmxhZ3MgJiBHVVBfRkxBR1NfQUxMT1dfTlVM TCk7Cj4KPiDCoCDCoCDCoCDCoGlmIChucl9wYWdlcyA8PSAwKQo+IMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgcmV0dXJuIDA7Cj4gQEAgLTEzMTIsNiArMTMxMyw4IEBAIGludCBfX2dldF91c2VyX3Bh Z2VzKHN0cnVjdCB0YXNrX3N0cnVjdCAqdHNrLAo+IHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLAo+IMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgd2hpbGUgKCEocGFnZSA9IGZvbGxvd19w YWdlKHZtYSwgc3RhcnQsIGZvbGxfZmxhZ3MpKSkgewo+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgaW50IHJldDsKPgo+ICsgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgaWYgKGFsbG93X251bGwpCj4gKyDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBicmVhazsKPiDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoHJldCA9IGhhbmRs ZV9tbV9mYXVsdChtbSwgdm1hLCBzdGFydCwKPiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChmb2xsX2ZsYWdzICYgRk9MTF9XUklURSkg Pwo+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgRkFVTFRfRkxBR19XUklURSA6IDApOwo+IEBAIC0xMzUxLDggKzEzNTQsMTAgQEAgaW50 IF9fZ2V0X3VzZXJfcGFnZXMoc3RydWN0IHRhc2tfc3RydWN0ICp0c2ssCj4gc3RydWN0IG1tX3N0 cnVjdCAqbW0sCj4gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBpZiAocGFnZXMp IHsKPiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoHBhZ2Vz W2ldID0gcGFnZTsKPgo+IC0gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgZmx1c2hfYW5vbl9wYWdlKHZtYSwgcGFnZSwgc3RhcnQpOwo+IC0gwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgZmx1c2hfZGNhY2hlX3BhZ2UocGFnZSk7 Cj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBpZiAocGFn ZSkgewo+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgZmx1c2hfYW5vbl9wYWdlKHZtYSwgcGFnZSwgc3RhcnQpOwo+ICsgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgZmx1c2hfZGNh Y2hlX3BhZ2UocGFnZSk7Cj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCB9Cj4gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqB9Cj4gwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBpZiAodm1hcykKPiDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoHZtYXNbaV0gPSB2bWE7Cj4gZGlmZiAtLWdp dCBhL21tL21sb2NrLmMgYi9tbS9tbG9jay5jCj4gaW5kZXggNDVlYjY1MC4uMGY1ODI3YiAxMDA2 NDQKPiAtLS0gYS9tbS9tbG9jay5jCj4gKysrIGIvbW0vbWxvY2suYwo+IEBAIC0xNzgsOSArMTc4 LDEwIEBAIHN0YXRpYyBsb25nIF9fbWxvY2tfdm1hX3BhZ2VzX3JhbmdlKHN0cnVjdAo+IHZtX2Fy ZWFfc3RydWN0ICp2bWEsCj4gwqAgwqAgwqAgwqAgKi8KPiDCoCDCoCDCoCDCoGlmICghbWxvY2sp Cj4gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBndXBfZmxhZ3MgfD0gR1VQX0ZMQUdTX0lHTk9SRV9W TUFfUEVSTUlTU0lPTlMgfAo+IC0gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqBHVVBfRkxBR1NfSUdOT1JFX1NJR0tJTEw7Cj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoEdVUF9GTEFHU19JR05PUkVfU0lHS0lMTCB8Cj4gKyDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEdVUF9GTEFHU19BTExPV19OVUxMOwo+ Cj4gLSDCoCDCoCDCoCBpZiAodm1hLT52bV9mbGFncyAmIFZNX1dSSVRFKQo+ICsgwqAgwqAgwqAg aWYgKG1sb2NrICYmICh2bWEtPnZtX2ZsYWdzICYgVk1fV1JJVEUpKQo+IMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgZ3VwX2ZsYWdzIHw9IEdVUF9GTEFHU19XUklURTsKPgo+IMKgIMKgIMKgIMKgd2hp bGUgKG5yX3BhZ2VzID4gMCkgewo+IEBAIC0yMjAsMjEgKzIyMSwyMyBAQCBzdGF0aWMgbG9uZyBf X21sb2NrX3ZtYV9wYWdlc19yYW5nZShzdHJ1Y3QKPiB2bV9hcmVhX3N0cnVjdCAqdm1hLAo+IMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgZm9yIChpID0gMDsgaSA8IHJldDsgaSsrKSB7Cj4gwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBzdHJ1Y3QgcGFnZSAqcGFnZSA9IHBhZ2VzW2ld Owo+Cj4gLSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBsb2NrX3BhZ2UocGFnZSk7 Cj4gLSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAvKgo+IC0gwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAqIEJlY2F1c2Ugd2UgbG9jayBwYWdlIGhlcmUgYW5kIG1p Z3JhdGlvbiBpcyBibG9ja2VkCj4gLSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCogYnkgdGhlIGVsZXZhdGVkIHJlZmVyZW5jZSwgd2UgbmVlZCBvbmx5IGNoZWNrIGZvcgo+IC0g wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAqIHBhZ2UgdHJ1bmNhdGlvbiAoZmls ZS1jYWNoZSBvbmx5KS4KPiAtIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKi8K PiAtIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIGlmIChwYWdlLT5tYXBwaW5nKSB7 Cj4gLSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBpZiAobWxv Y2spCj4gLSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCBtbG9ja192bWFfcGFnZShwYWdlKTsKPiAtIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIGVsc2UKPiAtIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIG11bmxvY2tfdm1hX3BhZ2UocGFnZSk7Cj4g KyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBpZiAocGFnZSkgewo+ICsgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgbG9ja19wYWdlKHBhZ2UpOwo+ ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgLyoKPiArIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKiBCZWNhdXNlIHdl IGxvY2sgcGFnZSBoZXJlIGFuZCBtaWdyYXRpb24gaXMKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKiBibG9ja2VkIGJ5IHRoZSBlbGV2YXRlZCByZWZl cmVuY2UsIHdlIG5lZWQKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgKiBvbmx5IGNoZWNrIGZvciBwYWdlIHRydW5jYXRpb24KPiArIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKiAoZmlsZS1jYWNoZSBvbmx5KS4K PiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKi8KPiAr IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIGlmIChwYWdlLT5t YXBwaW5nKSB7Cj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCBpZiAobWxvY2spCj4gKyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBtbG9ja192bWFfcGFnZShw YWdlKTsKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIGVsc2UKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIG11bmxvY2tfdm1hX3BhZ2UocGFnZSk7Cj4g KyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCB9Cj4gKyDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCB1bmxvY2tfcGFnZShwYWdl KTsKPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIHB1dF9w YWdlKHBhZ2UpOyAvKiByZWYgZnJvbSBnZXRfdXNlcl9wYWdlcygpICovCj4gwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqB9Cj4gLSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCB1bmxvY2tfcGFnZShwYWdlKTsKPiAtIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIHB1dF9wYWdlKHBhZ2UpOyDCoCDCoCDCoCDCoCAvKiByZWYgZnJvbSBnZXRfdXNlcl9wYWdl cygpICovCj4gLQo+IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgLyoKPiDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAqIGhlcmUgd2UgYXNzdW1lIHRoYXQgZ2V0 X3VzZXJfcGFnZXMoKSBoYXMgZ2l2ZW4gdXMKPiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCAqIGEgbGlzdCBvZiB2aXJ0dWFsbHkgY29udGlndW91cyBwYWdlcy4KPiAtLQo+IDEu NS42LjUKPiAtLQo+IFRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBsaXN0OiBzZW5kIHRoZSBsaW5l ICJ1bnN1YnNjcmliZSBsaW51eC1rZXJuZWwiIGluCj4gdGhlIGJvZHkgb2YgYSBtZXNzYWdlIHRv IG1ham9yZG9tb0B2Z2VyLmtlcm5lbC5vcmcKPiBNb3JlIG1ham9yZG9tbyBpbmZvIGF0IMKgaHR0 cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8taW5mby5odG1sCj4gUGxlYXNlIHJlYWQgdGhl IEZBUSBhdCDCoGh0dHA6Ly93d3cudHV4Lm9yZy9sa21sLwo+CgoKCi0tIApLaW5kIHJlZ2FyZHMs Ck1pbmNoYW4gS2ltCg== -- 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