From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.3 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C8F90C433B4 for ; Thu, 15 Apr 2021 09:41:45 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 38C4A60FD8 for ; Thu, 15 Apr 2021 09:41:45 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 38C4A60FD8 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:Cc:To:Subject:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=kTENFXpx9m2HFaq8pb0Ci1PalHj+XoLMRqUhSfPt8Zw=; b=pSgWnONke08WA8L918z9inI04 G5wQGnegdQ2xbmswR+T3EKM0IzdigBgD/sdqUBKQwsR6cD8iutXeGNZIh3tkEi2Q6DiXkzUECPdNO iWaH+SibcHezlJMlSr6UGe/vmMWGveIC9IFGLF7xHJMQOvCf38Wjj3sZjFkSyTOklJvQK+ArcpgjI t4uRvvc129eR/8RbYTCNjQRhGE6YSy/AvJWuTn2AYv4UH/7MDrkjRm0mon4XMbngXScyGYPH+uATf 6Ff8wLfpCE0NFh5aDs9Y19tF4LU7A7W6izF8tduQPwIYSU9NSgRP/nDjLdZ0XxOloZrf4y0q4JoJT oxKjY/QIg==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lWyTS-00FZbJ-D5; Thu, 15 Apr 2021 09:39:47 +0000 Received: from bombadil.infradead.org ([2607:7c80:54:e::133]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lWyTI-00FZX6-OV for linux-arm-kernel@desiato.infradead.org; Thu, 15 Apr 2021 09:39:37 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:References:Cc:To: Subject:Sender:Reply-To:Content-ID:Content-Description; bh=OYfUyG4SfAr00Lsm1KqY9DuAuxzdrP7zVBgWh191mM8=; b=1XtusvKONI+fJO6iA7dYOHTynX qU4ebGPpNVUWu2s7vgXwBrYoUzarVQmoAyQk8OGP6pBY9VJaAGDzgJYxBaliUeN9ex+5VliqRz+sY DpOeoOLGsJOqsVshiSl4YeVjoLXpk7XcgqBzDj5ZEtAlvBUp5xYmQrO0X/ikWJYsqcYdFbl99sPm0 CeUucwDaf5jH5zLvvf9SsfyZpthuwForsQ3ucUSheYNeVFXceOfRrHm5XfLWXQ2YYcwsIjdDjR7EV Q06oY1eKw82WX1LDK1PcSlJ3dvvA552THFiWGvJBxLJY7mQRJYrudLtpRL3YYgrwPFDjvQBRC7XrR ijvh3/YA==; Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]) by bombadil.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lWyTF-008QzK-96 for linux-arm-kernel@lists.infradead.org; Thu, 15 Apr 2021 09:39:35 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1618479570; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=OYfUyG4SfAr00Lsm1KqY9DuAuxzdrP7zVBgWh191mM8=; b=WH26SSjwypq5rEiSLrfwee3xzekyPv8SQVaLWSHxLm+Uxaimnc2EYtxKx+hQQOXj1+cteG hoBz45yN6ZzhY+Mt9AJB4HTDSFXQTaU0Ykg1JuPDxfKjahiQDk02NwfY0UKBJE46uoSgNi w6E39qmo2fH235P7Yptia4GlDKOGO7o= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-507-DWNGSzP_PSKcJiIMK28M_w-1; Thu, 15 Apr 2021 05:39:26 -0400 X-MC-Unique: DWNGSzP_PSKcJiIMK28M_w-1 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id CF26A6D246; Thu, 15 Apr 2021 09:39:24 +0000 (UTC) Received: from [10.36.114.81] (ovpn-114-81.ams2.redhat.com [10.36.114.81]) by smtp.corp.redhat.com (Postfix) with ESMTPS id F267A1A874; Thu, 15 Apr 2021 09:39:20 +0000 (UTC) Subject: Re: [RFC PATCH v2 2/8] ACPI/IORT: Add support for RMR node parsing To: Shameer Kolothum , linux-arm-kernel@lists.infradead.org, linux-acpi@vger.kernel.org, iommu@lists.linux-foundation.org, devel@acpica.org Cc: linuxarm@huawei.com, steven.price@arm.com, guohanjun@huawei.com, Sami.Mujawar@arm.com, robin.murphy@arm.com, wanghuiqiang@huawei.com References: <20201119121150.3316-1-shameerali.kolothum.thodi@huawei.com> <20201119121150.3316-3-shameerali.kolothum.thodi@huawei.com> From: Auger Eric Message-ID: Date: Thu, 15 Apr 2021 11:39:17 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.0 MIME-Version: 1.0 In-Reply-To: <20201119121150.3316-3-shameerali.kolothum.thodi@huawei.com> Content-Language: en-US X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210415_023933_601547_9FD670E2 X-CRM114-Status: GOOD ( 32.35 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgU2hhbWVlciwKT24gMTEvMTkvMjAgMToxMSBQTSwgU2hhbWVlciBLb2xvdGh1bSB3cm90ZToK PiBBZGQgc3VwcG9ydCBmb3IgcGFyc2luZyBSTVIgbm9kZSBpbmZvcm1hdGlvbiBmcm9tIEFDUEku Cj4gRmluZCBhc3NvY2lhdGVkIHN0cmVhbSBpZHMgYW5kIHNtbXUgbm9kZcKgaW5mbyBmcm9tIHRo ZQo+IFJNUiBub2RlIGFuZCBwb3B1bGF0ZSBhIGxpbmtlZCBsaXN0IHdpdGggUk1SIG1lbW9yeQo+ IGRlc2NyaXB0b3JzLgo+IAo+IFNpZ25lZC1vZmYtYnk6IFNoYW1lZXIgS29sb3RodW0gPHNoYW1l ZXJhbGkua29sb3RodW0udGhvZGlAaHVhd2VpLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9hY3BpL2Fy bTY0L2lvcnQuYyB8IDEyMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQo+ ICAxIGZpbGUgY2hhbmdlZCwgMTIxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPiAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9hY3BpL2FybTY0L2lvcnQuYyBiL2RyaXZlcnMvYWNwaS9hcm02 NC9pb3J0LmMKPiBpbmRleCA5OTI5ZmY1MGMwYzAuLmE5NzA1YWEzNTAyOCAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2FjcGkvYXJtNjQvaW9ydC5jCj4gKysrIGIvZHJpdmVycy9hY3BpL2FybTY0L2lv cnQuYwo+IEBAIC00MCw2ICs0MCwyNSBAQCBzdHJ1Y3QgaW9ydF9md25vZGUgewo+ICBzdGF0aWMg TElTVF9IRUFEKGlvcnRfZndub2RlX2xpc3QpOwo+ICBzdGF0aWMgREVGSU5FX1NQSU5MT0NLKGlv cnRfZndub2RlX2xvY2spOwo+ICAKPiArc3RydWN0IGlvcnRfcm1yX2lkIHsKPiArCXUzMiAgc2lk Owo+ICsJc3RydWN0IGFjcGlfaW9ydF9ub2RlICpzbW11Owo+ICt9Owo+ICsKPiArLyoKPiArICog T25lIGVudHJ5IGZvciBJT1JUIFJNUi4KPiArICovCj4gK3N0cnVjdCBpb3J0X3Jtcl9lbnRyeSB7 Cj4gKwlzdHJ1Y3QgbGlzdF9oZWFkIGxpc3Q7Cj4gKwo+ICsJdW5zaWduZWQgaW50IHJtcl9pZHNf bnVtOwo+ICsJc3RydWN0IGlvcnRfcm1yX2lkICpybXJfaWRzOwo+ICsKPiArCXN0cnVjdCBhY3Bp X2lvcnRfcm1yX2Rlc2MgKnJtcl9kZXNjOwo+ICt9Owo+ICsKPiArc3RhdGljIExJU1RfSEVBRChp b3J0X3Jtcl9saXN0KTsgICAgICAgICAvKiBsaXN0IG9mIFJNUiByZWdpb25zIGZyb20gQUNQSSAq Lwo+ICsKPiAgLyoqCj4gICAqIGlvcnRfc2V0X2Z3bm9kZSgpIC0gQ3JlYXRlIGlvcnRfZndub2Rl IGFuZCB1c2UgaXQgdG8gcmVnaXN0ZXIKPiAgICoJCSAgICAgICBpb21tdSBkYXRhIGluIHRoZSBp b3J0X2Z3bm9kZV9saXN0Cj4gQEAgLTM5Myw3ICs0MTIsOCBAQCBzdGF0aWMgc3RydWN0IGFjcGlf aW9ydF9ub2RlICppb3J0X25vZGVfZ2V0X2lkKHN0cnVjdCBhY3BpX2lvcnRfbm9kZSAqbm9kZSwK PiAgCQlpZiAobm9kZS0+dHlwZSA9PSBBQ1BJX0lPUlRfTk9ERV9OQU1FRF9DT01QT05FTlQgfHwK PiAgCQkgICAgbm9kZS0+dHlwZSA9PSBBQ1BJX0lPUlRfTk9ERV9QQ0lfUk9PVF9DT01QTEVYIHx8 Cj4gIAkJICAgIG5vZGUtPnR5cGUgPT0gQUNQSV9JT1JUX05PREVfU01NVV9WMyB8fAo+IC0JCSAg ICBub2RlLT50eXBlID09IEFDUElfSU9SVF9OT0RFX1BNQ0cpIHsKPiArCQkgICAgbm9kZS0+dHlw ZSA9PSBBQ1BJX0lPUlRfTk9ERV9QTUNHIHx8Cj4gKwkJICAgIG5vZGUtPnR5cGUgPT0gQUNQSV9J T1JUX05PREVfUk1SKSB7Cj4gIAkJCSppZF9vdXQgPSBtYXAtPm91dHB1dF9iYXNlOwo+ICAJCQly ZXR1cm4gcGFyZW50Owo+ICAJCX0KPiBAQCAtMTY0Nyw2ICsxNjY3LDEwMyBAQCBzdGF0aWMgdm9p ZCBfX2luaXQgaW9ydF9lbmFibGVfYWNzKHN0cnVjdCBhY3BpX2lvcnRfbm9kZSAqaW9ydF9ub2Rl KQo+ICAjZWxzZQo+ICBzdGF0aWMgaW5saW5lIHZvaWQgaW9ydF9lbmFibGVfYWNzKHN0cnVjdCBh Y3BpX2lvcnRfbm9kZSAqaW9ydF9ub2RlKSB7IH0KPiAgI2VuZGlmCj4gK3N0YXRpYyBpbnQgaW9y dF9ybXJfZGVzY192YWxpZChzdHJ1Y3QgYWNwaV9pb3J0X3Jtcl9kZXNjICpkZXNjKQo+ICt7Cj4g KwlzdHJ1Y3QgaW9ydF9ybXJfZW50cnkgKmU7Cj4gKwl1NjQgZW5kLCBzdGFydCA9IGRlc2MtPmJh c2VfYWRkcmVzcywgbGVuZ3RoID0gZGVzYy0+bGVuZ3RoOwo+ICsKPiArCWlmICghSVNfQUxJR05F RChzdGFydCwgU1pfNjRLKSB8fCAhSVNfQUxJR05FRChsZW5ndGgsIFNaXzY0SykpCj4gKwkJcmV0 dXJuIC1FSU5WQUw7Cj4gKwo+ICsJZW5kID0gc3RhcnQgKyBsZW5ndGggLSAxOwo+ICsKPiArCS8q IENoZWNrIGZvciBhZGRyZXNzIG92ZXJsYXAgKi8KSSBkb24ndCBnZXQgdGhpcyBjaGVjay4gV2hh dCBpcyB0aGUgcHJvYmxlbSBpZiB5b3UgYXR0YWNoIHRoZSBzYW1lIHJhbmdlCnRvIGRpZmZlcmVu dCBzdHJlYW0gaWRzLiBTaG91bGRuJ3QgeW91IGNoZWNrIHRoZXJlIGlzIG5vIG92ZXJsYXAgZm9y IHRoZQpzYW1lIHNpZD8KCgo+ICsJbGlzdF9mb3JfZWFjaF9lbnRyeShlLCAmaW9ydF9ybXJfbGlz dCwgbGlzdCkgewo+ICsJCXU2NCBlX3N0YXJ0ID0gZS0+cm1yX2Rlc2MtPmJhc2VfYWRkcmVzczsK PiArCQl1NjQgZV9lbmQgPSBlX3N0YXJ0ICsgZS0+cm1yX2Rlc2MtPmxlbmd0aCAtIDE7Cj4gKwo+ ICsJCWlmIChzdGFydCA8PSBlX2VuZCAmJiBlbmQgPj0gZV9zdGFydCkKPiArCQkJcmV0dXJuIC1F SU5WQUw7Cj4gKwl9Cj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgX19p bml0IGlvcnRfcGFyc2Vfcm1yKHN0cnVjdCBhY3BpX2lvcnRfbm9kZSAqaW9ydF9ub2RlKQo+ICt7 Cj4gKwlzdHJ1Y3QgaW9ydF9ybXJfaWQgKnJtcl9pZHMsICppZHM7Cj4gKwlzdHJ1Y3QgaW9ydF9y bXJfZW50cnkgKmU7Cj4gKwlzdHJ1Y3QgYWNwaV9pb3J0X3JtciAqcm1yOwo+ICsJc3RydWN0IGFj cGlfaW9ydF9ybXJfZGVzYyAqcm1yX2Rlc2M7Cj4gKwl1MzIgbWFwX2NvdW50ID0gaW9ydF9ub2Rl LT5tYXBwaW5nX2NvdW50Owo+ICsJaW50IGksIHJldCA9IDAsIGRlc2NfY291bnQgPSAwOwo+ICsK PiArCWlmIChpb3J0X25vZGUtPnR5cGUgIT0gQUNQSV9JT1JUX05PREVfUk1SKQo+ICsJCXJldHVy biAwOwo+ICsKPiArCWlmICghaW9ydF9ub2RlLT5tYXBwaW5nX29mZnNldCB8fCAhbWFwX2NvdW50 KSB7Cj4gKwkJcHJfZXJyKEZXX0JVRyAiSW52YWxpZCBJRCBtYXBwaW5nLCBza2lwcGluZyBSTVIg bm9kZSAlcFxuIiwKPiArCQkgICAgICAgaW9ydF9ub2RlKTsKPiArCQlyZXR1cm4gLUVJTlZBTDsK PiArCX0KPiArCj4gKwlybXJfaWRzID0ga21hbGxvYyhzaXplb2YoKnJtcl9pZHMpICogbWFwX2Nv dW50LCBHRlBfS0VSTkVMKTsKPiArCWlmICghcm1yX2lkcykKPiArCQlyZXR1cm4gLUVOT01FTTsK PiArCj4gKwkvKiBSZXRyaWV2ZSBhc3NvY2lhdGVkIHNtbXUgYW5kIHN0cmVhbSBpZCAqLwo+ICsJ aWRzID0gcm1yX2lkczsKbml0OiBkbyB5b3UgbmVlZCBib3RoIHJtcl9pZHMgYW5kIGlkcz8KPiAr CWZvciAoaSA9IDA7IGkgPCBtYXBfY291bnQ7IGkrKywgaWRzKyspIHsKPiArCQlpZHMtPnNtbXUg PSBpb3J0X25vZGVfZ2V0X2lkKGlvcnRfbm9kZSwgJmlkcy0+c2lkLCBpKTsKPiArCQlpZiAoIWlk cy0+c21tdSkgewo+ICsJCQlwcl9lcnIoRldfQlVHICJJbnZhbGlkIFNNTVUgcmVmZXJlbmNlLCBz a2lwcGluZyBSTVIgbm9kZSAlcFxuIiwKPiArCQkJICAgICAgIGlvcnRfbm9kZSk7Cj4gKwkJCXJl dCA9IC1FSU5WQUw7Cj4gKwkJCWdvdG8gb3V0Owo+ICsJCX0KPiArCX0KPiArCj4gKwkvKiBSZXRy aWV2ZSBSTVIgZGF0YSAqLwo+ICsJcm1yID0gKHN0cnVjdCBhY3BpX2lvcnRfcm1yICopaW9ydF9u b2RlLT5ub2RlX2RhdGE7Cj4gKwlpZiAoIXJtci0+cm1yX29mZnNldCB8fCAhcm1yLT5ybXJfY291 bnQpIHsKPiArCQlwcl9lcnIoRldfQlVHICJJbnZhbGlkIFJNUiBkZXNjcmlwdG9yIGFycmF5LCBz a2lwcGluZyBSTVIgbm9kZSAlcFxuIiwKPiArCQkgICAgICAgaW9ydF9ub2RlKTsKPiArCQlyZXQg PSAtRUlOVkFMOwo+ICsJCWdvdG8gb3V0Owo+ICsJfQo+ICsKPiArCXJtcl9kZXNjID0gQUNQSV9B RERfUFRSKHN0cnVjdCBhY3BpX2lvcnRfcm1yX2Rlc2MsIGlvcnRfbm9kZSwKPiArCQkJCXJtci0+ cm1yX29mZnNldCk7Cj4gKwo+ICsJZm9yIChpID0gMDsgaSA8IHJtci0+cm1yX2NvdW50OyBpKyss IHJtcl9kZXNjKyspIHsKPiArCQlyZXQgPSBpb3J0X3Jtcl9kZXNjX3ZhbGlkKHJtcl9kZXNjKTsK PiArCQlpZiAocmV0KSB7Cj4gKwkJCXByX2VycihGV19CVUcgIkludmFsaWQgUk1SIGRlc2NyaXB0 b3JbJWRdIGZvciBub2RlICVwLCBza2lwcGluZy4uLlxuIiwKPiArCQkJICAgICAgIGksIGlvcnRf bm9kZSk7Cj4gKwkJCWdvdG8gb3V0OwpzbyBJIHVuZGVyc3RhbmQgeW91IHNraXAgdGhlIHdob2xl IG5vZGUgYW5kIG5vdCBqdXN0IHRoYXQgcm1yIGRlc2MsCm90aGVyd2lzZSB5b3Ugd291bGQgY29u dGludWUuIHNvIGluIHRoYXQgY2FzZSBkb24ndCB5b3UgbmVlZCB0byBmcmVlCmJvdGggcm1yX2lk cyBhbmQgYWxyZWFkeSBhbGxvY2F0ZWQgJ2UnPwo+ICsJCX0KPiArCj4gKwkJZSA9IGttYWxsb2Mo c2l6ZW9mKCplKSwgR0ZQX0tFUk5FTCk7Cj4gKwkJaWYgKCFlKSB7Cj4gKwkJCXJldCA9IC1FTk9N RU07Cj4gKwkJCWdvdG8gb3V0Owo+ICsJCX0KPiArCj4gKwkJZS0+cm1yX2lkc19udW0gPSBtYXBf Y291bnQ7Cj4gKwkJZS0+cm1yX2lkcyA9IHJtcl9pZHM7Cj4gKwkJZS0+cm1yX2Rlc2MgPSBybXJf ZGVzYzsKPiArCj4gKwkJbGlzdF9hZGRfdGFpbCgmZS0+bGlzdCwgJmlvcnRfcm1yX2xpc3QpOwo+ ICsJCWRlc2NfY291bnQrKzsKPiArCX0KPiArCj4gKwlyZXR1cm4gMDsKPiArCj4gK291dDoKPiAr CWlmICghZGVzY19jb3VudCkKZG9uJ3QgeW91IHdhbnQgdG8gdGVzdCByZXQgaW5zdGVhZD8gc2Vl IGNvbW1lbnQgYWJvdmUuICsgZnJlZSBhbGxvY2F0ZWQgJydlJwo+ICsJCWtmcmVlKHJtcl9pZHMp Owo+ICsJcmV0dXJuIHJldDsKPiArfQo+ICAKPiAgc3RhdGljIHZvaWQgX19pbml0IGlvcnRfaW5p dF9wbGF0Zm9ybV9kZXZpY2VzKHZvaWQpCj4gIHsKPiBAQCAtMTY3Niw2ICsxNzkzLDkgQEAgc3Rh dGljIHZvaWQgX19pbml0IGlvcnRfaW5pdF9wbGF0Zm9ybV9kZXZpY2VzKHZvaWQpCj4gIAo+ICAJ CWlvcnRfZW5hYmxlX2Fjcyhpb3J0X25vZGUpOwo+ICAKPiArCQlpZiAoaW9ydF90YWJsZS0+cmV2 aXNpb24gPT0gMSkKPiArCQkJaW9ydF9wYXJzZV9ybXIoaW9ydF9ub2RlKTsKPiArCj4gIAkJb3Bz ID0gaW9ydF9nZXRfZGV2X2NmZyhpb3J0X25vZGUpOwo+ICAJCWlmIChvcHMpIHsKPiAgCQkJZndu b2RlID0gYWNwaV9hbGxvY19md25vZGVfc3RhdGljKCk7Cj4gClRoYW5rcwoKRXJpYwoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJu ZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRw Oi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK