Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754241Ab2H2Rgq (ORCPT ); Wed, 29 Aug 2012 13:36:46 -0400 Received: from mail-vb0-f46.google.com ([209.85.212.46]:34130 "EHLO mail-vb0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753324Ab2H2Rgo (ORCPT ); Wed, 29 Aug 2012 13:36:44 -0400 MIME-Version: 1.0 In-Reply-To: References: <1340736849-14875-1-git-send-email-yinghai@kernel.org> <1340736849-14875-3-git-send-email-yinghai@kernel.org> Date: Wed, 29 Aug 2012 10:36:43 -0700 X-Google-Sender-Auth: 7M-ZqtU8LdDgo6MM-HOL4GAxsoU Message-ID: Subject: Re: [PATCH -v12 02/15] resources: Add probe_resource() From: Yinghai Lu To: Linus Torvalds Cc: Bjorn Helgaas , Benjamin Herrenschmidt , Tony Luck , David Miller , x86 , Dominik Brodowski , Andrew Morton , Greg Kroah-Hartman , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org Content-Type: multipart/mixed; boundary=047d7bae44c8974dc804c86b00b7 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 11748 Lines: 172 --047d7bae44c8974dc804c86b00b7 Content-Type: text/plain; charset=ISO-8859-1 On Wed, Aug 29, 2012 at 8:57 AM, Yinghai Lu wrote: > also have another version for probe_resource, please check attached version -v8. > sorry, v8 forget removing two lines. please -v9 instead. -v8: Linus said: allocation/return is not right, and -1 step tricks make it not work as generic resource probe. So try to remove the needed_size tricks, and also use __adjust_resource for probing instead. -v9: remove two lines that is supposed to be removed after converting to use __adjust_resource Thanks Yinghai --047d7bae44c8974dc804c86b00b7 Content-Type: application/octet-stream; name="probe_resource_2.patch" Content-Disposition: attachment; filename="probe_resource_2.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h6gphrks1 U3ViamVjdDogW1BBVENIXSByZXNvdXJjZXM6IEFkZCBwcm9iZV9yZXNvdXJjZSgpCgpJdCBpcyBj aGFuZ2VkIGZyb20gYnVzbl9yZXMgb25seSB2ZXJzaW9uLCBiZWNhdXNlIEJqb3JuIGZvdW5kIHRo YXQgdmVyc2lvbgp3YXMgbm90IGhvbGRpbmcgcmVzb3VyY2VfbG9jay4KRXZlbiBpdCBtYXkgYmUg b2sgZm9yIGJ1c25fcmVzIG5vdCBob2xkaW5nIHJlc291cmNlX2xvY2suCkl0IHdvdWxkIGJlIGJl dHRlciB0byBoYXZlIGl0IHRvIGJlIGdlbmVyaWMgYW5kIHVzZSBsb2NrIGFuZCB3ZSBtYXkKdXNl IGl0IGZvciBvdGhlciByZXNvdXJjZXMuCgpwcm9iZV9yZXNvdXJjZSgpIHdpbGwgdHJ5IHRvIGZp bmQgc3BlY2lmaWVkIHNpemUgb3IgbW9yZSBpbiBwYXJlbnQgYnVzLgpJZiBjYW4gbm90IGZpbmQg Y3VycmVudCBwYXJlbnQgcmVzb3VyY2UsIGFuZCBpdCB3aWxsIHRyeSB0byBleHBhbmQgcGFyZW50 cwp0b3AuCklmIHN0aWxsIGNhbiBub3QgZmluZCB0aGF0IHNwZWNpZmllZCBvbiB0b3AsIGl0IHdp bGwgdHJ5IHRvIHJlZHVjZSB0YXJnZXQgc2l6ZQp1bnRpbCBmaW5kIG9uZS4KCkl0IHdpbGwgcmV0 dXJuIDAsIGlmIGl0IGZpbmQgYW55IHJlc291cmNlIHRoYXQgY291bGQgYmUgdXNlZC4KClJldHVy bmVkIHJlc291cmNlIGlzIHJlZ2lzdGVyZWQgaW4gdGhlIHRyZWUuClNvIGNhbGxlciBtYXkgbmVl ZCB0byB1c2UgcmVwbGFjZV9yZXNvdXJjZSB0byBwdXQgcmVhbCByZXNvdXJjZSBpbiB0cmVlLgoK LXYzOiByZW1vdmUgdHdvIHBhcmFtZXRlcnMgdGhhdCBpcyBmb3IgZGVidWcgcHVycG9zZS4KLXY0 OiBmaXggc3RvcF9mbGFncyBjaGVja2luZy4KLXY1OiBhZGp1c3Qgc3RvcF9mbGFncyBjaGVja2lu ZyBwb3NpdGlvbiB0byBhdm9pZCBub3QgbmVlZGVkIGNhbGxpbmcKCWludG8gYWxsb2NhdGVfcmVz b3VyY2UoKS4KLXY2OiB1c2UgdXBkYXRlZCBfX2FsbG9jYXRlX3Jlc291cmNlLgotdjc6IExpbnVz IHNhaWQ6ICJyZXNvdXJjZV9leHRlbmRfcGFyZW50cygpIiB0aGluZyBpcyB0b28gZGFuZ2Vyb3Vz IGFzIGl0CiAgICAgICAgaXMuIEl0IGNhbiBjb3JydXB0IHRoZSByZXNvdXJjZSBsaXN0IGJ5IG1h a2luZyB0aGUgcmVzb3VyY2UgZW5kCiAgICAgICAgb3ZlcmxhcCB3aXRoIHRoZSBuZXh0IHJlc291 cmNlIChmb3IgZXh0ZW5zaW9uKSBvciBub3QgY292ZXIgYWxsIHRoZQogICAgICAgIGNoaWxkIHJl c291cmNlcyAoZm9yIHNocmlua2luZykuCiAgICAgVHJ5IHRvIGZvbGQgaW4gcmVzb3VyY2VfZXh0 ZW5kX3BhcmVudHNfdG9wLCBhbmQgaGF2ZSB1cGRhdGVkIG9uZQoJcmVzb3VyY2Vfc2hyaW5rX3Bh cmVudF90b3AoKSB3aXRoIGFkanVzdF9yZXNvdXJjZSB0aGF0IHdpbGwKCWNoZWNraW5nIHBhcmVu dCBhbmQgY2hpbGRyZW4gY292ZXJpbmcuCi12ODogTGludXMgc2FpZDogYWxsb2NhdGlvbi9yZXR1 cm4gaXMgbm90IHJpZ2h0LCBhbmQgLTEgc3RlcCB0cmlja3MgbWFrZSBpdAoJbm90IHdvcmsgYXMg Z2VuZXJpYyByZXNvdXJjZSBwcm9iZS4KICAgICBTbyB0cnkgdG8gcmVtb3ZlIHRoZSBuZWVkZWRf c2l6ZSB0cmlja3MsIGFuZCBhbHNvIHVzZSBfX2FkanVzdF9yZXNvdXJjZQoJZm9yIHByb2Jpbmcg aW5zdGVhZC4KLXY5OiByZW1vdmUgdHdvIGxpbmVzIHRoYXQgaXMgc3VwcG9zZWQgdG8gYmUgcmVt b3ZlZCBhZnRlciBjb252ZXJ0aW5nIHRvIHVzZQoJX19hZGp1c3RfcmVzb3VyY2UKClNpZ25lZC1v ZmYtYnk6IFlpbmdoYWkgTHUgPHlpbmdoYWlAa2VybmVsLm9yZz4KQ2M6IEFuZHJldyBNb3J0b24g PGFrcG1AbGludXgtZm91bmRhdGlvbi5vcmc+CgotLS0KIGluY2x1ZGUvbGludXgvaW9wb3J0Lmgg fCAgICA2ICsKIGtlcm5lbC9yZXNvdXJjZS5jICAgICAgfCAgMTY1ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTY3IGlu c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpJbmRleDogbGludXgtMi42L2luY2x1ZGUvbGlu dXgvaW9wb3J0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0gbGludXgtMi42Lm9yaWcvaW5jbHVkZS9saW51eC9p b3BvcnQuaAorKysgbGludXgtMi42L2luY2x1ZGUvbGludXgvaW9wb3J0LmgKQEAgLTE1Niw2ICsx NTYsMTIgQEAgZXh0ZXJuIGludCBhbGxvY2F0ZV9yZXNvdXJjZShzdHJ1Y3QgcmVzbwogCQkJCQkJ ICAgICAgIHJlc291cmNlX3NpemVfdCwKIAkJCQkJCSAgICAgICByZXNvdXJjZV9zaXplX3QpLAog CQkJICAgICB2b2lkICphbGlnbmZfZGF0YSk7CitpbnQgcmVzb3VyY2Vfc2hyaW5rX3BhcmVudHNf dG9wKHN0cnVjdCByZXNvdXJjZSAqYl9yZXMsCisJCQkJIGxvbmcgc2l6ZSwgc3RydWN0IHJlc291 cmNlICpwYXJlbnRfcmVzKTsKK2ludCBwcm9iZV9yZXNvdXJjZShzdHJ1Y3QgcmVzb3VyY2UgKmJf cmVzLAorCQkJc3RydWN0IHJlc291cmNlICpidXNuX3JlcywKKwkJCXJlc291cmNlX3NpemVfdCBu ZWVkZWRfc2l6ZSwgc3RydWN0IHJlc291cmNlICoqcCwKKwkJCWludCBza2lwX25yLCBpbnQgbGlt aXQsIGludCBmbGFncyk7CiBzdHJ1Y3QgcmVzb3VyY2UgKmxvb2t1cF9yZXNvdXJjZShzdHJ1Y3Qg cmVzb3VyY2UgKnJvb3QsIHJlc291cmNlX3NpemVfdCBzdGFydCk7CiBpbnQgYWRqdXN0X3Jlc291 cmNlKHN0cnVjdCByZXNvdXJjZSAqcmVzLCByZXNvdXJjZV9zaXplX3Qgc3RhcnQsCiAJCSAgICBy ZXNvdXJjZV9zaXplX3Qgc2l6ZSk7CkluZGV4OiBsaW51eC0yLjYva2VybmVsL3Jlc291cmNlLmMK PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotLS0gbGludXgtMi42Lm9yaWcva2VybmVsL3Jlc291cmNlLmMKKysrIGxpbnV4 LTIuNi9rZXJuZWwvcmVzb3VyY2UuYwpAQCAtNzQxLDE0ICs3NDEsMTMgQEAgdm9pZCBpbnNlcnRf cmVzb3VyY2VfZXhwYW5kX3RvX2ZpdChzdHJ1YwogICogYXJndW1lbnRzLiAgUmV0dXJucyAwIG9u IHN1Y2Nlc3MsIC1FQlVTWSBpZiBpdCBjYW4ndCBmaXQuCiAgKiBFeGlzdGluZyBjaGlsZHJlbiBv ZiB0aGUgcmVzb3VyY2UgYXJlIGFzc3VtZWQgdG8gYmUgaW1tdXRhYmxlLgogICovCi1pbnQgYWRq dXN0X3Jlc291cmNlKHN0cnVjdCByZXNvdXJjZSAqcmVzLCByZXNvdXJjZV9zaXplX3Qgc3RhcnQs IHJlc291cmNlX3NpemVfdCBzaXplKQorc3RhdGljIGludCBfX2FkanVzdF9yZXNvdXJjZShzdHJ1 Y3QgcmVzb3VyY2UgKnJlcywgcmVzb3VyY2Vfc2l6ZV90IHN0YXJ0LAorCQkJICAgICByZXNvdXJj ZV9zaXplX3Qgc2l6ZSkKIHsKIAlzdHJ1Y3QgcmVzb3VyY2UgKnRtcCwgKnBhcmVudCA9IHJlcy0+ cGFyZW50OwogCXJlc291cmNlX3NpemVfdCBlbmQgPSBzdGFydCArIHNpemUgLSAxOwogCWludCBy ZXN1bHQgPSAtRUJVU1k7CiAKLQl3cml0ZV9sb2NrKCZyZXNvdXJjZV9sb2NrKTsKLQogCWlmICgh cGFyZW50KQogCQlnb3RvIHNraXA7CiAKQEAgLTc3Niw5ICs3NzUsMTkgQEAgc2tpcDoKIAlyZXN1 bHQgPSAwOwogCiAgb3V0OgotCXdyaXRlX3VubG9jaygmcmVzb3VyY2VfbG9jayk7CiAJcmV0dXJu IHJlc3VsdDsKIH0KK2ludCBhZGp1c3RfcmVzb3VyY2Uoc3RydWN0IHJlc291cmNlICpyZXMsIHJl c291cmNlX3NpemVfdCBzdGFydCwKKwkJICAgIHJlc291cmNlX3NpemVfdCBzaXplKQoreworCWlu dCByZXQ7CisKKwl3cml0ZV9sb2NrKCZyZXNvdXJjZV9sb2NrKTsKKwlyZXQgPSBfX2FkanVzdF9y ZXNvdXJjZShyZXMsIHN0YXJ0LCBzaXplKTsKKwl3cml0ZV91bmxvY2soJnJlc291cmNlX2xvY2sp OworCisJcmV0dXJuIHJldDsKK30KIEVYUE9SVF9TWU1CT0woYWRqdXN0X3Jlc291cmNlKTsKIAog c3RhdGljIHZvaWQgX19pbml0IF9fcmVzZXJ2ZV9yZWdpb25fd2l0aF9zcGxpdChzdHJ1Y3QgcmVz b3VyY2UgKnJvb3QsCkBAIC0xMDExLDYgKzEwMjAsMTU0IEBAIHZvaWQgX19yZWxlYXNlX3JlZ2lv bihzdHJ1Y3QgcmVzb3VyY2UgKnAKIH0KIEVYUE9SVF9TWU1CT0woX19yZWxlYXNlX3JlZ2lvbik7 CiAKK3N0YXRpYyBpbnQgX19yZXNvdXJjZV9zaHJpbmtfcGFyZW50c190b3Aoc3RydWN0IHJlc291 cmNlICpiX3JlcywKKwkJIGxvbmcgc2l6ZSwgc3RydWN0IHJlc291cmNlICpwYXJlbnRfcmVzKQor eworCXN0cnVjdCByZXNvdXJjZSAqcmVzID0gYl9yZXM7CisKKwlpZiAoc2l6ZSA8PSAwKQorCQly ZXR1cm4gMDsKKworCXdoaWxlIChyZXMgJiYgcmVzICE9IHBhcmVudF9yZXMpIHsKKwkJaWYgKF9f YWRqdXN0X3Jlc291cmNlKHJlcywgcmVzLT5zdGFydCwKKwkJCSByZXNvdXJjZV9zaXplKHJlcykg LSBzaXplKSkgeworCQkJc3RydWN0IHJlc291cmNlICp0bXAgPSBiX3JlczsKKworCQkJd2hpbGUg KHRtcCAhPSByZXMpIHsKKwkJCQlfX2FkanVzdF9yZXNvdXJjZSh0bXAsIHRtcC0+c3RhcnQsCisJ CQkJCXJlc291cmNlX3NpemUodG1wKSArIHNpemUpOworCQkJCXRtcCA9IHRtcC0+cGFyZW50Owor CQkJfQorCisJCQlyZXR1cm4gLUVCVVNZOworCisJCX0KKwkJcmVzID0gcmVzLT5wYXJlbnQ7CisJ fQorCisJcmV0dXJuIDA7Cit9CisKK2ludCByZXNvdXJjZV9zaHJpbmtfcGFyZW50c190b3Aoc3Ry dWN0IHJlc291cmNlICpiX3JlcywKKwkJIGxvbmcgc2l6ZSwgc3RydWN0IHJlc291cmNlICpwYXJl bnRfcmVzKQoreworCWludCByZXQ7CisKKwl3cml0ZV9sb2NrKCZyZXNvdXJjZV9sb2NrKTsKKwly ZXQgPSBfX3Jlc291cmNlX3Nocmlua19wYXJlbnRzX3RvcChiX3Jlcywgc2l6ZSwgcGFyZW50X3Jl cyk7CisJd3JpdGVfdW5sb2NrKCZyZXNvdXJjZV9sb2NrKTsKKworCXJldHVybiByZXQ7Cit9CisK K3N0YXRpYyByZXNvdXJjZV9zaXplX3QgX19maW5kX3Jlc190b3BfZnJlZV9zaXplKHN0cnVjdCBy ZXNvdXJjZSAqcmVzLAorCQkJCQkJIGludCBza2lwX25yKQoreworCXJlc291cmNlX3NpemVfdCBu X3NpemU7CisKKwkvKgorCSAqICAgZmluZCBvdXQgZnJlZSBudW1iZXIgYmVsb3cgcmVzLT5lbmQg dGhhdCB3ZSBjYW4gdXNlLgorCSAqCXJlcy0+c3RhcnQgdG8gcmVzLT5zdGFydCArIHNraXBfbnIg LSAxIGNhbiBub3QgYmUgdXNlZC4KKwkgKi8KKwlpZiAocmVzLT5jaGlsZCkgeworCQlzdHJ1Y3Qg cmVzb3VyY2UgKmNoaWxkID0gcmVzLT5jaGlsZDsKKworCQl3aGlsZSAoY2hpbGQtPnNpYmxpbmcp CisJCQljaGlsZCA9IGNoaWxkLT5zaWJsaW5nOworCisJCS8qIGNoZWNrIGlmIGNoaWxkcmVuIGNv dmVyIHNraXBfbnIgKi8KKwkJaWYgKGNoaWxkLT5lbmQgLSByZXMtPnN0YXJ0ICsgMSA+PSBza2lw X25yKQorCQkJcmV0dXJuIHJlcy0+ZW5kIC0gY2hpbGQtPmVuZDsKKwl9CisKKwluX3NpemUgPSBy ZXNvdXJjZV9zaXplKHJlcyk7CisJaWYgKG5fc2l6ZSA8PSBza2lwX25yKQorCQlyZXR1cm4gMDsK KwlyZXR1cm4gbl9zaXplIC0gc2tpcF9ucjsKK30KKworLyoqCisgKiBwcm9iZV9yZXNvdXJjZSAt IFByb2JlIHJlc291cmNlIGluIHBhcmVudCByZXNvdXJjZS4KKyAqIEBiX3JlczogcGFyZW50IHJl c291cmNlIGRlc2NyaXB0b3IKKyAqIEBidXNuX3JlczogcmV0dXJuIHByb2JlZCByZXNvdXJjZQor ICogQG5lZWRlZF9zaXplOiB0YXJnZXQgc2l6ZQorICogQHA6IHBvaW50ZXIgdG8gZmFyZXN0IHBh cmVudCB0aGF0IHdlIGV4dGVuZCB0aGUgdG9wCisgKiBAc2tpcF9ucjogbnVtYmVyIGluIGJfcmVz IHN0YXJ0IHRoYXQgd2UgbmVlZCB0byBza2lwLgorICogQGxpbWl0OiBsb2NhbCBib3VuZGFyeQor ICogQHN0b3BfZmxhZ3M6IGZsYWdzIGZvciBzdG9wcGluZyBleHRlbmQgcGFyZW50IHJlcworICoK KyAqIHdpbGwgdHJ5IHRvIGFsbG9jYXRlIHJlc291cmNlIGluIGJfcmVzLCBpZiBjYW4gbm90IGZp bmQgdGhlIHJhbmdlCisgKiAgd2lsbCB0cnkgdG8gZXh0ZW5kIHBhcmVudCByZXNvdXJjZXMnIHRv cC4KKyAqLworaW50IHByb2JlX3Jlc291cmNlKHN0cnVjdCByZXNvdXJjZSAqYl9yZXMsCisJCQkg c3RydWN0IHJlc291cmNlICpidXNuX3JlcywKKwkJCSByZXNvdXJjZV9zaXplX3QgbmVlZGVkX3Np emUsIHN0cnVjdCByZXNvdXJjZSAqKnAsCisJCQkgaW50IHNraXBfbnIsIGludCBsaW1pdCwgaW50 IHN0b3BfZmxhZ3MpCit7CisJaW50IHJldDsKKwlyZXNvdXJjZV9zaXplX3Qgbl9zaXplOworCXN0 cnVjdCByZXNvdXJjZSAqcGFyZW50X3JlczsKKworCXdyaXRlX2xvY2soJnJlc291cmNlX2xvY2sp OworCS8qCisJICogV2UgZmlyc3QgdHJ5IHRvIGFsbG9jYXRlIHJhbmdlIGluIGJfcmVzIHRoYXQK KwkgKiAgd2UgY2FuIHVzZSBpbiBiX3JlcyBkaXJlY3RseS4KKwkgKiAgd2UgYWxzbyBuZWVkIHRv IHNraXAgc2tpcF9uciBmcm9tIHN0YXJ0IG9mIGJfcmVzLgorCSAqLworCW1lbXNldChidXNuX3Jl cywgMCwgc2l6ZW9mKHN0cnVjdCByZXNvdXJjZSkpOworCXJldCA9IF9fYWxsb2NhdGVfcmVzb3Vy Y2UoYl9yZXMsIGJ1c25fcmVzLCBuZWVkZWRfc2l6ZSwKKwkJCQliX3Jlcy0+c3RhcnQgKyBza2lw X25yLCBiX3Jlcy0+ZW5kLAorCQkJCTEsIE5VTEwsIE5VTEwpOworCWlmICghcmV0KSB7CisJCSpw ID0gTlVMTDsKKwkJZ290byBvdXQ7CisJfQorCisJLyogVHJ5IHRvIGV4dGVuZCB0aGUgdG9wIG9m IHBhcmVudCByZXNvdXJjZXMgdG8gbWVldCBuZWVkZWRfc2l6ZSAqLworCisJLyogYl9yZXMgY291 bGQgYmUgcm9vdCBidXMgcmVzb3VyY2UgYW5kIGNhbiBub3QgYmUgZXh0ZW5kZWQgKi8KKwlpZiAo Yl9yZXMtPmZsYWdzICYgc3RvcF9mbGFncykKKwkJZ290byBvdXQ7CisKKwkvKiBmaW5kIG91dCBm cmVlIHJhbmdlIHVuZGVyIHRvcCBhdCBmaXJzdCAqLworCW5fc2l6ZSA9IF9fZmluZF9yZXNfdG9w X2ZyZWVfc2l6ZShiX3Jlcywgc2tpcF9ucik7CisJLyogY2FuIG5vdCBleHRlbmQgY3Jvc3MgbG9j YWwgYm91bmRhcnkgKi8KKwlpZiAoKGxpbWl0IC0gYl9yZXMtPmVuZCkgPCAobmVlZGVkX3NpemUg LSBuX3NpemUpKQorCQlnb3RvIG91dDsKKworCS8qIFByb2JlIGV4dGVuZGVkIHJhbmdlIGFib3Zl IHRvcCAqLworCW1lbXNldChidXNuX3JlcywgMCwgc2l6ZW9mKHN0cnVjdCByZXNvdXJjZSkpOwor CXBhcmVudF9yZXMgPSBiX3Jlcy0+cGFyZW50OworCXdoaWxlIChwYXJlbnRfcmVzICYmICEocGFy ZW50X3Jlcy0+ZmxhZ3MgJiBzdG9wX2ZsYWdzKSkgeworCQlyZXQgPSBfX2FkanVzdF9yZXNvdXJj ZShwYXJlbnRfcmVzLCBwYXJlbnRfcmVzLT5zdGFydCwKKwkJCXJlc291cmNlX3NpemUocGFyZW50 X3JlcykgKyAobmVlZGVkX3NpemUgLSBuX3NpemUpKTsKKwkJaWYgKCFyZXQpIHsKKwkJCXN0cnVj dCByZXNvdXJjZSAqcmVzID0gYl9yZXM7CisKKwkJCS8qIHNhdmUgcGFyZW50X3Jlcywgd2UgbmVl ZCBpdCBhcyBzdG9wcGVyIGxhdGVyICovCisJCQkqcCA9IHBhcmVudF9yZXM7CisKKwkJCS8qIGV4 dGVuZCBwYXJlbnQgcmVzb3VyY2VzIHRvcCAqLworCQkJd2hpbGUgKHJlcyAmJiByZXMgIT0gcGFy ZW50X3JlcykgeworCQkJCXJlcy0+ZW5kICs9IG5lZWRlZF9zaXplIC0gbl9zaXplOworCQkJCXJl cyA9IHJlcy0+cGFyZW50OworCQkJfQorCisJCQlyZXQgPSBfX2FsbG9jYXRlX3Jlc291cmNlKGJf cmVzLCBidXNuX3JlcywgbmVlZGVkX3NpemUsCisJCQkJCWJfcmVzLT5zdGFydCArIHNraXBfbnIs IGJfcmVzLT5lbmQsCisJCQkJCTEsIE5VTEwsIE5VTEwpOworCQkJLyogcmV0IG11c3QgYmUgMCBo ZXJlKi8KKwkJCWdvdG8gb3V0OgorCQl9CisJCXBhcmVudF9yZXMgPSBwYXJlbnRfcmVzLT5wYXJl bnQ7CisJfQorCitvdXQ6CisJd3JpdGVfdW5sb2NrKCZyZXNvdXJjZV9sb2NrKTsKKworCXJldHVy biByZXQ7Cit9CisKIC8qCiAgKiBNYW5hZ2VkIHJlZ2lvbiByZXNvdXJjZQogICovCg== --047d7bae44c8974dc804c86b00b7-- -- 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/