Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755948AbYAHKi0 (ORCPT ); Tue, 8 Jan 2008 05:38:26 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753937AbYAHKgR (ORCPT ); Tue, 8 Jan 2008 05:36:17 -0500 Received: from ms1.nttdata.co.jp ([163.135.193.232]:40593 "EHLO ms1.nttdata.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753661AbYAHKgH (ORCPT ); Tue, 8 Jan 2008 05:36:07 -0500 X-Greylist: delayed 2759 seconds by postgrey-1.27 at vger.kernel.org; Tue, 08 Jan 2008 05:35:56 EST Message-Id: <20080108094957.713225433@nttdata.co.jp> References: <20080108094903.484613061@nttdata.co.jp> User-Agent: quilt/0.46-1 Date: Tue, 08 Jan 2008 18:49:07 +0900 From: Kentaro Takeda To: akpm@linux-foundation.org Cc: linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, Tetsuo Handa Subject: [TOMOYO #6 04/21] Replace VFS with wrapper functions. X-OriginalArrivalTime: 08 Jan 2008 09:49:58.0162 (UTC) FILETIME=[D44DDF20:01C851DB] MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="boundary-1" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 12058 Lines: 164 --boundary-1 Content-Disposition: inline; filename="replace-vfs-with-wrapper-functions.patch" Content-Type: application/octect-stream Content-Transfer-Encoding: base64 VGhpcyBwYXRjaCByZXBsYWNlcyBWRlMgaGVscGVyIGZ1bmN0aW9uIGNhbGxzIGNhdXNlZCBieQ0K dXNlcmxhbmQgcHJvY2VzcydzIHJlcXVlc3Qgd2l0aCBWRlMgd3JhcHBlciBmdW5jdGlvbnMgY2Fs bC4NCkkgZG9uJ3QgaGF2ZSBhIHBsYW4gdG8gY29udHJvbCBWRlMgaGVscGVyIGZ1bmN0aW9uIGNh bGxzDQpjYXVzZWQgYnkgdGhlIGtlcm5lbC4gVGhlcmVmb3JlLCB0aGlzIHBhdGNoIGRvZXNuJ3Qg bW9kaWZ5DQppbmRpdmlkdWFsIGZpbGVzeXN0ZW1zIGluIGZzLyovIGRpcmVjdG9yeS4NCg0KSSBu ZWVkIHRvIGtub3cgdGhlIHZmc21vdW50IHBhcmFtZXRlciBmcm9tIExTTSBob29rcyBzbyB0aGF0 DQpJIGNhbiBjYWxjdWxhdGUgdGhlIHBhdGhuYW1lIG9mIGEgZ2l2ZW4gZGVudHJ5Lg0KDQpTY2Fu bmluZyB0aGUgY2FsbGVyIHByb2Nlc3MncyBuYW1lc3BhY2UgbGlzdCBjYW5ub3QgcmVsaWFibHkN CmRldGVybWluZSB3aGljaCB2ZnNtb3VudCB0aGUgZ2l2ZW4gZGVudHJ5IGJlbG9uZ3MgdG8NCmJl Y2F1c2UgdGhlIGNvcnJlc3BvbmRpbmcgdmZzbW91bnQgcGFyYW1ldGVyIGFwcGVhcnMgZm9yDQpt dWx0aXBsZSB0aW1lcyB3aGVuIGJpbmQgbW91bnRzIGFyZSB1c2VkLg0KDQpXaGF0IGlzIHdvcnNl LCBhY2Nlc3NpbmcgbmFtZXNwYWNlX3NlbSBmcm9tIExTTSBob29rcyB0cmlnZ2Vycw0KQUItQkEg ZGVhZGxvY2suIFRoZXJlZm9yZSwgSSBkZWZpbml0ZWx5IG5lZWQgZWl0aGVyIEFwcEFybW9yJ3MN CiJBZGQgc3RydWN0IHZmc21vdW50IHBhcmFtZXRlciB0byAuLi4iIHBhdGNoZXMgb3IgdGhpcyBw YXRjaC4NCg0KU2lnbmVkLW9mZi1ieTogVGV0c3VvIEhhbmRhIDxwZW5ndWluLWtlcm5lbEBJLWxv dmUuU0FLVVJBLm5lLmpwPg0KLS0tDQogZnMvbmFtZWkuYyAgICAgICAgIHwgICAzNCArKysrKysr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tDQogZnMvb3Blbi5jICAgICAgICAgIHwgICAyMyAr KysrKysrKysrKysrLS0tLS0tLS0tLQ0KIG5ldC91bml4L2FmX3VuaXguYyB8ICAgIDMgKystDQog MyBmaWxlcyBjaGFuZ2VkLCAzNCBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlvbnMoLSkNCg0KLS0t IGxpbnV4LTIuNi1tbS5vcmlnL2ZzL29wZW4uYw0KKysrIGxpbnV4LTIuNi1tbS9mcy9vcGVuLmMN CkBAIC0yNzEsNyArMjcxLDggQEAgc3RhdGljIGxvbmcgZG9fc3lzX3RydW5jYXRlKGNvbnN0IGNo YXIgXw0KIAllcnJvciA9IGxvY2tzX3ZlcmlmeV90cnVuY2F0ZShpbm9kZSwgTlVMTCwgbGVuZ3Ro KTsNCiAJaWYgKCFlcnJvcikgew0KIAkJRFFVT1RfSU5JVChpbm9kZSk7DQotCQllcnJvciA9IGRv X3RydW5jYXRlKG5kLnBhdGguZGVudHJ5LCBsZW5ndGgsIDAsIE5VTEwpOw0KKwkJZXJyb3IgPSBk b190cnVuY2F0ZTIobmQucGF0aC5kZW50cnksIG5kLnBhdGgubW50LCBsZW5ndGgsIDAsDQorCQkJ CSAgICAgTlVMTCk7DQogCX0NCiANCiBwdXRfd3JpdGVfYW5kX291dDoNCkBAIC0zMjYsNyArMzI3 LDggQEAgc3RhdGljIGxvbmcgZG9fc3lzX2Z0cnVuY2F0ZSh1bnNpZ25lZCBpbg0KIA0KIAllcnJv ciA9IGxvY2tzX3ZlcmlmeV90cnVuY2F0ZShpbm9kZSwgZmlsZSwgbGVuZ3RoKTsNCiAJaWYgKCFl cnJvcikNCi0JCWVycm9yID0gZG9fdHJ1bmNhdGUoZGVudHJ5LCBsZW5ndGgsIEFUVFJfTVRJTUV8 QVRUUl9DVElNRSwgZmlsZSk7DQorCQllcnJvciA9IGRvX3RydW5jYXRlMihkZW50cnksIGZpbGUt PmZfcGF0aC5tbnQsIGxlbmd0aCwNCisJCQkJICAgICBBVFRSX01USU1FfEFUVFJfQ1RJTUUsIGZp bGUpOw0KIG91dF9wdXRmOg0KIAlmcHV0KGZpbGUpOw0KIG91dDoNCkBAIC01ODksNyArNTkxLDcg QEAgYXNtbGlua2FnZSBsb25nIHN5c19mY2htb2QodW5zaWduZWQgaW50IA0KIAkJbW9kZSA9IGlu b2RlLT5pX21vZGU7DQogCW5ld2F0dHJzLmlhX21vZGUgPSAobW9kZSAmIFNfSUFMTFVHTykgfCAo aW5vZGUtPmlfbW9kZSAmIH5TX0lBTExVR08pOw0KIAluZXdhdHRycy5pYV92YWxpZCA9IEFUVFJf TU9ERSB8IEFUVFJfQ1RJTUU7DQotCWVyciA9IG5vdGlmeV9jaGFuZ2UoZGVudHJ5LCAmbmV3YXR0 cnMpOw0KKwllcnIgPSBub3RpZnlfY2hhbmdlMihkZW50cnksIGZpbGUtPmZfcGF0aC5tbnQsICZu ZXdhdHRycyk7DQogCW11dGV4X3VubG9jaygmaW5vZGUtPmlfbXV0ZXgpOw0KIA0KIG91dF9kcm9w X3dyaXRlOg0KQEAgLTYyNiw3ICs2MjgsNyBAQCBhc21saW5rYWdlIGxvbmcgc3lzX2ZjaG1vZGF0 KGludCBkZmQsIGNvDQogCQltb2RlID0gaW5vZGUtPmlfbW9kZTsNCiAJbmV3YXR0cnMuaWFfbW9k ZSA9IChtb2RlICYgU19JQUxMVUdPKSB8IChpbm9kZS0+aV9tb2RlICYgflNfSUFMTFVHTyk7DQog CW5ld2F0dHJzLmlhX3ZhbGlkID0gQVRUUl9NT0RFIHwgQVRUUl9DVElNRTsNCi0JZXJyb3IgPSBu b3RpZnlfY2hhbmdlKG5kLnBhdGguZGVudHJ5LCAmbmV3YXR0cnMpOw0KKwllcnJvciA9IG5vdGlm eV9jaGFuZ2UyKG5kLnBhdGguZGVudHJ5LCBuZC5wYXRoLm1udCwgJm5ld2F0dHJzKTsNCiAJbXV0 ZXhfdW5sb2NrKCZpbm9kZS0+aV9tdXRleCk7DQogDQogb3V0X2Ryb3Bfd3JpdGU6DQpAQCAtNjQy LDcgKzY0NCw4IEBAIGFzbWxpbmthZ2UgbG9uZyBzeXNfY2htb2QoY29uc3QgY2hhciBfX3UNCiAJ cmV0dXJuIHN5c19mY2htb2RhdChBVF9GRENXRCwgZmlsZW5hbWUsIG1vZGUpOw0KIH0NCiANCi1z dGF0aWMgaW50IGNob3duX2NvbW1vbihzdHJ1Y3QgZGVudHJ5ICogZGVudHJ5LCB1aWRfdCB1c2Vy LCBnaWRfdCBncm91cCkNCitzdGF0aWMgaW50IGNob3duX2NvbW1vbihzdHJ1Y3QgZGVudHJ5ICpk ZW50cnksIHN0cnVjdCB2ZnNtb3VudCAqbW50LA0KKwkJCXVpZF90IHVzZXIsIGdpZF90IGdyb3Vw KQ0KIHsNCiAJc3RydWN0IGlub2RlICogaW5vZGU7DQogCWludCBlcnJvcjsNCkBAIC02NjksNyAr NjcyLDcgQEAgc3RhdGljIGludCBjaG93bl9jb21tb24oc3RydWN0IGRlbnRyeSAqIA0KIAkJbmV3 YXR0cnMuaWFfdmFsaWQgfD0NCiAJCQlBVFRSX0tJTExfU1VJRCB8IEFUVFJfS0lMTF9TR0lEIHwg QVRUUl9LSUxMX1BSSVY7DQogCW11dGV4X2xvY2soJmlub2RlLT5pX211dGV4KTsNCi0JZXJyb3Ig PSBub3RpZnlfY2hhbmdlKGRlbnRyeSwgJm5ld2F0dHJzKTsNCisJZXJyb3IgPSBub3RpZnlfY2hh bmdlMihkZW50cnksIG1udCwgJm5ld2F0dHJzKTsNCiAJbXV0ZXhfdW5sb2NrKCZpbm9kZS0+aV9t dXRleCk7DQogb3V0Og0KIAlyZXR1cm4gZXJyb3I7DQpAQCAtNjg2LDcgKzY4OSw3IEBAIGFzbWxp bmthZ2UgbG9uZyBzeXNfY2hvd24oY29uc3QgY2hhciBfX3UNCiAJZXJyb3IgPSBtbnRfd2FudF93 cml0ZShuZC5wYXRoLm1udCk7DQogCWlmIChlcnJvcikNCiAJCWdvdG8gb3V0X3JlbGVhc2U7DQot CWVycm9yID0gY2hvd25fY29tbW9uKG5kLnBhdGguZGVudHJ5LCB1c2VyLCBncm91cCk7DQorCWVy cm9yID0gY2hvd25fY29tbW9uKG5kLnBhdGguZGVudHJ5LCBuZC5wYXRoLm1udCwgdXNlciwgZ3Jv dXApOw0KIAltbnRfZHJvcF93cml0ZShuZC5wYXRoLm1udCk7DQogb3V0X3JlbGVhc2U6DQogCXBh dGhfcHV0KCZuZC5wYXRoKTsNCkBAIC03MTEsNyArNzE0LDcgQEAgYXNtbGlua2FnZSBsb25nIHN5 c19mY2hvd25hdChpbnQgZGZkLCBjbw0KIAllcnJvciA9IG1udF93YW50X3dyaXRlKG5kLnBhdGgu bW50KTsNCiAJaWYgKGVycm9yKQ0KIAkJZ290byBvdXRfcmVsZWFzZTsNCi0JZXJyb3IgPSBjaG93 bl9jb21tb24obmQucGF0aC5kZW50cnksIHVzZXIsIGdyb3VwKTsNCisJZXJyb3IgPSBjaG93bl9j b21tb24obmQucGF0aC5kZW50cnksIG5kLnBhdGgubW50LCB1c2VyLCBncm91cCk7DQogCW1udF9k cm9wX3dyaXRlKG5kLnBhdGgubW50KTsNCiBvdXRfcmVsZWFzZToNCiAJcGF0aF9wdXQoJm5kLnBh dGgpOw0KQEAgLTczMCw3ICs3MzMsNyBAQCBhc21saW5rYWdlIGxvbmcgc3lzX2xjaG93bihjb25z dCBjaGFyIF9fDQogCWVycm9yID0gbW50X3dhbnRfd3JpdGUobmQucGF0aC5tbnQpOw0KIAlpZiAo ZXJyb3IpDQogCQlnb3RvIG91dF9yZWxlYXNlOw0KLQllcnJvciA9IGNob3duX2NvbW1vbihuZC5w YXRoLmRlbnRyeSwgdXNlciwgZ3JvdXApOw0KKwllcnJvciA9IGNob3duX2NvbW1vbihuZC5wYXRo LmRlbnRyeSwgbmQucGF0aC5tbnQsIHVzZXIsIGdyb3VwKTsNCiAJbW50X2Ryb3Bfd3JpdGUobmQu cGF0aC5tbnQpOw0KIG91dF9yZWxlYXNlOg0KIAlwYXRoX3B1dCgmbmQucGF0aCk7DQpAQCAtNzU0 LDcgKzc1Nyw3IEBAIGFzbWxpbmthZ2UgbG9uZyBzeXNfZmNob3duKHVuc2lnbmVkIGludCANCiAJ CWdvdG8gb3V0X2ZwdXQ7DQogCWRlbnRyeSA9IGZpbGUtPmZfcGF0aC5kZW50cnk7DQogCWF1ZGl0 X2lub2RlKE5VTEwsIGRlbnRyeSk7DQotCWVycm9yID0gY2hvd25fY29tbW9uKGRlbnRyeSwgdXNl ciwgZ3JvdXApOw0KKwllcnJvciA9IGNob3duX2NvbW1vbihkZW50cnksIGZpbGUtPmZfdmZzbW50 LCB1c2VyLCBncm91cCk7DQogCW1udF9kcm9wX3dyaXRlKGZpbGUtPmZfdmZzbW50KTsNCiBvdXRf ZnB1dDoNCiAJZnB1dChmaWxlKTsNCi0tLSBsaW51eC0yLjYtbW0ub3JpZy9mcy9uYW1laS5jDQor KysgbGludXgtMi42LW1tL2ZzL25hbWVpLmMNCkBAIC0xNjYzLDcgKzE2NjMsNyBAQCBpbnQgbWF5 X29wZW4oc3RydWN0IG5hbWVpZGF0YSAqbmQsIGludCBhDQogCQlpZiAoIWVycm9yKSB7DQogCQkJ RFFVT1RfSU5JVChpbm9kZSk7DQogDQotCQkJZXJyb3IgPSBkb190cnVuY2F0ZShkZW50cnksIDAs DQorCQkJZXJyb3IgPSBkb190cnVuY2F0ZTIoZGVudHJ5LCBuZC0+cGF0aC5tbnQsIDAsDQogCQkJ CQkgICAgQVRUUl9NVElNRXxBVFRSX0NUSU1FfEFUVFJfT1BFTiwNCiAJCQkJCSAgICBOVUxMKTsN CiAJCX0NCkBAIC0xNjkwLDcgKzE2OTAsNyBAQCBzdGF0aWMgaW50IF9fb3Blbl9uYW1laV9jcmVh dGUoc3RydWN0IG5hDQogDQogCWlmICghSVNfUE9TSVhBQ0woZGlyLT5kX2lub2RlKSkNCiAJCW1v ZGUgJj0gfmN1cnJlbnQtPmZzLT51bWFzazsNCi0JZXJyb3IgPSB2ZnNfY3JlYXRlKGRpci0+ZF9p bm9kZSwgcGF0aC0+ZGVudHJ5LCBtb2RlLCBuZCk7DQorCWVycm9yID0gdmZzX2NyZWF0ZTIoZGly LT5kX2lub2RlLCBwYXRoLT5kZW50cnksIG1vZGUsIG5kKTsNCiAJbXV0ZXhfdW5sb2NrKCZkaXIt PmRfaW5vZGUtPmlfbXV0ZXgpOw0KIAlkcHV0KG5kLT5wYXRoLmRlbnRyeSk7DQogCW5kLT5wYXRo LmRlbnRyeSA9IHBhdGgtPmRlbnRyeTsNCkBAIC0yMDc4LDE2ICsyMDc4LDE3IEBAIGFzbWxpbmth Z2UgbG9uZyBzeXNfbWtub2RhdChpbnQgZGZkLCBjb24NCiAJCWdvdG8gb3V0X2RwdXQ7DQogCXN3 aXRjaCAobW9kZSAmIFNfSUZNVCkgew0KIAkJY2FzZSAwOiBjYXNlIFNfSUZSRUc6DQotCQkJZXJy b3IgPSB2ZnNfY3JlYXRlKG5kLnBhdGguZGVudHJ5LT5kX2lub2RlLCBkZW50cnksDQotCQkJCQkJ bW9kZSwgJm5kKTsNCisJCQllcnJvciA9IHZmc19jcmVhdGUyKG5kLnBhdGguZGVudHJ5LT5kX2lu b2RlLCBkZW50cnksDQorCQkJCQkgICAgbW9kZSwgJm5kKTsNCiAJCQlicmVhazsNCiAJCWNhc2Ug U19JRkNIUjogY2FzZSBTX0lGQkxLOg0KLQkJCWVycm9yID0gdmZzX21rbm9kKG5kLnBhdGguZGVu dHJ5LT5kX2lub2RlLCBkZW50cnksIG1vZGUsDQotCQkJCQluZXdfZGVjb2RlX2RldihkZXYpKTsN CisJCQllcnJvciA9IHZmc19ta25vZDIobmQucGF0aC5kZW50cnktPmRfaW5vZGUsIGRlbnRyeSwN CisJCQkJCSAgIG5kLnBhdGgubW50LCBtb2RlLA0KKwkJCQkJICAgbmV3X2RlY29kZV9kZXYoZGV2 KSk7DQogCQkJYnJlYWs7DQogCQljYXNlIFNfSUZJRk86IGNhc2UgU19JRlNPQ0s6DQotCQkJZXJy b3IgPSB2ZnNfbWtub2QobmQucGF0aC5kZW50cnktPmRfaW5vZGUsIGRlbnRyeSwNCi0JCQkJCQlt b2RlLCAwKTsNCisJCQllcnJvciA9IHZmc19ta25vZDIobmQucGF0aC5kZW50cnktPmRfaW5vZGUs IGRlbnRyeSwNCisJCQkJCSAgIG5kLnBhdGgubW50LCBtb2RlLCAwKTsNCiAJCQlicmVhazsNCiAJ fQ0KIAltbnRfZHJvcF93cml0ZShuZC5wYXRoLm1udCk7DQpAQCAtMjE1NCw3ICsyMTU1LDcgQEAg YXNtbGlua2FnZSBsb25nIHN5c19ta2RpcmF0KGludCBkZmQsIGNvbg0KIAllcnJvciA9IG1udF93 YW50X3dyaXRlKG5kLnBhdGgubW50KTsNCiAJaWYgKGVycm9yKQ0KIAkJZ290byBvdXRfZHB1dDsN Ci0JZXJyb3IgPSB2ZnNfbWtkaXIobmQucGF0aC5kZW50cnktPmRfaW5vZGUsIGRlbnRyeSwgbW9k ZSk7DQorCWVycm9yID0gdmZzX21rZGlyMihuZC5wYXRoLmRlbnRyeS0+ZF9pbm9kZSwgZGVudHJ5 LCBuZC5wYXRoLm1udCwgbW9kZSk7DQogCW1udF9kcm9wX3dyaXRlKG5kLnBhdGgubW50KTsNCiBv dXRfZHB1dDoNCiAJZHB1dChkZW50cnkpOw0KQEAgLTIyNjYsNyArMjI2Nyw3IEBAIHN0YXRpYyBs b25nIGRvX3JtZGlyKGludCBkZmQsIGNvbnN0IGNoYXINCiAJZXJyb3IgPSBtbnRfd2FudF93cml0 ZShuZC5wYXRoLm1udCk7DQogCWlmIChlcnJvcikNCiAJCWdvdG8gZXhpdDM7DQotCWVycm9yID0g dmZzX3JtZGlyKG5kLnBhdGguZGVudHJ5LT5kX2lub2RlLCBkZW50cnkpOw0KKwllcnJvciA9IHZm c19ybWRpcjIobmQucGF0aC5kZW50cnktPmRfaW5vZGUsIGRlbnRyeSwgbmQucGF0aC5tbnQpOw0K IAltbnRfZHJvcF93cml0ZShuZC5wYXRoLm1udCk7DQogZXhpdDM6DQogCWRwdXQoZGVudHJ5KTsN CkBAIC0yMzUyLDcgKzIzNTMsOCBAQCBzdGF0aWMgbG9uZyBkb191bmxpbmthdChpbnQgZGZkLCBj b25zdCBjDQogCQllcnJvciA9IG1udF93YW50X3dyaXRlKG5kLnBhdGgubW50KTsNCiAJCWlmIChl cnJvcikNCiAJCQlnb3RvIGV4aXQyOw0KLQkJZXJyb3IgPSB2ZnNfdW5saW5rKG5kLnBhdGguZGVu dHJ5LT5kX2lub2RlLCBkZW50cnkpOw0KKwkJZXJyb3IgPSB2ZnNfdW5saW5rMihuZC5wYXRoLmRl bnRyeS0+ZF9pbm9kZSwgZGVudHJ5LA0KKwkJCQkgICAgbmQucGF0aC5tbnQpOw0KIAkJbW50X2Ry b3Bfd3JpdGUobmQucGF0aC5tbnQpOw0KIAlleGl0MjoNCiAJCWRwdXQoZGVudHJ5KTsNCkBAIC0y NDM3LDcgKzI0MzksOCBAQCBhc21saW5rYWdlIGxvbmcgc3lzX3N5bWxpbmthdChjb25zdCBjaGFy DQogCWVycm9yID0gbW50X3dhbnRfd3JpdGUobmQucGF0aC5tbnQpOw0KIAlpZiAoZXJyb3IpDQog CQlnb3RvIG91dF9kcHV0Ow0KLQllcnJvciA9IHZmc19zeW1saW5rKG5kLnBhdGguZGVudHJ5LT5k X2lub2RlLCBkZW50cnksIGZyb20sIFNfSUFMTFVHTyk7DQorCWVycm9yID0gdmZzX3N5bWxpbmsy KG5kLnBhdGguZGVudHJ5LT5kX2lub2RlLCBkZW50cnksIG5kLnBhdGgubW50LCBmcm9tLA0KKwkJ CSAgICAgU19JQUxMVUdPKTsNCiAJbW50X2Ryb3Bfd3JpdGUobmQucGF0aC5tbnQpOw0KIG91dF9k cHV0Og0KIAlkcHV0KGRlbnRyeSk7DQpAQCAtMjUzNyw3ICsyNTQwLDggQEAgYXNtbGlua2FnZSBs b25nIHN5c19saW5rYXQoaW50IG9sZGRmZCwgYw0KIAllcnJvciA9IG1udF93YW50X3dyaXRlKG5k LnBhdGgubW50KTsNCiAJaWYgKGVycm9yKQ0KIAkJZ290byBvdXRfZHB1dDsNCi0JZXJyb3IgPSB2 ZnNfbGluayhvbGRfbmQucGF0aC5kZW50cnksIG5kLnBhdGguZGVudHJ5LT5kX2lub2RlLCBuZXdf ZGVudHJ5KTsNCisJZXJyb3IgPSB2ZnNfbGluazIob2xkX25kLnBhdGguZGVudHJ5LCBuZC5wYXRo LmRlbnRyeS0+ZF9pbm9kZSwNCisJCQkgIG5ld19kZW50cnksIG5kLnBhdGgubW50KTsNCiAJbW50 X2Ryb3Bfd3JpdGUobmQucGF0aC5tbnQpOw0KIG91dF9kcHV0Og0KIAlkcHV0KG5ld19kZW50cnkp Ow0KQEAgLTI3NjgsOCArMjc3Miw4IEBAIHN0YXRpYyBpbnQgZG9fcmVuYW1lKGludCBvbGRkZmQs IGNvbnN0IGMNCiAJZXJyb3IgPSBtbnRfd2FudF93cml0ZShvbGRuZC5wYXRoLm1udCk7DQogCWlm IChlcnJvcikNCiAJCWdvdG8gZXhpdDU7DQotCWVycm9yID0gdmZzX3JlbmFtZShvbGRfZGlyLT5k X2lub2RlLCBvbGRfZGVudHJ5LA0KLQkJCQkgICBuZXdfZGlyLT5kX2lub2RlLCBuZXdfZGVudHJ5 KTsNCisJZXJyb3IgPSB2ZnNfcmVuYW1lMihvbGRfZGlyLT5kX2lub2RlLCBvbGRfZGVudHJ5LA0K KwkJCSAgICBuZXdfZGlyLT5kX2lub2RlLCBuZXdfZGVudHJ5LCBuZXduZC5wYXRoLm1udCk7DQog CW1udF9kcm9wX3dyaXRlKG9sZG5kLnBhdGgubW50KTsNCiBleGl0NToNCiAJZHB1dChuZXdfZGVu dHJ5KTsNCi0tLSBsaW51eC0yLjYtbW0ub3JpZy9uZXQvdW5peC9hZl91bml4LmMNCisrKyBsaW51 eC0yLjYtbW0vbmV0L3VuaXgvYWZfdW5peC5jDQpAQCAtODIyLDcgKzgyMiw4IEBAIHN0YXRpYyBp bnQgdW5peF9iaW5kKHN0cnVjdCBzb2NrZXQgKnNvY2sNCiAJCWVyciA9IG1udF93YW50X3dyaXRl KG5kLnBhdGgubW50KTsNCiAJCWlmIChlcnIpDQogCQkJZ290byBvdXRfbWtub2RfZHB1dDsNCi0J CWVyciA9IHZmc19ta25vZChuZC5wYXRoLmRlbnRyeS0+ZF9pbm9kZSwgZGVudHJ5LCBtb2RlLCAw KTsNCisJCWVyciA9IHZmc19ta25vZDIobmQucGF0aC5kZW50cnktPmRfaW5vZGUsIGRlbnRyeSwg bmQucGF0aC5tbnQsDQorCQkJCSBtb2RlLCAwKTsNCiAJCW1udF9kcm9wX3dyaXRlKG5kLnBhdGgu bW50KTsNCiAJCWlmIChlcnIpDQogCQkJZ290byBvdXRfbWtub2RfZHB1dDsNCg0KLS0gDQo= --boundary-1-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/