Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758653AbYCNASU (ORCPT ); Thu, 13 Mar 2008 20:18:20 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754542AbYCNASK (ORCPT ); Thu, 13 Mar 2008 20:18:10 -0400 Received: from qb-out-0506.google.com ([72.14.204.228]:21874 "EHLO qb-out-0506.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751687AbYCNASG (ORCPT ); Thu, 13 Mar 2008 20:18:06 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; b=KGyUtYq20P6aS9Tdrk4aLgFrfptqXFz8tl5sEXlAgIuXzFVmfRi8U+bmjJRPsXk45JnYoN7ZNNfEnoe3a2ewHnW68jvlKJO4RziZSXHX6KQzVIBM2zf0W9KVkj4evktmXAd4JcVL1FL8nqbuMqK2iGe7nE01FrKHAP8N/ayHxis= Message-ID: <9810cff90803131718ge958e9fo9ae3f43b57f7654c@mail.gmail.com> Date: Thu, 13 Mar 2008 17:18:04 -0700 From: "Bill Huey (hui)" To: "Gregory Haskins" , mingo@elte.hu Subject: Re: [PATCH RT 5/6] lockstat measurement extensions Cc: a.p.zijlstra@chello.nl, tglx@linutronix.de, rostedt@goodmis.org, linux-rt-users@vger.kernel.org, linux-kernel@vger.kernel.org, kevin@hilman.org, cminyard@mvista.com, dsingleton@mvista.com, dwalker@mvista.com, npiggin@suse.de, dsaxena@plexity.net, ak@suse.de, pavel@ucw.cz, acme@redhat.com, gregkh@suse.de, sdietrich@novell.com, pmorreale@novell.com, mkohari@novell.com In-Reply-To: <9810cff90803131715h1a93c9a1q86f480cf398d4dfb@mail.gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_25351_10319932.1205453884732" References: <9810cff90803131703t3626d83fq727b04242f407c13@mail.gmail.com> <9810cff90803131707v4fb3197fv396b8a5e8ae32b4d@mail.gmail.com> <9810cff90803131709m3a5b1e5ep2bfe566b3c3bdb66@mail.gmail.com> <9810cff90803131712l2777d1dex8c25f508369c48e7@mail.gmail.com> <9810cff90803131715h1a93c9a1q86f480cf398d4dfb@mail.gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 15528 Lines: 214 ------=_Part_25351_10319932.1205453884732 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Lock function bodies are extended to pass down a struct lockdep_map and friends for contention logging. bill ------=_Part_25351_10319932.1205453884732 Content-Type: application/octet-stream; name=patch4.diff Content-Transfer-Encoding: base64 X-Attachment-Id: f_fds01a3a Content-Disposition: attachment; filename=patch4.diff LS0tIGxpbnV4LTIuNi4yNC9rZXJuZWwvcnQuYwkyMDA4LTAyLTI1IDE1OjMyOjA1LjAwMDAwMDAw MCAtMDgwMAorKysgbGludXgtMi42LjI0Lndvcmtpbmcva2VybmVsL3J0LmMJMjAwOC0wMy0xMiAy Mjo0MDowOS4wMDAwMDAwMDAgLTA3MDAKQEAgLTEwMiw5ICsxMDIsOSBAQAogfQogRVhQT1JUX1NZ TUJPTChfbXV0ZXhfbG9jayk7CiAKLXN0YXRpYyBpbnQgX19sb2NrZnVuYyBfX3J0X211dGV4X2xv Y2tfaW50ZXJydXB0aWJsZShzdHJ1Y3QgcnRfbXV0ZXggKmxvY2spCitzdGF0aWMgaW50IF9fbG9j a2Z1bmMgX19ydF9tdXRleF9sb2NrX2ludGVycnVwdGlibGUoc3RydWN0IHJ0X211dGV4ICpsb2Nr IF9fTE9DS0RFUF9ERUNMUykKIHsKLQlyZXR1cm4gcnRfbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxl KGxvY2ssIDApOworCXJldHVybiBydF9tdXRleF9sb2NrX2ludGVycnVwdGlibGUobG9jaywgMCBf X0xPQ0tERVBfUEFSQU1TKTsKIH0KIAogaW50IF9fbG9ja2Z1bmMgX211dGV4X2xvY2tfaW50ZXJy dXB0aWJsZShzdHJ1Y3QgbXV0ZXggKmxvY2spCkBAIC0xNDQsNyArMTQ0LDcgQEAKIAogaW50IF9f bG9ja2Z1bmMgX211dGV4X3RyeWxvY2soc3RydWN0IG11dGV4ICpsb2NrKQogewotCWludCByZXQg PSBydF9tdXRleF90cnlsb2NrKCZsb2NrLT5sb2NrKTsKKwlpbnQgcmV0ID0gX19ydF9tdXRleF90 cnlsb2NrKCZsb2NrLT5sb2NrIF9fTE9DS0RFUF9QQVJBTVNfTDApOwogCiAJaWYgKHJldCkKIAkJ bXV0ZXhfYWNxdWlyZSgmbG9jay0+ZGVwX21hcCwgMCwgMSwgX1JFVF9JUF8pOwpAQCAtMTYzLDIx ICsxNjMsMjggQEAKIC8qCiAgKiByd2xvY2tfdCBmdW5jdGlvbnMKICAqLwotaW50IF9fbG9ja2Z1 bmMgcnRfd3JpdGVfdHJ5bG9jayhyd2xvY2tfdCAqcndsb2NrKQorc3RhdGljCitpbnQgX19sb2Nr ZnVuYyBfX3J0X3dyaXRlX3RyeWxvY2socndsb2NrX3QgKnJ3bG9jayBfX0xPQ0tERVBfREVDTFMp CiB7Ci0JaW50IHJldCA9IHJ0X211dGV4X3RyeWxvY2soJnJ3bG9jay0+bG9jayk7CisJLy9pbnQg cmV0ID0gX19ydF9tdXRleF90cnlsb2NrKCZyd2xvY2stPmxvY2sgX19MT0NLREVQX1BBUkFNUyk7 CisJaW50IHJldCA9IF9fcnRfbXV0ZXhfdHJ5bG9jaygmcndsb2NrLT5sb2NrLCBydF9tdXRleF9y ZWFsX293bmVyKCZyd2xvY2stPmxvY2spLCBfZGVwX21hcCwgX2lwKTsKIAogCWlmIChyZXQpCiAJ CXJ3bG9ja19hY3F1aXJlKCZyd2xvY2stPmRlcF9tYXAsIDAsIDEsIF9SRVRfSVBfKTsKIAogCXJl dHVybiByZXQ7CiB9CisKK2ludCBfX2xvY2tmdW5jIHJ0X3dyaXRlX3RyeWxvY2socndsb2NrX3Qg KnJ3bG9jaykKK3sKKwlyZXR1cm4gX19ydF93cml0ZV90cnlsb2NrKHJ3bG9jayBfX0xPQ0tERVBf UEFSQU1TX0wwKTsKK30KIEVYUE9SVF9TWU1CT0wocnRfd3JpdGVfdHJ5bG9jayk7CiAKIGludCBf X2xvY2tmdW5jIHJ0X3dyaXRlX3RyeWxvY2tfaXJxc2F2ZShyd2xvY2tfdCAqcndsb2NrLCB1bnNp Z25lZCBsb25nICpmbGFncykKIHsKIAkqZmxhZ3MgPSAwOwotCXJldHVybiBydF93cml0ZV90cnls b2NrKHJ3bG9jayk7CisJcmV0dXJuIF9fcnRfd3JpdGVfdHJ5bG9jayhyd2xvY2sgX19MT0NLREVQ X1BBUkFNU19MMCk7CiB9CiBFWFBPUlRfU1lNQk9MKHJ0X3dyaXRlX3RyeWxvY2tfaXJxc2F2ZSk7 CiAKQEAgLTQ1Myw3ICs0NjAsNyBAQAogCiB2b2lkIGZhc3RjYWxsIHJ0X2Rvd24oc3RydWN0IHNl bWFwaG9yZSAqc2VtKQogewotCXJ0X211dGV4X2xvY2soJnNlbS0+bG9jayk7CisJcnRfbXV0ZXhf bG9jaygmc2VtLT5sb2NrIF9fTE9DS0RFUF9QQVJBTVNfU0VNKHNlbSkpOwogCV9fZG93bl9jb21w bGV0ZShzZW0pOwogfQogRVhQT1JUX1NZTUJPTChydF9kb3duKTsKQEAgLTQ2Miw3ICs0NjksNyBA QAogewogCWludCByZXQ7CiAKLQlyZXQgPSBydF9tdXRleF9sb2NrX2ludGVycnVwdGlibGUoJnNl bS0+bG9jaywgMCk7CisJcmV0ID0gcnRfbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZzZW0tPmxv Y2ssIDAgX19MT0NLREVQX1BBUkFNU19TRU0oc2VtKSk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJl dDsKIAlfX2Rvd25fY29tcGxldGUoc2VtKTsKQEAgLTUxNiw3ICs1MjMsNyBAQAogCXN3aXRjaCAo dmFsKSB7CiAJY2FzZSAwOgogCQlfX3J0X211dGV4X2luaXQoJnNlbS0+bG9jaywgbmFtZSk7Ci0J CXJ0X211dGV4X2xvY2soJnNlbS0+bG9jayk7CisJCXJ0X211dGV4X2xvY2soJnNlbS0+bG9jayBf X0xPQ0tERVBfUEFSQU1TX1NFTShzZW0pKTsKIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJX19ydF9t dXRleF9pbml0KCZzZW0tPmxvY2ssIG5hbWUpOwotLS0gbGludXgtMi42LjI0L2tlcm5lbC9tdXRl eC5jCTIwMDgtMDEtMjQgMTQ6NTg6MzcuMDAwMDAwMDAwIC0wODAwCisrKyBsaW51eC0yLjYuMjQu d29ya2luZy9rZXJuZWwvbXV0ZXguYwkyMDA4LTAzLTEzIDEzOjAzOjA2LjAwMDAwMDAwMCAtMDcw MApAQCAtMTQ2LDcgKzE0Niw3IEBACiAJaWYgKG9sZF92YWwgPT0gMSkKIAkJZ290byBkb25lOwog Ci0JbG9ja19jb250ZW5kZWQoJmxvY2stPmRlcF9tYXAsIGlwKTsKKy8vCWxvY2tfbm90ZV9jb250 ZW5kZWQoTE9DS0RFUF9QQVJBTVMpOwogCiAJZm9yICg7OykgewogCQkvKgpAQCAtMTg0LDcgKzE4 NCw3IEBACiAJfQogCiBkb25lOgotCWxvY2tfYWNxdWlyZWQoJmxvY2stPmRlcF9tYXApOworLy8J bG9ja19hY3F1aXJlZCgmbG9jay0+ZGVwX21hcCk7CiAJLyogZ290IHRoZSBsb2NrIC0gcmVqb2lj ZSEgKi8KIAltdXRleF9yZW1vdmVfd2FpdGVyKGxvY2ssICZ3YWl0ZXIsIHRhc2tfdGhyZWFkX2lu Zm8odGFzaykpOwogCWRlYnVnX211dGV4X3NldF9vd25lcihsb2NrLCB0YXNrX3RocmVhZF9pbmZv KHRhc2spKTsKLS0tIGxpbnV4LTIuNi4yNC9rZXJuZWwvcndzZW0uYwkyMDA4LTAyLTI1IDE1OjMy OjA1LjAwMDAwMDAwMCAtMDgwMAorKysgbGludXgtMi42LjI0Lndvcmtpbmcva2VybmVsL3J3c2Vt LmMJMjAwOC0wMy0xMSAwMjo0NToyMC4wMDAwMDAwMDAgLTA3MDAKQEAgLTIxLDcgKzIxLDcgQEAK IAltaWdodF9zbGVlcCgpOwogCXJ3c2VtX2FjcXVpcmVfcmVhZCgmc2VtLT5kZXBfbWFwLCAwLCAw LCBfUkVUX0lQXyk7CiAKLQlMT0NLX0NPTlRFTkRFRChzZW0sIF9fZG93bl9yZWFkX3RyeWxvY2ss IF9fZG93bl9yZWFkKTsKKwlMT0NLX0NPTlRFTkRFRF9DT01QQVQoc2VtLCBfX2Rvd25fcmVhZF90 cnlsb2NrLCBfX2Rvd25fcmVhZCk7CiB9CiAKIEVYUE9SVF9TWU1CT0woY29tcGF0X2Rvd25fcmVh ZCk7CkBAIC00OCw3ICs0OCw3IEBACiAJbWlnaHRfc2xlZXAoKTsKIAlyd3NlbV9hY3F1aXJlKCZz ZW0tPmRlcF9tYXAsIDAsIDAsIF9SRVRfSVBfKTsKIAotCUxPQ0tfQ09OVEVOREVEKHNlbSwgX19k b3duX3dyaXRlX3RyeWxvY2ssIF9fZG93bl93cml0ZSk7CisJTE9DS19DT05URU5ERURfQ09NUEFU KHNlbSwgX19kb3duX3dyaXRlX3RyeWxvY2ssIF9fZG93bl93cml0ZSk7CiB9CiAKIEVYUE9SVF9T WU1CT0woY29tcGF0X2Rvd25fd3JpdGUpOwpAQCAtMTEyLDcgKzExMiw3IEBACiAJbWlnaHRfc2xl ZXAoKTsKIAlyd3NlbV9hY3F1aXJlX3JlYWQoJnNlbS0+ZGVwX21hcCwgc3ViY2xhc3MsIDAsIF9S RVRfSVBfKTsKIAotCUxPQ0tfQ09OVEVOREVEKHNlbSwgX19kb3duX3JlYWRfdHJ5bG9jaywgX19k b3duX3JlYWQpOworCUxPQ0tfQ09OVEVOREVEX0NPTVBBVChzZW0sIF9fZG93bl9yZWFkX3RyeWxv Y2ssIF9fZG93bl9yZWFkKTsKIH0KIAogRVhQT1JUX1NZTUJPTChjb21wYXRfZG93bl9yZWFkX25l c3RlZCk7CkBAIC0xMzEsNyArMTMxLDcgQEAKIAltaWdodF9zbGVlcCgpOwogCXJ3c2VtX2FjcXVp cmUoJnNlbS0+ZGVwX21hcCwgc3ViY2xhc3MsIDAsIF9SRVRfSVBfKTsKIAotCUxPQ0tfQ09OVEVO REVEKHNlbSwgX19kb3duX3dyaXRlX3RyeWxvY2ssIF9fZG93bl93cml0ZSk7CisJTE9DS19DT05U RU5ERURfQ09NUEFUKHNlbSwgX19kb3duX3dyaXRlX3RyeWxvY2ssIF9fZG93bl93cml0ZSk7CiB9 CiAKIEVYUE9SVF9TWU1CT0woY29tcGF0X2Rvd25fd3JpdGVfbmVzdGVkKTsKLS0tIGxpbnV4LTIu Ni4yNC9rZXJuZWwvcnQuYwkyMDA4LTAyLTI1IDE1OjMyOjA1LjAwMDAwMDAwMCAtMDgwMAorKysg bGludXgtMi42LjI0Lndvcmtpbmcva2VybmVsL3J0LmMJMjAwOC0wMy0xMiAyMjo0MDowOS4wMDAw MDAwMDAgLTA3MDAKQEAgLTEwMiw5ICsxMDIsOSBAQAogfQogRVhQT1JUX1NZTUJPTChfbXV0ZXhf bG9jayk7CiAKLXN0YXRpYyBpbnQgX19sb2NrZnVuYyBfX3J0X211dGV4X2xvY2tfaW50ZXJydXB0 aWJsZShzdHJ1Y3QgcnRfbXV0ZXggKmxvY2spCitzdGF0aWMgaW50IF9fbG9ja2Z1bmMgX19ydF9t dXRleF9sb2NrX2ludGVycnVwdGlibGUoc3RydWN0IHJ0X211dGV4ICpsb2NrIF9fTE9DS0RFUF9E RUNMUykKIHsKLQlyZXR1cm4gcnRfbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKGxvY2ssIDApOwor CXJldHVybiBydF9tdXRleF9sb2NrX2ludGVycnVwdGlibGUobG9jaywgMCBfX0xPQ0tERVBfUEFS QU1TKTsKIH0KIAogaW50IF9fbG9ja2Z1bmMgX211dGV4X2xvY2tfaW50ZXJydXB0aWJsZShzdHJ1 Y3QgbXV0ZXggKmxvY2spCkBAIC0xNDQsNyArMTQ0LDcgQEAKIAogaW50IF9fbG9ja2Z1bmMgX211 dGV4X3RyeWxvY2soc3RydWN0IG11dGV4ICpsb2NrKQogewotCWludCByZXQgPSBydF9tdXRleF90 cnlsb2NrKCZsb2NrLT5sb2NrKTsKKwlpbnQgcmV0ID0gX19ydF9tdXRleF90cnlsb2NrKCZsb2Nr LT5sb2NrIF9fTE9DS0RFUF9QQVJBTVNfTDApOwogCiAJaWYgKHJldCkKIAkJbXV0ZXhfYWNxdWly ZSgmbG9jay0+ZGVwX21hcCwgMCwgMSwgX1JFVF9JUF8pOwpAQCAtMTYzLDIxICsxNjMsMjggQEAK IC8qCiAgKiByd2xvY2tfdCBmdW5jdGlvbnMKICAqLwotaW50IF9fbG9ja2Z1bmMgcnRfd3JpdGVf dHJ5bG9jayhyd2xvY2tfdCAqcndsb2NrKQorc3RhdGljCitpbnQgX19sb2NrZnVuYyBfX3J0X3dy aXRlX3RyeWxvY2socndsb2NrX3QgKnJ3bG9jayBfX0xPQ0tERVBfREVDTFMpCiB7Ci0JaW50IHJl dCA9IHJ0X211dGV4X3RyeWxvY2soJnJ3bG9jay0+bG9jayk7CisJLy9pbnQgcmV0ID0gX19ydF9t dXRleF90cnlsb2NrKCZyd2xvY2stPmxvY2sgX19MT0NLREVQX1BBUkFNUyk7CisJaW50IHJldCA9 IF9fcnRfbXV0ZXhfdHJ5bG9jaygmcndsb2NrLT5sb2NrLCBydF9tdXRleF9yZWFsX293bmVyKCZy d2xvY2stPmxvY2spLCBfZGVwX21hcCwgX2lwKTsKIAogCWlmIChyZXQpCiAJCXJ3bG9ja19hY3F1 aXJlKCZyd2xvY2stPmRlcF9tYXAsIDAsIDEsIF9SRVRfSVBfKTsKIAogCXJldHVybiByZXQ7CiB9 CisKK2ludCBfX2xvY2tmdW5jIHJ0X3dyaXRlX3RyeWxvY2socndsb2NrX3QgKnJ3bG9jaykKK3sK KwlyZXR1cm4gX19ydF93cml0ZV90cnlsb2NrKHJ3bG9jayBfX0xPQ0tERVBfUEFSQU1TX0wwKTsK K30KIEVYUE9SVF9TWU1CT0wocnRfd3JpdGVfdHJ5bG9jayk7CiAKIGludCBfX2xvY2tmdW5jIHJ0 X3dyaXRlX3RyeWxvY2tfaXJxc2F2ZShyd2xvY2tfdCAqcndsb2NrLCB1bnNpZ25lZCBsb25nICpm bGFncykKIHsKIAkqZmxhZ3MgPSAwOwotCXJldHVybiBydF93cml0ZV90cnlsb2NrKHJ3bG9jayk7 CisJcmV0dXJuIF9fcnRfd3JpdGVfdHJ5bG9jayhyd2xvY2sgX19MT0NLREVQX1BBUkFNU19MMCk7 CiB9CiBFWFBPUlRfU1lNQk9MKHJ0X3dyaXRlX3RyeWxvY2tfaXJxc2F2ZSk7CiAKQEAgLTQ1Myw3 ICs0NjAsNyBAQAogCiB2b2lkIGZhc3RjYWxsIHJ0X2Rvd24oc3RydWN0IHNlbWFwaG9yZSAqc2Vt KQogewotCXJ0X211dGV4X2xvY2soJnNlbS0+bG9jayk7CisJcnRfbXV0ZXhfbG9jaygmc2VtLT5s b2NrIF9fTE9DS0RFUF9QQVJBTVNfU0VNKHNlbSkpOwogCV9fZG93bl9jb21wbGV0ZShzZW0pOwog fQogRVhQT1JUX1NZTUJPTChydF9kb3duKTsKQEAgLTQ2Miw3ICs0NjksNyBAQAogewogCWludCBy ZXQ7CiAKLQlyZXQgPSBydF9tdXRleF9sb2NrX2ludGVycnVwdGlibGUoJnNlbS0+bG9jaywgMCk7 CisJcmV0ID0gcnRfbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZzZW0tPmxvY2ssIDAgX19MT0NL REVQX1BBUkFNU19TRU0oc2VtKSk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAlfX2Rvd25f Y29tcGxldGUoc2VtKTsKQEAgLTUxNiw3ICs1MjMsNyBAQAogCXN3aXRjaCAodmFsKSB7CiAJY2Fz ZSAwOgogCQlfX3J0X211dGV4X2luaXQoJnNlbS0+bG9jaywgbmFtZSk7Ci0JCXJ0X211dGV4X2xv Y2soJnNlbS0+bG9jayk7CisJCXJ0X211dGV4X2xvY2soJnNlbS0+bG9jayBfX0xPQ0tERVBfUEFS QU1TX1NFTShzZW0pKTsKIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJX19ydF9tdXRleF9pbml0KCZz ZW0tPmxvY2ssIG5hbWUpOwotLS0gbGludXgtMi42LjI0L2tlcm5lbC9tdXRleC5jCTIwMDgtMDEt MjQgMTQ6NTg6MzcuMDAwMDAwMDAwIC0wODAwCisrKyBsaW51eC0yLjYuMjQud29ya2luZy9rZXJu ZWwvbXV0ZXguYwkyMDA4LTAzLTEzIDEzOjAzOjA2LjAwMDAwMDAwMCAtMDcwMApAQCAtMTQ2LDcg KzE0Niw3IEBACiAJaWYgKG9sZF92YWwgPT0gMSkKIAkJZ290byBkb25lOwogCi0JbG9ja19jb250 ZW5kZWQoJmxvY2stPmRlcF9tYXAsIGlwKTsKKy8vCWxvY2tfbm90ZV9jb250ZW5kZWQoTE9DS0RF UF9QQVJBTVMpOwogCiAJZm9yICg7OykgewogCQkvKgpAQCAtMTg0LDcgKzE4NCw3IEBACiAJfQog CiBkb25lOgotCWxvY2tfYWNxdWlyZWQoJmxvY2stPmRlcF9tYXApOworLy8JbG9ja19hY3F1aXJl ZCgmbG9jay0+ZGVwX21hcCk7CiAJLyogZ290IHRoZSBsb2NrIC0gcmVqb2ljZSEgKi8KIAltdXRl eF9yZW1vdmVfd2FpdGVyKGxvY2ssICZ3YWl0ZXIsIHRhc2tfdGhyZWFkX2luZm8odGFzaykpOwog CWRlYnVnX211dGV4X3NldF9vd25lcihsb2NrLCB0YXNrX3RocmVhZF9pbmZvKHRhc2spKTsKLS0t IGxpbnV4LTIuNi4yNC9rZXJuZWwvcndzZW0uYwkyMDA4LTAyLTI1IDE1OjMyOjA1LjAwMDAwMDAw MCAtMDgwMAorKysgbGludXgtMi42LjI0Lndvcmtpbmcva2VybmVsL3J3c2VtLmMJMjAwOC0wMy0x MSAwMjo0NToyMC4wMDAwMDAwMDAgLTA3MDAKQEAgLTIxLDcgKzIxLDcgQEAKIAltaWdodF9zbGVl cCgpOwogCXJ3c2VtX2FjcXVpcmVfcmVhZCgmc2VtLT5kZXBfbWFwLCAwLCAwLCBfUkVUX0lQXyk7 CiAKLQlMT0NLX0NPTlRFTkRFRChzZW0sIF9fZG93bl9yZWFkX3RyeWxvY2ssIF9fZG93bl9yZWFk KTsKKwlMT0NLX0NPTlRFTkRFRF9DT01QQVQoc2VtLCBfX2Rvd25fcmVhZF90cnlsb2NrLCBfX2Rv d25fcmVhZCk7CiB9CiAKIEVYUE9SVF9TWU1CT0woY29tcGF0X2Rvd25fcmVhZCk7CkBAIC00OCw3 ICs0OCw3IEBACiAJbWlnaHRfc2xlZXAoKTsKIAlyd3NlbV9hY3F1aXJlKCZzZW0tPmRlcF9tYXAs IDAsIDAsIF9SRVRfSVBfKTsKIAotCUxPQ0tfQ09OVEVOREVEKHNlbSwgX19kb3duX3dyaXRlX3Ry eWxvY2ssIF9fZG93bl93cml0ZSk7CisJTE9DS19DT05URU5ERURfQ09NUEFUKHNlbSwgX19kb3du X3dyaXRlX3RyeWxvY2ssIF9fZG93bl93cml0ZSk7CiB9CiAKIEVYUE9SVF9TWU1CT0woY29tcGF0 X2Rvd25fd3JpdGUpOwpAQCAtMTEyLDcgKzExMiw3IEBACiAJbWlnaHRfc2xlZXAoKTsKIAlyd3Nl bV9hY3F1aXJlX3JlYWQoJnNlbS0+ZGVwX21hcCwgc3ViY2xhc3MsIDAsIF9SRVRfSVBfKTsKIAot CUxPQ0tfQ09OVEVOREVEKHNlbSwgX19kb3duX3JlYWRfdHJ5bG9jaywgX19kb3duX3JlYWQpOwor CUxPQ0tfQ09OVEVOREVEX0NPTVBBVChzZW0sIF9fZG93bl9yZWFkX3RyeWxvY2ssIF9fZG93bl9y ZWFkKTsKIH0KIAogRVhQT1JUX1NZTUJPTChjb21wYXRfZG93bl9yZWFkX25lc3RlZCk7CkBAIC0x MzEsNyArMTMxLDcgQEAKIAltaWdodF9zbGVlcCgpOwogCXJ3c2VtX2FjcXVpcmUoJnNlbS0+ZGVw X21hcCwgc3ViY2xhc3MsIDAsIF9SRVRfSVBfKTsKIAotCUxPQ0tfQ09OVEVOREVEKHNlbSwgX19k b3duX3dyaXRlX3RyeWxvY2ssIF9fZG93bl93cml0ZSk7CisJTE9DS19DT05URU5ERURfQ09NUEFU KHNlbSwgX19kb3duX3dyaXRlX3RyeWxvY2ssIF9fZG93bl93cml0ZSk7CiB9CiAKIEVYUE9SVF9T WU1CT0woY29tcGF0X2Rvd25fd3JpdGVfbmVzdGVkKTsKLS0tIGxpbnV4LTIuNi4yNC9rZXJuZWwv cnQuYwkyMDA4LTAyLTI1IDE1OjMyOjA1LjAwMDAwMDAwMCAtMDgwMAorKysgbGludXgtMi42LjI0 Lndvcmtpbmcva2VybmVsL3J0LmMJMjAwOC0wMy0xMiAyMjo0MDowOS4wMDAwMDAwMDAgLTA3MDAK QEAgLTEwMiw5ICsxMDIsOSBAQAogfQogRVhQT1JUX1NZTUJPTChfbXV0ZXhfbG9jayk7CiAKLXN0 YXRpYyBpbnQgX19sb2NrZnVuYyBfX3J0X211dGV4X2xvY2tfaW50ZXJydXB0aWJsZShzdHJ1Y3Qg cnRfbXV0ZXggKmxvY2spCitzdGF0aWMgaW50IF9fbG9ja2Z1bmMgX19ydF9tdXRleF9sb2NrX2lu dGVycnVwdGlibGUoc3RydWN0IHJ0X211dGV4ICpsb2NrIF9fTE9DS0RFUF9ERUNMUykKIHsKLQly ZXR1cm4gcnRfbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKGxvY2ssIDApOworCXJldHVybiBydF9t dXRleF9sb2NrX2ludGVycnVwdGlibGUobG9jaywgMCBfX0xPQ0tERVBfUEFSQU1TKTsKIH0KIAog aW50IF9fbG9ja2Z1bmMgX211dGV4X2xvY2tfaW50ZXJydXB0aWJsZShzdHJ1Y3QgbXV0ZXggKmxv Y2spCkBAIC0xNDQsNyArMTQ0LDcgQEAKIAogaW50IF9fbG9ja2Z1bmMgX211dGV4X3RyeWxvY2so c3RydWN0IG11dGV4ICpsb2NrKQogewotCWludCByZXQgPSBydF9tdXRleF90cnlsb2NrKCZsb2Nr LT5sb2NrKTsKKwlpbnQgcmV0ID0gX19ydF9tdXRleF90cnlsb2NrKCZsb2NrLT5sb2NrIF9fTE9D S0RFUF9QQVJBTVNfTDApOwogCiAJaWYgKHJldCkKIAkJbXV0ZXhfYWNxdWlyZSgmbG9jay0+ZGVw X21hcCwgMCwgMSwgX1JFVF9JUF8pOwpAQCAtMTYzLDIxICsxNjMsMjggQEAKIC8qCiAgKiByd2xv Y2tfdCBmdW5jdGlvbnMKICAqLwotaW50IF9fbG9ja2Z1bmMgcnRfd3JpdGVfdHJ5bG9jayhyd2xv Y2tfdCAqcndsb2NrKQorc3RhdGljCitpbnQgX19sb2NrZnVuYyBfX3J0X3dyaXRlX3RyeWxvY2so cndsb2NrX3QgKnJ3bG9jayBfX0xPQ0tERVBfREVDTFMpCiB7Ci0JaW50IHJldCA9IHJ0X211dGV4 X3RyeWxvY2soJnJ3bG9jay0+bG9jayk7CisJLy9pbnQgcmV0ID0gX19ydF9tdXRleF90cnlsb2Nr KCZyd2xvY2stPmxvY2sgX19MT0NLREVQX1BBUkFNUyk7CisJaW50IHJldCA9IF9fcnRfbXV0ZXhf dHJ5bG9jaygmcndsb2NrLT5sb2NrLCBydF9tdXRleF9yZWFsX293bmVyKCZyd2xvY2stPmxvY2sp LCBfZGVwX21hcCwgX2lwKTsKIAogCWlmIChyZXQpCiAJCXJ3bG9ja19hY3F1aXJlKCZyd2xvY2st PmRlcF9tYXAsIDAsIDEsIF9SRVRfSVBfKTsKIAogCXJldHVybiByZXQ7CiB9CisKK2ludCBfX2xv Y2tmdW5jIHJ0X3dyaXRlX3RyeWxvY2socndsb2NrX3QgKnJ3bG9jaykKK3sKKwlyZXR1cm4gX19y dF93cml0ZV90cnlsb2NrKHJ3bG9jayBfX0xPQ0tERVBfUEFSQU1TX0wwKTsKK30KIEVYUE9SVF9T WU1CT0wocnRfd3JpdGVfdHJ5bG9jayk7CiAKIGludCBfX2xvY2tmdW5jIHJ0X3dyaXRlX3RyeWxv Y2tfaXJxc2F2ZShyd2xvY2tfdCAqcndsb2NrLCB1bnNpZ25lZCBsb25nICpmbGFncykKIHsKIAkq ZmxhZ3MgPSAwOwotCXJldHVybiBydF93cml0ZV90cnlsb2NrKHJ3bG9jayk7CisJcmV0dXJuIF9f cnRfd3JpdGVfdHJ5bG9jayhyd2xvY2sgX19MT0NLREVQX1BBUkFNU19MMCk7CiB9CiBFWFBPUlRf U1lNQk9MKHJ0X3dyaXRlX3RyeWxvY2tfaXJxc2F2ZSk7CiAKQEAgLTQ1Myw3ICs0NjAsNyBAQAog CiB2b2lkIGZhc3RjYWxsIHJ0X2Rvd24oc3RydWN0IHNlbWFwaG9yZSAqc2VtKQogewotCXJ0X211 dGV4X2xvY2soJnNlbS0+bG9jayk7CisJcnRfbXV0ZXhfbG9jaygmc2VtLT5sb2NrIF9fTE9DS0RF UF9QQVJBTVNfU0VNKHNlbSkpOwogCV9fZG93bl9jb21wbGV0ZShzZW0pOwogfQogRVhQT1JUX1NZ TUJPTChydF9kb3duKTsKQEAgLTQ2Miw3ICs0NjksNyBAQAogewogCWludCByZXQ7CiAKLQlyZXQg PSBydF9tdXRleF9sb2NrX2ludGVycnVwdGlibGUoJnNlbS0+bG9jaywgMCk7CisJcmV0ID0gcnRf bXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZzZW0tPmxvY2ssIDAgX19MT0NLREVQX1BBUkFNU19T RU0oc2VtKSk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAlfX2Rvd25fY29tcGxldGUoc2Vt KTsKQEAgLTUxNiw3ICs1MjMsNyBAQAogCXN3aXRjaCAodmFsKSB7CiAJY2FzZSAwOgogCQlfX3J0 X211dGV4X2luaXQoJnNlbS0+bG9jaywgbmFtZSk7Ci0JCXJ0X211dGV4X2xvY2soJnNlbS0+bG9j ayk7CisJCXJ0X211dGV4X2xvY2soJnNlbS0+bG9jayBfX0xPQ0tERVBfUEFSQU1TX1NFTShzZW0p KTsKIAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJX19ydF9tdXRleF9pbml0KCZzZW0tPmxvY2ssIG5h bWUpOwotLS0gbGludXgtMi42LjI0L2tlcm5lbC9tdXRleC5jCTIwMDgtMDEtMjQgMTQ6NTg6Mzcu MDAwMDAwMDAwIC0wODAwCisrKyBsaW51eC0yLjYuMjQud29ya2luZy9rZXJuZWwvbXV0ZXguYwky MDA4LTAzLTEzIDEzOjAzOjA2LjAwMDAwMDAwMCAtMDcwMApAQCAtMTQ2LDcgKzE0Niw3IEBACiAJ aWYgKG9sZF92YWwgPT0gMSkKIAkJZ290byBkb25lOwogCi0JbG9ja19jb250ZW5kZWQoJmxvY2st PmRlcF9tYXAsIGlwKTsKKy8vCWxvY2tfbm90ZV9jb250ZW5kZWQoTE9DS0RFUF9QQVJBTVMpOwog CiAJZm9yICg7OykgewogCQkvKgpAQCAtMTg0LDcgKzE4NCw3IEBACiAJfQogCiBkb25lOgotCWxv Y2tfYWNxdWlyZWQoJmxvY2stPmRlcF9tYXApOworLy8JbG9ja19hY3F1aXJlZCgmbG9jay0+ZGVw X21hcCk7CiAJLyogZ290IHRoZSBsb2NrIC0gcmVqb2ljZSEgKi8KIAltdXRleF9yZW1vdmVfd2Fp dGVyKGxvY2ssICZ3YWl0ZXIsIHRhc2tfdGhyZWFkX2luZm8odGFzaykpOwogCWRlYnVnX211dGV4 X3NldF9vd25lcihsb2NrLCB0YXNrX3RocmVhZF9pbmZvKHRhc2spKTsK ------=_Part_25351_10319932.1205453884732-- -- 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/