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.4 required=3.0 tests=BAYES_00, 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=ham 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 06B45C4338F for ; Fri, 30 Jul 2021 06:12:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E39ED60F4B for ; Fri, 30 Jul 2021 06:12:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237344AbhG3GMU (ORCPT ); Fri, 30 Jul 2021 02:12:20 -0400 Received: from mga11.intel.com ([192.55.52.93]:42010 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230349AbhG3GMT (ORCPT ); Fri, 30 Jul 2021 02:12:19 -0400 X-IronPort-AV: E=McAfee;i="6200,9189,10060"; a="209926112" X-IronPort-AV: E=Sophos;i="5.84,281,1620716400"; d="scan'208";a="209926112" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Jul 2021 23:12:15 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,281,1620716400"; d="scan'208";a="465345103" Received: from allen-box.sh.intel.com (HELO [10.239.159.118]) ([10.239.159.118]) by orsmga008.jf.intel.com with ESMTP; 29 Jul 2021 23:12:12 -0700 Cc: baolu.lu@linux.intel.com, iommu@lists.linux-foundation.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, suravee.suthikulpanit@amd.com, john.garry@huawei.com, dianders@chromium.org Subject: Re: [PATCH v2 18/24] iommu: Express DMA strictness via the domain type To: Robin Murphy , joro@8bytes.org, will@kernel.org References: <50bee17e9248ccfccb33a10238210d4ff4f4cf4d.1627468309.git.robin.murphy@arm.com> From: Lu Baolu Message-ID: Date: Fri, 30 Jul 2021 14:09:54 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 7/29/21 5:36 PM, Robin Murphy wrote: > On 2021-07-29 08:13, Lu Baolu wrote: >> Hi Robin, >> >> On 7/28/21 11:58 PM, Robin Murphy wrote: >>> diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c >>> index 982545234cf3..eecb5657de69 100644 >>> --- a/drivers/iommu/iommu.c >>> +++ b/drivers/iommu/iommu.c >>> @@ -136,6 +136,9 @@ static int __init iommu_subsys_init(void) >>>           } >>>       } >>> +    if (!iommu_default_passthrough() && !iommu_dma_strict) >>> +        iommu_def_domain_type = IOMMU_DOMAIN_DMA_FQ; >> >> iommu_dma_strict could be changed later by the vendor iommu driver via >> iommu_set_dma_strict(). This seems not to be the right place to set >> iommu_def_domain_type. > > Ah yes, good catch once again, thanks! > > I think this *is* the right place to initially set it to honour the > command-line option, since that matches what we do for passthrough. > However also like passthrough we'll need to keep things in sync if it's > updated later, like this: > > > diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c > index 87d7b299436e..593d4555bc57 100644 > --- a/drivers/iommu/iommu.c > +++ b/drivers/iommu/iommu.c > @@ -359,6 +359,8 @@ early_param("iommu.strict", iommu_dma_setup); >  void iommu_set_dma_strict(void) >  { >         iommu_dma_strict = true; > +       if (iommu_def_domain_type == IOMMU_DOMAIN_DMA_FQ) > +               iommu_def_domain_type = IOMMU_DOMAIN_DMA; >  } > >  static ssize_t iommu_group_attr_show(struct kobject *kobj, > > > Does that seem reasonable? I'm not sure there's any cleaner way to do it > since we don't want to inadvertently clobber the default type if the > user has given us something funky like "intel_iommu=strict > iommu.passthrough=1". > > Cheers, > Robin. > >> >>> + >>>       pr_info("Default domain type: %s %s\n", >>>           iommu_domain_type_str(iommu_def_domain_type), >>>           (iommu_cmd_line & IOMMU_CMD_LINE_DMA_API) ? >> >> Best regards, >> baolu With above fixed, Reviewed-by: Lu Baolu Best regards, baolu 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.4 required=3.0 tests=BAYES_00, 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=ham 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 6D753C4338F for ; Fri, 30 Jul 2021 06:12:21 +0000 (UTC) Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (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 2D86360F9B for ; Fri, 30 Jul 2021 06:12:21 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 2D86360F9B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.linux-foundation.org Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id EEBCF40354; Fri, 30 Jul 2021 06:12:20 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Rxijs_6mc2LO; Fri, 30 Jul 2021 06:12:20 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp2.osuosl.org (Postfix) with ESMTPS id 98088400F8; Fri, 30 Jul 2021 06:12:19 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 70B99C001A; Fri, 30 Jul 2021 06:12:19 +0000 (UTC) Received: from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133]) by lists.linuxfoundation.org (Postfix) with ESMTP id 6126FC000E for ; Fri, 30 Jul 2021 06:12:17 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 40CE2401B3 for ; Fri, 30 Jul 2021 06:12:17 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MhPLZoxI9UIR for ; Fri, 30 Jul 2021 06:12:16 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by smtp2.osuosl.org (Postfix) with ESMTPS id EE120400F8 for ; Fri, 30 Jul 2021 06:12:15 +0000 (UTC) X-IronPort-AV: E=McAfee;i="6200,9189,10060"; a="192633882" X-IronPort-AV: E=Sophos;i="5.84,281,1620716400"; d="scan'208";a="192633882" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Jul 2021 23:12:15 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,281,1620716400"; d="scan'208";a="465345103" Received: from allen-box.sh.intel.com (HELO [10.239.159.118]) ([10.239.159.118]) by orsmga008.jf.intel.com with ESMTP; 29 Jul 2021 23:12:12 -0700 Subject: Re: [PATCH v2 18/24] iommu: Express DMA strictness via the domain type To: Robin Murphy , joro@8bytes.org, will@kernel.org References: <50bee17e9248ccfccb33a10238210d4ff4f4cf4d.1627468309.git.robin.murphy@arm.com> From: Lu Baolu Message-ID: Date: Fri, 30 Jul 2021 14:09:54 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US Cc: linux-kernel@vger.kernel.org, dianders@chromium.org, iommu@lists.linux-foundation.org, linux-arm-kernel@lists.infradead.org X-BeenThere: iommu@lists.linux-foundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Development issues for Linux IOMMU support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: iommu-bounces@lists.linux-foundation.org Sender: "iommu" T24gNy8yOS8yMSA1OjM2IFBNLCBSb2JpbiBNdXJwaHkgd3JvdGU6Cj4gT24gMjAyMS0wNy0yOSAw ODoxMywgTHUgQmFvbHUgd3JvdGU6Cj4+IEhpIFJvYmluLAo+Pgo+PiBPbiA3LzI4LzIxIDExOjU4 IFBNLCBSb2JpbiBNdXJwaHkgd3JvdGU6Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9p b21tdS5jIGIvZHJpdmVycy9pb21tdS9pb21tdS5jCj4+PiBpbmRleCA5ODI1NDUyMzRjZjMuLmVl Y2I1NjU3ZGU2OSAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvaW9tbXUvaW9tbXUuYwo+Pj4gKysr IGIvZHJpdmVycy9pb21tdS9pb21tdS5jCj4+PiBAQCAtMTM2LDYgKzEzNiw5IEBAIHN0YXRpYyBp bnQgX19pbml0IGlvbW11X3N1YnN5c19pbml0KHZvaWQpCj4+PiDCoMKgwqDCoMKgwqDCoMKgwqAg fQo+Pj4gwqDCoMKgwqDCoCB9Cj4+PiArwqDCoMKgIGlmICghaW9tbXVfZGVmYXVsdF9wYXNzdGhy b3VnaCgpICYmICFpb21tdV9kbWFfc3RyaWN0KQo+Pj4gK8KgwqDCoMKgwqDCoMKgIGlvbW11X2Rl Zl9kb21haW5fdHlwZSA9IElPTU1VX0RPTUFJTl9ETUFfRlE7Cj4+Cj4+IGlvbW11X2RtYV9zdHJp Y3QgY291bGQgYmUgY2hhbmdlZCBsYXRlciBieSB0aGUgdmVuZG9yIGlvbW11IGRyaXZlciB2aWEK Pj4gaW9tbXVfc2V0X2RtYV9zdHJpY3QoKS4gVGhpcyBzZWVtcyBub3QgdG8gYmUgdGhlIHJpZ2h0 IHBsYWNlIHRvIHNldAo+PiBpb21tdV9kZWZfZG9tYWluX3R5cGUuCj4gCj4gQWggeWVzLCBnb29k IGNhdGNoIG9uY2UgYWdhaW4sIHRoYW5rcyEKPiAKPiBJIHRoaW5rIHRoaXMgKmlzKiB0aGUgcmln aHQgcGxhY2UgdG8gaW5pdGlhbGx5IHNldCBpdCB0byBob25vdXIgdGhlIAo+IGNvbW1hbmQtbGlu ZSBvcHRpb24sIHNpbmNlIHRoYXQgbWF0Y2hlcyB3aGF0IHdlIGRvIGZvciBwYXNzdGhyb3VnaC4g Cj4gSG93ZXZlciBhbHNvIGxpa2UgcGFzc3Rocm91Z2ggd2UnbGwgbmVlZCB0byBrZWVwIHRoaW5n cyBpbiBzeW5jIGlmIGl0J3MgCj4gdXBkYXRlZCBsYXRlciwgbGlrZSB0aGlzOgo+IAo+IAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2lvbW11L2lvbW11LmMgYi9kcml2ZXJzL2lvbW11L2lvbW11LmMK PiBpbmRleCA4N2Q3YjI5OTQzNmUuLjU5M2Q0NTU1YmM1NyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2lvbW11L2lvbW11LmMKPiArKysgYi9kcml2ZXJzL2lvbW11L2lvbW11LmMKPiBAQCAtMzU5LDYg KzM1OSw4IEBAIGVhcmx5X3BhcmFtKCJpb21tdS5zdHJpY3QiLCBpb21tdV9kbWFfc2V0dXApOwo+ ICDCoHZvaWQgaW9tbXVfc2V0X2RtYV9zdHJpY3Qodm9pZCkKPiAgwqB7Cj4gIMKgwqDCoMKgwqDC oMKgIGlvbW11X2RtYV9zdHJpY3QgPSB0cnVlOwo+ICvCoMKgwqDCoMKgwqAgaWYgKGlvbW11X2Rl Zl9kb21haW5fdHlwZSA9PSBJT01NVV9ET01BSU5fRE1BX0ZRKQo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGlvbW11X2RlZl9kb21haW5fdHlwZSA9IElPTU1VX0RPTUFJTl9ETUE7Cj4g IMKgfQo+IAo+ICDCoHN0YXRpYyBzc2l6ZV90IGlvbW11X2dyb3VwX2F0dHJfc2hvdyhzdHJ1Y3Qg a29iamVjdCAqa29iaiwKPiAKPiAKPiBEb2VzIHRoYXQgc2VlbSByZWFzb25hYmxlPyBJJ20gbm90 IHN1cmUgdGhlcmUncyBhbnkgY2xlYW5lciB3YXkgdG8gZG8gaXQgCj4gc2luY2Ugd2UgZG9uJ3Qg d2FudCB0byBpbmFkdmVydGVudGx5IGNsb2JiZXIgdGhlIGRlZmF1bHQgdHlwZSBpZiB0aGUgCj4g dXNlciBoYXMgZ2l2ZW4gdXMgc29tZXRoaW5nIGZ1bmt5IGxpa2UgImludGVsX2lvbW11PXN0cmlj dCAKPiBpb21tdS5wYXNzdGhyb3VnaD0xIi4KPiAKPiBDaGVlcnMsCj4gUm9iaW4uCj4gCj4+Cj4+ PiArCj4+PiDCoMKgwqDCoMKgIHByX2luZm8oIkRlZmF1bHQgZG9tYWluIHR5cGU6ICVzICVzXG4i LAo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIGlvbW11X2RvbWFpbl90eXBlX3N0cihpb21tdV9kZWZf ZG9tYWluX3R5cGUpLAo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIChpb21tdV9jbWRfbGluZSAmIElP TU1VX0NNRF9MSU5FX0RNQV9BUEkpID8KPj4KPj4gQmVzdCByZWdhcmRzLAo+PiBiYW9sdQoKV2l0 aCBhYm92ZSBmaXhlZCwKClJldmlld2VkLWJ5OiBMdSBCYW9sdSA8YmFvbHUubHVAbGludXguaW50 ZWwuY29tPgoKQmVzdCByZWdhcmRzLApiYW9sdQpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwppb21tdSBtYWlsaW5nIGxpc3QKaW9tbXVAbGlzdHMubGludXgt Zm91bmRhdGlvbi5vcmcKaHR0cHM6Ly9saXN0cy5saW51eGZvdW5kYXRpb24ub3JnL21haWxtYW4v bGlzdGluZm8vaW9tbXU= 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=-16.1 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 07620C4338F for ; Fri, 30 Jul 2021 06:14:30 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 D13BB60E09 for ; Fri, 30 Jul 2021 06:14:29 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org D13BB60E09 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:To:Subject:Cc:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=EaoJr6sEB51WCH+yg5Xk/2Ul7b3CDiSUyNeDkwdtpjo=; b=1QDlxb4w2WYQcqMEk47S/+FfRT 0cRYbTAvTtL3n3JNeN3B9zoehpFryL7znptuzVkj0R30FKGSP3etb2wWtiQA9+zH1M/OFXgyQAosZ DtUC4i9STKk/dM1nsJ+5uQfeyqK3K+US6aWCLt7c0vp6U3nt+jeAGMgA20QMvFSEEk/z+ka16av+2 0gr6dngBu/mo4J5r5nLPpVBvn8FO3RVgpw75IOh5FpsQ+lQZPcGZKuznvCWkzZANYwQZIYllTPqZz TSCssEmRnd7Y5VolmjsiZMPD7USMxYnzUyZB3nWxTY8ihXSZ8crsbm79YjqI0L0TF95Dn7FkWcrp1 ZVwXWnMg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1m9Lku-007Ooz-KE; Fri, 30 Jul 2021 06:12:25 +0000 Received: from mga03.intel.com ([134.134.136.65]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1m9Lkl-007Oml-Lm for linux-arm-kernel@lists.infradead.org; Fri, 30 Jul 2021 06:12:17 +0000 X-IronPort-AV: E=McAfee;i="6200,9189,10060"; a="213070225" X-IronPort-AV: E=Sophos;i="5.84,281,1620716400"; d="scan'208";a="213070225" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Jul 2021 23:12:15 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,281,1620716400"; d="scan'208";a="465345103" Received: from allen-box.sh.intel.com (HELO [10.239.159.118]) ([10.239.159.118]) by orsmga008.jf.intel.com with ESMTP; 29 Jul 2021 23:12:12 -0700 Cc: baolu.lu@linux.intel.com, iommu@lists.linux-foundation.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, suravee.suthikulpanit@amd.com, john.garry@huawei.com, dianders@chromium.org Subject: Re: [PATCH v2 18/24] iommu: Express DMA strictness via the domain type To: Robin Murphy , joro@8bytes.org, will@kernel.org References: <50bee17e9248ccfccb33a10238210d4ff4f4cf4d.1627468309.git.robin.murphy@arm.com> From: Lu Baolu Message-ID: Date: Fri, 30 Jul 2021 14:09:54 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210729_231215_782412_5B87B87B X-CRM114-Status: GOOD ( 23.34 ) 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gNy8yOS8yMSA1OjM2IFBNLCBSb2JpbiBNdXJwaHkgd3JvdGU6Cj4gT24gMjAyMS0wNy0yOSAw ODoxMywgTHUgQmFvbHUgd3JvdGU6Cj4+IEhpIFJvYmluLAo+Pgo+PiBPbiA3LzI4LzIxIDExOjU4 IFBNLCBSb2JpbiBNdXJwaHkgd3JvdGU6Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9p b21tdS5jIGIvZHJpdmVycy9pb21tdS9pb21tdS5jCj4+PiBpbmRleCA5ODI1NDUyMzRjZjMuLmVl Y2I1NjU3ZGU2OSAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvaW9tbXUvaW9tbXUuYwo+Pj4gKysr IGIvZHJpdmVycy9pb21tdS9pb21tdS5jCj4+PiBAQCAtMTM2LDYgKzEzNiw5IEBAIHN0YXRpYyBp bnQgX19pbml0IGlvbW11X3N1YnN5c19pbml0KHZvaWQpCj4+PiDCoMKgwqDCoMKgwqDCoMKgwqAg fQo+Pj4gwqDCoMKgwqDCoCB9Cj4+PiArwqDCoMKgIGlmICghaW9tbXVfZGVmYXVsdF9wYXNzdGhy b3VnaCgpICYmICFpb21tdV9kbWFfc3RyaWN0KQo+Pj4gK8KgwqDCoMKgwqDCoMKgIGlvbW11X2Rl Zl9kb21haW5fdHlwZSA9IElPTU1VX0RPTUFJTl9ETUFfRlE7Cj4+Cj4+IGlvbW11X2RtYV9zdHJp Y3QgY291bGQgYmUgY2hhbmdlZCBsYXRlciBieSB0aGUgdmVuZG9yIGlvbW11IGRyaXZlciB2aWEK Pj4gaW9tbXVfc2V0X2RtYV9zdHJpY3QoKS4gVGhpcyBzZWVtcyBub3QgdG8gYmUgdGhlIHJpZ2h0 IHBsYWNlIHRvIHNldAo+PiBpb21tdV9kZWZfZG9tYWluX3R5cGUuCj4gCj4gQWggeWVzLCBnb29k IGNhdGNoIG9uY2UgYWdhaW4sIHRoYW5rcyEKPiAKPiBJIHRoaW5rIHRoaXMgKmlzKiB0aGUgcmln aHQgcGxhY2UgdG8gaW5pdGlhbGx5IHNldCBpdCB0byBob25vdXIgdGhlIAo+IGNvbW1hbmQtbGlu ZSBvcHRpb24sIHNpbmNlIHRoYXQgbWF0Y2hlcyB3aGF0IHdlIGRvIGZvciBwYXNzdGhyb3VnaC4g Cj4gSG93ZXZlciBhbHNvIGxpa2UgcGFzc3Rocm91Z2ggd2UnbGwgbmVlZCB0byBrZWVwIHRoaW5n cyBpbiBzeW5jIGlmIGl0J3MgCj4gdXBkYXRlZCBsYXRlciwgbGlrZSB0aGlzOgo+IAo+IAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2lvbW11L2lvbW11LmMgYi9kcml2ZXJzL2lvbW11L2lvbW11LmMK PiBpbmRleCA4N2Q3YjI5OTQzNmUuLjU5M2Q0NTU1YmM1NyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2lvbW11L2lvbW11LmMKPiArKysgYi9kcml2ZXJzL2lvbW11L2lvbW11LmMKPiBAQCAtMzU5LDYg KzM1OSw4IEBAIGVhcmx5X3BhcmFtKCJpb21tdS5zdHJpY3QiLCBpb21tdV9kbWFfc2V0dXApOwo+ ICDCoHZvaWQgaW9tbXVfc2V0X2RtYV9zdHJpY3Qodm9pZCkKPiAgwqB7Cj4gIMKgwqDCoMKgwqDC oMKgIGlvbW11X2RtYV9zdHJpY3QgPSB0cnVlOwo+ICvCoMKgwqDCoMKgwqAgaWYgKGlvbW11X2Rl Zl9kb21haW5fdHlwZSA9PSBJT01NVV9ET01BSU5fRE1BX0ZRKQo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGlvbW11X2RlZl9kb21haW5fdHlwZSA9IElPTU1VX0RPTUFJTl9ETUE7Cj4g IMKgfQo+IAo+ICDCoHN0YXRpYyBzc2l6ZV90IGlvbW11X2dyb3VwX2F0dHJfc2hvdyhzdHJ1Y3Qg a29iamVjdCAqa29iaiwKPiAKPiAKPiBEb2VzIHRoYXQgc2VlbSByZWFzb25hYmxlPyBJJ20gbm90 IHN1cmUgdGhlcmUncyBhbnkgY2xlYW5lciB3YXkgdG8gZG8gaXQgCj4gc2luY2Ugd2UgZG9uJ3Qg d2FudCB0byBpbmFkdmVydGVudGx5IGNsb2JiZXIgdGhlIGRlZmF1bHQgdHlwZSBpZiB0aGUgCj4g dXNlciBoYXMgZ2l2ZW4gdXMgc29tZXRoaW5nIGZ1bmt5IGxpa2UgImludGVsX2lvbW11PXN0cmlj dCAKPiBpb21tdS5wYXNzdGhyb3VnaD0xIi4KPiAKPiBDaGVlcnMsCj4gUm9iaW4uCj4gCj4+Cj4+ PiArCj4+PiDCoMKgwqDCoMKgIHByX2luZm8oIkRlZmF1bHQgZG9tYWluIHR5cGU6ICVzICVzXG4i LAo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIGlvbW11X2RvbWFpbl90eXBlX3N0cihpb21tdV9kZWZf ZG9tYWluX3R5cGUpLAo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIChpb21tdV9jbWRfbGluZSAmIElP TU1VX0NNRF9MSU5FX0RNQV9BUEkpID8KPj4KPj4gQmVzdCByZWdhcmRzLAo+PiBiYW9sdQoKV2l0 aCBhYm92ZSBmaXhlZCwKClJldmlld2VkLWJ5OiBMdSBCYW9sdSA8YmFvbHUubHVAbGludXguaW50 ZWwuY29tPgoKQmVzdCByZWdhcmRzLApiYW9sdQoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgt YXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3Jn L21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=