Received: by 2002:a05:7412:8521:b0:e2:908c:2ebd with SMTP id t33csp2073140rdf; Mon, 6 Nov 2023 04:11:10 -0800 (PST) X-Google-Smtp-Source: AGHT+IF9y0Brsl2VNUcNvaRcMr66qFIoiBvI6CupsPYm6UvxVfWOJ3szmdZfy4E6ES9KbGaUV41w X-Received: by 2002:a17:902:e892:b0:1cc:5691:5124 with SMTP id w18-20020a170902e89200b001cc56915124mr17725589plg.21.1699272670313; Mon, 06 Nov 2023 04:11:10 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1699272670; cv=pass; d=google.com; s=arc-20160816; b=XN4z464IG7s/Eb5Z14f3IzKEJNw6cAbLE57LZjw71mqmbo3+PvIMDEjXD/nBVIIJrE 81V4l3GzzYba8ejJmm9JRs+LKfE2apP+pLG4uStp9Ox6H+5w7UxUlcEh6/jgZrSs+4cl i0RPUM/YLU07JRT/ENgmcvEFfABNXnZ5ZQG/3I9J+C2Uu403N0SkZbMUGYTUWXckCBRH c8t+vpQuLiRIMTDGbN7Lp56M5G30akTDXpvPascFeVK72kN0jKkdzSjBVKPWwabHHEDe x6iRFLGl20Zt0a1xbmovOpu7inD8xGZtUw0VHNpDwejvMTmP2d/49tSOUE2R2uKbM5Nv mM/A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-id:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:cc:to :from:dkim-signature; bh=f5epkr2lnjg1AGmmF82G3wiR8dkTu5W+YoY6j8Jp7Uw=; fh=yls5ZYL70o1gtT6WutSnFEW4mOmuXVXfW/MD0nTtaKM=; b=olOCe/89WSDJG8hcDAXAgJ9jBeN30llXR7YlUqOwiMo3YF+RnR8HiCZX+XaVvMNcKh KIP3YUprx/4WQIFOeaH7u86LSc2H+jGxc2eme6Tf9AvqGT93+P5kvMVYdgjAqGX0Pwyf aluq1t0Vzw2u3D6Ny8lDa3T7bRzCMyNYzXh/sUHpQdo2KOOWvgBoVkIfIXApMp/VttbC 44s9pxBrZ7IohFZ8BEWqcj4gw2XoZ4e1AQi4CVuCeyP0CJoHgmQsmirm0fo7UON9QDkT kyYmw6chufyc8E8GOpueOTphvdMqKqKY2ufJu4qBV2ai7xF4Bay4R/xFllKNt8DLiAiw QuPw== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=l3N3uovF; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id v17-20020a170902d09100b001c5fc13fb2dsi7344867plv.294.2023.11.06.04.11.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Nov 2023 04:11:10 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=l3N3uovF; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 31950807F4D1; Mon, 6 Nov 2023 04:11:05 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231594AbjKFMKZ (ORCPT + 99 others); Mon, 6 Nov 2023 07:10:25 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57832 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231759AbjKFMKB (ORCPT ); Mon, 6 Nov 2023 07:10:01 -0500 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.136]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7CF7B10D1; Mon, 6 Nov 2023 04:09:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1699272593; x=1730808593; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=f5epkr2lnjg1AGmmF82G3wiR8dkTu5W+YoY6j8Jp7Uw=; b=l3N3uovFYuDNFY7H3VsFy6589Iq2qLZxqNj5hIU2OPZb2gGqH9yAV49h Befhu1gUgpqbCqjgx7fl/dFTB8poV4TWNuHhcUyDEE8QoqOjZZyLjXfw1 nbhrI9KkzHk1k9xJ85xkPuHCQkkjrjjioHbbIJbaB4UAumYldCw2SR5XF LZz6MeIQKwKCh6h/ExXE3ku8j5diywcDW33Vi6HGsUXW7kssOCff141a1 4JmR88hBgAyAC54lUxJJ5lFd0Jc4KLPXUPasuDSvDm/JMGKBpWK0iVkHg 95+79oRMVzkn73A1LFKuzgZJmk3RoHA9ZEBZ//DM7Sw8X/kSIegdeArXA Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10885"; a="368596954" X-IronPort-AV: E=Sophos;i="6.03,281,1694761200"; d="scan'208";a="368596954" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Nov 2023 04:09:52 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10885"; a="765933134" X-IronPort-AV: E=Sophos;i="6.03,281,1694761200"; d="scan'208";a="765933134" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga007.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 06 Nov 2023 04:09:52 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34; Mon, 6 Nov 2023 04:09:51 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34 via Frontend Transport; Mon, 6 Nov 2023 04:09:51 -0800 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.101) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.34; Mon, 6 Nov 2023 04:09:48 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gHevyEX5FVeYbEUsT6tHb95BURql5YFhUGSZ1wMSuZJK3oPcI3TTbbe3nomu2is0biPjGafOfedl5qt3HnAlgujHe0ivgWl1S7YcsPYVz5XrmmZKY/I/Bci/kdGqvXdt+MoSApCVzFIPoC9cLGZuyIR22tEePlvcGha4P2ffuWRxErZByMtDN+CjFuTSTavcBU1jVdmb2+Bk8JVTflMv5NieQB9QWl1/RVPusPHpcyi0t3zsOlXJynSoLsVwOeub0tmCbFYoehqhNwvB1BzPuTq9BjMhNRfWXQ9xUw6/gofmzlYAEr2hVargcF0X+mkqUGbePfKPTO3rUjmmE9116A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=f5epkr2lnjg1AGmmF82G3wiR8dkTu5W+YoY6j8Jp7Uw=; b=jk+7eW+8pUqDGTDGnSlcciBL0W9PRUkW0hZAM1bvJ8Wnnpjm+A1uKC6gEdt8mzL/j9uFTtQV8Tzd2Nna5j7DBo8RJnjb4jglqv6B6/qEuBVf0kZ6Ss8okU3l8F0dLqsbYLL1uK2+oWkqoRggQ98pPkFxd5FCWYGOnT33iu+1Wn35iHpHABzeygsTJX623Lbj1Ffq8BV8Neiuzgf0cBtJgXu53EWfwjNK86MlwEnJVzog20Ql/R1f8INleg9ULrSDF7mPPmsHbVNvgbkAyHMb+pbhvEQKojSKC8mxU/IOtVUySHdTba8/0bTzY/c0m3YeycivA0a6ddKQ9xVi6NphUw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from BL1PR11MB5978.namprd11.prod.outlook.com (2603:10b6:208:385::18) by DS0PR11MB7311.namprd11.prod.outlook.com (2603:10b6:8:11e::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.28; Mon, 6 Nov 2023 12:09:46 +0000 Received: from BL1PR11MB5978.namprd11.prod.outlook.com ([fe80::5d1:aa22:7c98:f3c6]) by BL1PR11MB5978.namprd11.prod.outlook.com ([fe80::5d1:aa22:7c98:f3c6%6]) with mapi id 15.20.6954.021; Mon, 6 Nov 2023 12:09:45 +0000 From: "Huang, Kai" To: "hpa@zytor.com" , "linux-sgx@vger.kernel.org" , "x86@kernel.org" , "dave.hansen@linux.intel.com" , "jarkko@kernel.org" , "cgroups@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "mkoutny@suse.com" , "tglx@linutronix.de" , "haitao.huang@linux.intel.com" , "Mehta, Sohil" , "tj@kernel.org" , "mingo@redhat.com" , "bp@alien8.de" CC: "mikko.ylinen@linux.intel.com" , "Christopherson,, Sean" , "Zhang, Bo" , "kristen@linux.intel.com" , "yangjie@microsoft.com" , "sean.j.christopherson@intel.com" , "Li, Zhiquan1" , "anakrish@microsoft.com" Subject: Re: [PATCH v6 04/12] x86/sgx: Implement basic EPC misc cgroup functionality Thread-Topic: [PATCH v6 04/12] x86/sgx: Implement basic EPC misc cgroup functionality Thread-Index: AQHaC13a8dHEeRpnz0q8yAogc4UDz7BtPX+A Date: Mon, 6 Nov 2023 12:09:45 +0000 Message-ID: References: <20231030182013.40086-1-haitao.huang@linux.intel.com> <20231030182013.40086-5-haitao.huang@linux.intel.com> In-Reply-To: <20231030182013.40086-5-haitao.huang@linux.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.48.4 (3.48.4-1.fc38) authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR11MB5978:EE_|DS0PR11MB7311:EE_ x-ms-office365-filtering-correlation-id: a30e0676-b1c1-4d68-7e4f-08dbdec14418 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8DFAk9qJ0ZHbIEX8SN2N23/YxapnjCgdoCxOWLD5UihNbAF+HsAMJb7GCGNX18YSIpnko+isTa8K17rSDnb3Xr0iaO4BAduvJcMs+9/esGsI2jO6LmNS+BnIHpOvOBySFVCkopW0NWvy07J2XVBljIufWv6KSerDSd3jQCj3Nmu6NWbzJUFLd+jN6m0GwgSLSPPzN+dqdEmvJWpD9O+ev5PzNcyQesAhhBeRfLqDdQEw2LGooTvUarKCN8Jg+ZbEGfuhiBx8bgwTWweVyT6cmehWOsmkMft8bV5mEn8hUb3p89Y/f9Se5hvP3Pt4UUe5qHXl0f4YGtxZv6mgeCgr5JrPBJfyMBa07eqjd5D802MOIN8j7YaX6R2X3yXe9qYbHTYtJhw6Gyy/6lQNG5SMHJ/TVILa71hbzBD6ZsCJ7sGKKIWiA1gK16i9c5Lz7apCYjynDn9+g7f72Et1z9vKtg+iOx3TZDf5z/+tPBs0ds9Z/fUivve6yV2czmRothP39qlk880NxK4BGFVXpJhvkkzY7Ik2pSpbGEdEvKiFHFmldOCEnX7tDl74REpA+KY2X0cPoBA//I2jYS49cPxWGcMOmbJ7laOoNxctEiK6vXVkb88qHorqA/eaDVS38affU9fecpBfGpcQCFmj8XUmow== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL1PR11MB5978.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(136003)(376002)(366004)(346002)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(122000001)(83380400001)(6512007)(82960400001)(71200400001)(26005)(2616005)(6506007)(54906003)(316002)(478600001)(66446008)(64756008)(66556008)(66476007)(4326008)(110136005)(91956017)(76116006)(4001150100001)(8676002)(8936002)(36756003)(38100700002)(30864003)(2906002)(41300700001)(86362001)(5660300002)(7416002)(38070700009)(6486002)(66946007)(921008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dEY5NFdqbWRlb2tXa3BoV1BlektoSlhJbEx4YldhUmZPVUhpbTIwMHBkcDc0?= =?utf-8?B?Vmx0d0ZHYjVtUzNNbTRpbUZkUjlrazRtQjQzQWpKSFlUTmtFNFMyLzU1bmlC?= =?utf-8?B?MDVNTjdKNG1MY2lCRlkvYk5pb0F2SExZNEt2dVVDa05NLzBJbUY0VUJZWUph?= =?utf-8?B?UGM1ZjZDbXhEcE10MFk5V0FXMEY4UDErNnhJYzBkR3R3QldvZmh3Z21aQVBh?= =?utf-8?B?RFpsQ3g5Q2tZdXgvRXFBZXZrUUFvZ21sQWdmVmFML2dueStyNjhlc1NyV3N4?= =?utf-8?B?RzJWaWpCOUpLcG52TGQxT1ZYdDY3eHpvRy9hcmZrQlJIaGMyVlArcUdoZHZj?= =?utf-8?B?TDlxMVl1enNBVW5YdmNZYStuY1RYS3AxOWFsaElaMDVmaS9nbWpBOXRDenlo?= =?utf-8?B?ZFRoTUZ6cGZDRHRZek1EaXVKOFpEbW1uMmpKMDU5YUdnNG5JSWo2ZUlwM3R4?= =?utf-8?B?elBXMTZJSFhhckpuZDhPQVdYL3lLdTFIeExoZThnSlZGS3l3RWxFcDZteld5?= =?utf-8?B?S2NzOHU0VEJnc1NXYU9hY2ROQUtkU3IwU3k5YTRhU2JCTzlKRm5LZ09EZ3dU?= =?utf-8?B?Y1ltTXlFUTJtVkhVLzVkTEkrUVc0enRhSkVPUVYwWGZIZGdRWHk1YnZwa3RO?= =?utf-8?B?cGVvbWJDNHQ3ejBRb2Y2MmxuY05kWjdiQmQzQi8wV3F2a243OXJNb3R3dU43?= =?utf-8?B?TzVjMEFLN2Q5eWlxVDA3aGpxZ3U0R0tLdWpMTlNqR3ZseU43VVpESUtubVlm?= =?utf-8?B?cGhIZFlHc0xobzRvRWl3VHpUT3BIUlpTNG13VmJBZkxCajY0dlJQakszbE5V?= =?utf-8?B?M3hKQnBCc1RtTW80MmhPczFRMlZZamR4U3gvU01KMlBnOGlOV0Y4WXo1UnQx?= =?utf-8?B?d0l0SjJTQ01ZZTNuT1ZVQ25Hc29NY0lJamZwbzRiUGR2L1pBMit0c1U3d3dm?= =?utf-8?B?RHplQ3ZDVjNXYUdPanE1U25DK29zelNySHdjUmtYV2FpajlRbHA2dGplK2ZE?= =?utf-8?B?Wk0wV3I3WTJWejdyNXRZbytKeGlGODRVaCtzam1yS0U3WXNDZ0dJaGtVcERD?= =?utf-8?B?am9vSC9lMVI5aFVIL2c2L3ZNT0tJdXFLQjNuQXJRSFdpd0tUb3BpYXJ5dEY1?= =?utf-8?B?N3Zoc1VDb0ZmVW1QU1Zvbk42NmpqdHh2NjJWVEpUbG52bTI1Y3B0aWdwWUJi?= =?utf-8?B?ajRGa2RuSVpIUTlodHk2VUNjVXNHUmFiNFlVT1dYTk4yZXVhK3dpTG5ycmpO?= =?utf-8?B?eWU0VlNwK1dVUzRmK0dVL2FCY3RESmFjL1ZIUlRqc3M2QXU0UnN0UjRyM3BM?= =?utf-8?B?WUpTOHN3ejVFdUFIa0dXUWpkeStVczR5L3RkTWxId2dPK0ZweDNISmR5NVo1?= =?utf-8?B?N1dpN0QvL05WeDdtUkJrbkFFMTVOS1Fnank5aGJBa082NHRuazVnRGpLSmN1?= =?utf-8?B?OVJWdXhGMVFUQllJaUpRcE5ZbzBPWnVVcFVGTk5jWVVPK2h0SmxETDl3RmRO?= =?utf-8?B?R3RkbE8zWjFicU8vUEtCa25YSnpacSsyREs3UHl4TTlLOCt0WmhROVdETlJI?= =?utf-8?B?ZVdwcTZKayt5SDhlY09WazlLNkZienR0SEE2T04yVDZUdncyYUh1NlhjWUhU?= =?utf-8?B?NmxldHpNaW0vdzRjMGlMbHB4b25OZ1o0c3puL3N5aVdSbjdITWFQNXNYVlhz?= =?utf-8?B?RzZsV1JBdFlLandZY2tOZ0gvSUpycUdsbVhUVHAwT2x4cDMwZWRDb0lISURp?= =?utf-8?B?bEFmdVZka21SZWtMcmFTYzRUUG5pYldTQlNTb3FOUkNKZVdqVXlmcGVEUmM2?= =?utf-8?B?WFNSU0Y5VHhEdTBoZTUvRlBFNjhWVGcrclg2aUs5SFRZZEo3c0xMTUlsNHFs?= =?utf-8?B?cGg3RTRNZ3lndjRBM1Z4ckcxWjA0NUMrbnV2aStrOWZGK0ZDTi9kRXgycVVE?= =?utf-8?B?b20rRy8vd3hBS282cjN3cVQ4M0JhOWRzckNtTjRmRjRjSGttVmxSOG1HWFlk?= =?utf-8?B?a0xzeDZRVW82RVlFUjZ1RUJ4ZEhhcUNJaDlETUEveDV4emtqaTlUK2ZRS2Vk?= =?utf-8?B?RWR2NE53Vm5xdWp5N2t1ZkVYSHh3M2YwcUJBSkZXeVV3M2ZhWHRhVlJKUU1Z?= =?utf-8?B?NTJ3VXpEeXZIZ0ZNbEZGWnQ2ajBiK0pqZmZiMnJPR3RmMndtNVF2NGU1Vko4?= =?utf-8?B?bUE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <2FC7339829B0414E9AF7B9837794D40B@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR11MB5978.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a30e0676-b1c1-4d68-7e4f-08dbdec14418 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Nov 2023 12:09:45.5400 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: /fO9bCLWic0shhY2e0gE2+jqGhy4IMvuSx+8+dL5y3oAGH5EoEurcQ1p+mIYQDYa+gWgBfrL2Hu+hggXBgdR7A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR11MB7311 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Mon, 06 Nov 2023 04:11:05 -0800 (PST) T24gTW9uLCAyMDIzLTEwLTMwIGF0IDExOjIwIC0wNzAwLCBIYWl0YW8gSHVhbmcgd3JvdGU6DQo+ IEZyb206IEtyaXN0ZW4gQ2FybHNvbiBBY2NhcmRpIDxrcmlzdGVuQGxpbnV4LmludGVsLmNvbT4N Cj4gDQo+IEltcGxlbWVudCBzdXBwb3J0IGZvciBjZ3JvdXAgY29udHJvbCBvZiBTR1ggRW5jbGF2 ZSBQYWdlIENhY2hlIChFUEMpDQo+IG1lbW9yeSB1c2luZyB0aGUgbWlzYyBjZ3JvdXAgY29udHJv bGxlci4gRVBDIG1lbW9yeSBpcyBpbmRlcGVuZGVudA0KPiBmcm9tIG5vcm1hbCBzeXN0ZW0gbWVt b3J5LCBlLmcuIG11c3QgYmUgcmVzZXJ2ZWQgYXQgYm9vdCBmcm9tIFJBTSBhbmQNCj4gY2Fubm90 IGJlIGNvbnZlcnRlZCBiZXR3ZWVuIEVQQyBhbmQgbm9ybWFsIG1lbW9yeSB3aGlsZSB0aGUgc3lz dGVtIGlzDQo+IHJ1bm5pbmcuIEVQQyBpcyBtYW5hZ2VkIGJ5IHRoZSBTR1ggc3Vic3lzdGVtIGFu ZCBpcyBub3QgYWNjb3VudGVkIGJ5DQo+IHRoZSBtZW1vcnkgY29udHJvbGxlci4NCj4gDQo+IE11 Y2ggbGlrZSBub3JtYWwgc3lzdGVtIG1lbW9yeSwgRVBDIG1lbW9yeSBjYW4gYmUgb3ZlcmNvbW1p dHRlZCB2aWENCj4gdmlydHVhbCBtZW1vcnkgdGVjaG5pcXVlcyBhbmQgcGFnZXMgY2FuIGJlIHN3 YXBwZWQgb3V0IG9mIHRoZSBFUEMgdG8NCj4gdGhlaXIgYmFja2luZyBzdG9yZSAobm9ybWFsIHN5 c3RlbSBtZW1vcnksIGUuZy4gc2htZW0pLiAgVGhlIFNHWCBFUEMNCj4gc3Vic3lzdGVtIGlzIGFu YWxvZ291cyB0byB0aGUgbWVtb3J5IHN1YnN5c3RlbSBhbmQgdGhlIFNHWCBFUEMgY29udHJvbGxl cg0KPiBpcyBpbiB0dXJuIGFuYWxvZ291cyB0byB0aGUgbWVtb3J5IGNvbnRyb2xsZXI7IGl0IGlt cGxlbWVudHMgbGltaXQgYW5kDQo+IHByb3RlY3Rpb24gbW9kZWxzIGZvciBFUEMgbWVtb3J5Lg0K DQpOaXQ6DQoNClRoZSBhYm92ZSB0d28gcGFyYWdyYXBocyB0YWxrIGFib3V0IHdoYXQgaXMgRVBD IGFuZCBFUEMgcmVzb3VyY2UgY29udHJvbCBuZWVkcw0KdG8gYmUgZG9uZSBzZXBhcmF0ZWx5LCBl dGMsIGJ1dCBJTUhPIGl0IGxhY2tzIHNvbWUgYmFja2dyb3VuZCBhYm91dCAid2h5IiBFUEMNCnJl c291cmNlIGNvbnRyb2wgaXMgbmVlZGVkLCBlLmcsIGZyb20gdXNlIGNhc2UncyBwZXJzcGVjdGl2 ZS4NCg0KPiANCj4gVGhlIG1pc2MgY29udHJvbGxlciBwcm92aWRlcyBhIG1lY2hhbmlzbSB0byBz ZXQgYSBoYXJkIGxpbWl0IG9mIEVQQw0KPiB1c2FnZSB2aWEgdGhlICJzZ3hfZXBjIiByZXNvdXJj ZSBpbiAibWlzYy5tYXgiLiBUaGUgdG90YWwgRVBDIG1lbW9yeQ0KPiBhdmFpbGFibGUgb24gdGhl IHN5c3RlbSBpcyByZXBvcnRlZCB2aWEgdGhlICJzZ3hfZXBjIiByZXNvdXJjZSBpbg0KPiAibWlz Yy5jYXBhY2l0eSIuDQoNClBsZWFzZSBzZXBhcmF0ZSB3aGF0IHRoZSBjdXJyZW50IG1pc2MgY2dy b3VwIHByb3ZpZGVzLCBhbmQgaG93IHRoaXMgcGF0Y2ggaXMNCmdvaW5nIHRvIHV0aWxpemUuDQoN ClBsZWFzZSBkZXNjcmliZSB0aGUgY2hhbmdlcyBpbiBpbXBlcmF0aXZlIG1vb2QuIEUuZywgInJl cG9ydCB0b3RhbCBFUEMgbWVtb3J5DQp2aWEgLi4uIiwgaW5zdGVhZCBvZiAiLi4uIGlzIHJlcG9y dGVkIHZpYSAuLi4iLg0KDQo+IA0KPiBUaGlzIHBhdGNoIHdhcyBtb2RpZmllZCBmcm9tIHRoZSBw cmV2aW91cyB2ZXJzaW9uIHRvIG9ubHkgYWRkIGJhc2ljIEVQQw0KPiBjZ3JvdXAgc3RydWN0dXJl LCBhY2NvdW50aW5nIGFsbG9jYXRpb25zIGZvciBjZ3JvdXAgdXNhZ2UNCj4gKGNoYXJnZS91bmNo YXJnZSksIHNldHVwIG1pc2MgY2dyb3VwIGNhbGxiYWNrcywgc2V0IHRvdGFsIEVQQyBjYXBhY2l0 eS4NCg0KVGhpcyBpc24ndCBjaGFuZ2Vsb2cgbWF0ZXJpYWwuICBQbGVhc2UgZm9jdXMgb24gZGVz Y3JpYmluZyB0aGUgaGlnaCBsZXZlbCBkZXNpZ24NCmFuZCB3aHkgeW91IGNob3NlIHN1Y2ggZGVz aWduLg0KDQo+IA0KPiBGb3Igbm93LCB0aGUgRVBDIGNncm91cCBzaW1wbHkgYmxvY2tzIGFkZGl0 aW9uYWwgRVBDIGFsbG9jYXRpb24gaW4NCj4gc2d4X2FsbG9jX2VwY19wYWdlKCkgd2hlbiB0aGUg bGltaXQgaXMgcmVhY2hlZC4gUmVjbGFpbWFibGUgcGFnZXMgYXJlDQo+IHN0aWxsIHRyYWNrZWQg aW4gdGhlIGdsb2JhbCBhY3RpdmUgbGlzdCwgb25seSByZWNsYWltZWQgYnkgdGhlIGdsb2JhbA0K PiByZWNsYWltZXIgd2hlbiB0aGUgdG90YWwgZnJlZSBwYWdlIGNvdW50IGlzIGxvd2VyIHRoYW4g YSB0aHJlc2hvbGQuDQo+IA0KPiBMYXRlciBwYXRjaGVzIHdpbGwgcmVvcmdhbml6ZSB0aGUgdHJh Y2tpbmcgYW5kIHJlY2xhbWF0aW9uIGNvZGUgaW4gdGhlDQo+IGdsb2JhbGUgcmVjbGFpbWVyIGFu ZCBpbXBsZW1lbnQgcGVyLWNncm91cCB0cmFja2luZyBhbmQgcmVjbGFpbWluZy4NCj4gDQo+IENv LWRldmVsb3BlZC1ieTogU2VhbiBDaHJpc3RvcGhlcnNvbiA8c2Vhbi5qLmNocmlzdG9waGVyc29u QGludGVsLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogU2VhbiBDaHJpc3RvcGhlcnNvbiA8c2Vhbi5q LmNocmlzdG9waGVyc29uQGludGVsLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogS3Jpc3RlbiBDYXJs c29uIEFjY2FyZGkgPGtyaXN0ZW5AbGludXguaW50ZWwuY29tPg0KPiBDby1kZXZlbG9wZWQtYnk6 IEhhaXRhbyBIdWFuZyA8aGFpdGFvLmh1YW5nQGxpbnV4LmludGVsLmNvbT4NCj4gU2lnbmVkLW9m Zi1ieTogSGFpdGFvIEh1YW5nIDxoYWl0YW8uaHVhbmdAbGludXguaW50ZWwuY29tPg0KPiAtLS0N Cj4gVjY6DQo+IC0gU3BsaXQgdGhlIG9yaWdpbmFsIGxhcmdlIHBhdGNoIkxpbWl0IHByb2Nlc3Mg RVBDIHVzYWdlIHdpdGggbWlzYw0KPiBjZ3JvdXAgY29udHJvbGxlciIgIGFuZCByZXN0cnVjdHVy ZSBpdCAoS2FpKQ0KPiAtLS0NCj4gIGFyY2gveDg2L0tjb25maWcgICAgICAgICAgICAgICAgICAg ICB8ICAxMyArKysrDQo+ICBhcmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9NYWtlZmlsZSAgICAgfCAg IDEgKw0KPiAgYXJjaC94ODYva2VybmVsL2NwdS9zZ3gvZXBjX2Nncm91cC5jIHwgMTAzICsrKysr KysrKysrKysrKysrKysrKysrKysrKw0KPiAgYXJjaC94ODYva2VybmVsL2NwdS9zZ3gvZXBjX2Nn cm91cC5oIHwgIDM2ICsrKysrKysrKysNCj4gIGFyY2gveDg2L2tlcm5lbC9jcHUvc2d4L21haW4u YyAgICAgICB8ICAyOCArKysrKysrKw0KPiAgYXJjaC94ODYva2VybmVsL2NwdS9zZ3gvc2d4Lmgg ICAgICAgIHwgICAzICsNCj4gIDYgZmlsZXMgY2hhbmdlZCwgMTg0IGluc2VydGlvbnMoKykNCj4g IGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9lcGNfY2dyb3VwLmMN Cj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9lcGNfY2dyb3Vw LmgNCj4gDQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9LY29uZmlnIGIvYXJjaC94ODYvS2NvbmZp Zw0KPiBpbmRleCA2NmJmYWJhZTg4MTQuLmUxN2M1ZGMzYWVhNCAxMDA2NDQNCj4gLS0tIGEvYXJj aC94ODYvS2NvbmZpZw0KPiArKysgYi9hcmNoL3g4Ni9LY29uZmlnDQo+IEBAIC0xOTIxLDYgKzE5 MjEsMTkgQEAgY29uZmlnIFg4Nl9TR1gNCj4gIA0KPiAgCSAgSWYgdW5zdXJlLCBzYXkgTi4NCj4g IA0KPiArY29uZmlnIENHUk9VUF9TR1hfRVBDDQo+ICsJYm9vbCAiTWlzY2VsbGFuZW91cyBDZ3Jv dXAgQ29udHJvbGxlciBmb3IgRW5jbGF2ZSBQYWdlIENhY2hlIChFUEMpIGZvciBJbnRlbCBTR1gi DQo+ICsJZGVwZW5kcyBvbiBYODZfU0dYICYmIENHUk9VUF9NSVNDDQo+ICsJaGVscA0KPiArCSAg UHJvdmlkZXMgY29udHJvbCBvdmVyIHRoZSBFUEMgZm9vdHByaW50IG9mIHRhc2tzIGluIGEgY2dy b3VwIHZpYQ0KPiArCSAgdGhlIE1pc2NlbGxhbmVvdXMgY2dyb3VwIGNvbnRyb2xsZXIuDQo+ICsN Cj4gKwkgIEVQQyBpcyBhIHN1YnNldCBvZiByZWd1bGFyIG1lbW9yeSB0aGF0IGlzIHVzYWJsZSBv bmx5IGJ5IFNHWA0KPiArCSAgZW5jbGF2ZXMgYW5kIGlzIHZlcnkgbGltaXRlZCBpbiBxdWFudGl0 eSwgZS5nLiBsZXNzIHRoYW4gMSUNCj4gKwkgIG9mIHRvdGFsIERSQU0uDQo+ICsNCj4gKwkgIFNh eSBOIGlmIHVuc3VyZS4NCj4gKw0KPiAgY29uZmlnIFg4Nl9VU0VSX1NIQURPV19TVEFDSw0KPiAg CWJvb2wgIlg4NiB1c2Vyc3BhY2Ugc2hhZG93IHN0YWNrIg0KPiAgCWRlcGVuZHMgb24gQVNfV1JV U1MNCj4gZGlmZiAtLWdpdCBhL2FyY2gveDg2L2tlcm5lbC9jcHUvc2d4L01ha2VmaWxlIGIvYXJj aC94ODYva2VybmVsL2NwdS9zZ3gvTWFrZWZpbGUNCj4gaW5kZXggOWMxNjU2Nzc5YjJhLi4xMjkw MWE0ODhkYTcgMTAwNjQ0DQo+IC0tLSBhL2FyY2gveDg2L2tlcm5lbC9jcHUvc2d4L01ha2VmaWxl DQo+ICsrKyBiL2FyY2gveDg2L2tlcm5lbC9jcHUvc2d4L01ha2VmaWxlDQo+IEBAIC00LDMgKzQs NCBAQCBvYmoteSArPSBcDQo+ICAJaW9jdGwubyBcDQo+ICAJbWFpbi5vDQo+ICBvYmotJChDT05G SUdfWDg2X1NHWF9LVk0pCSs9IHZpcnQubw0KPiArb2JqLSQoQ09ORklHX0NHUk9VUF9TR1hfRVBD KQkgICAgICAgKz0gZXBjX2Nncm91cC5vDQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9rZXJuZWwv Y3B1L3NneC9lcGNfY2dyb3VwLmMgYi9hcmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9lcGNfY2dyb3Vw LmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAwLi41MDA2Mjdk MDU2M2YNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9hcmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9l cGNfY2dyb3VwLmMNCj4gQEAgLTAsMCArMSwxMDMgQEANCj4gKy8vIFNQRFgtTGljZW5zZS1JZGVu dGlmaWVyOiBHUEwtMi4wDQo+ICsvLyBDb3B5cmlnaHQoYykgMjAyMiBJbnRlbCBDb3Jwb3JhdGlv bi4NCj4gKw0KPiArI2luY2x1ZGUgPGxpbnV4L2F0b21pYy5oPg0KPiArI2luY2x1ZGUgPGxpbnV4 L2tlcm5lbC5oPg0KPiArI2luY2x1ZGUgImVwY19jZ3JvdXAuaCINCj4gKw0KPiArc3RhdGljIGlu bGluZSBzdHJ1Y3Qgc2d4X2VwY19jZ3JvdXAgKnNneF9lcGNfY2dyb3VwX2Zyb21fbWlzY19jZyhz dHJ1Y3QgbWlzY19jZyAqY2cpDQo+ICt7DQo+ICsJcmV0dXJuIChzdHJ1Y3Qgc2d4X2VwY19jZ3Jv dXAgKikoY2ctPnJlc1tNSVNDX0NHX1JFU19TR1hfRVBDXS5wcml2KTsNCj4gK30NCj4gKw0KPiAr c3RhdGljIGlubGluZSBib29sIHNneF9lcGNfY2dyb3VwX2Rpc2FibGVkKHZvaWQpDQo+ICt7DQo+ ICsJcmV0dXJuICFjZ3JvdXBfc3Vic3lzX2VuYWJsZWQobWlzY19jZ3JwX3N1YnN5cyk7DQoNCkZy b20gYmVsb3csIHRoZSByb290IEVQQyBjZ3JvdXAgaXMgZHluYW1pY2FsbHkgYWxsb2NhdGVkLiAg U2hvdWxkbid0IGl0IGFsc28NCmNoZWNrIHdoZXRoZXIgdGhlIHJvb3QgRVBDIGNncm91cCBpcyB2 YWxpZD8NCg0KPiArfQ0KPiArDQo+ICsvKioNCj4gKyAqIHNneF9lcGNfY2dyb3VwX3RyeV9jaGFy Z2UoKSAtIGhpZXJhcmNoaWNhbGx5IHRyeSB0byBjaGFyZ2UgYSBzaW5nbGUgRVBDIHBhZ2UNCj4g KyAqDQo+ICsgKiBSZXR1cm5zIEVQQyBjZ3JvdXAgb3IgTlVMTCBvbiBzdWNjZXNzLCAtZXJybm8g b24gZmFpbHVyZS4NCj4gKyAqLw0KPiArc3RydWN0IHNneF9lcGNfY2dyb3VwICpzZ3hfZXBjX2Nn cm91cF90cnlfY2hhcmdlKHZvaWQpDQo+ICt7DQo+ICsJc3RydWN0IHNneF9lcGNfY2dyb3VwICpl cGNfY2c7DQo+ICsJaW50IHJldDsNCj4gKw0KPiArCWlmIChzZ3hfZXBjX2Nncm91cF9kaXNhYmxl ZCgpKQ0KPiArCQlyZXR1cm4gTlVMTDsNCj4gKw0KPiArCWVwY19jZyA9IHNneF9lcGNfY2dyb3Vw X2Zyb21fbWlzY19jZyhnZXRfY3VycmVudF9taXNjX2NnKCkpOw0KPiArCXJldCA9IG1pc2NfY2df dHJ5X2NoYXJnZShNSVNDX0NHX1JFU19TR1hfRVBDLCBlcGNfY2ctPmNnLCBQQUdFX1NJWkUpOw0K PiArDQo+ICsJaWYgKCFyZXQpIHsNCj4gKwkJLyogTm8gZXBjX2NnIHJldHVybmVkLCByZWxlYXNl IHJlZiBmcm9tIGdldF9jdXJyZW50X21pc2NfY2coKSAqLw0KPiArCQlwdXRfbWlzY19jZyhlcGNf Y2ctPmNnKTsNCj4gKwkJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7DQoNCm1pc2NfY2dfdHJ5X2No YXJnZSgpIHJldHVybnMgMCB3aGVuIHN1Y2Nlc3NmdWxseSBjaGFyZ2VkLCBubz8NCg0KPiArCX0N Cj4gKw0KPiArCS8qIFJlZiByZWxlYXNlZCBpbiBzZ3hfZXBjX2Nncm91cF91bmNoYXJnZSgpICov DQo+ICsJcmV0dXJuIGVwY19jZzsNCj4gK30NCg0KSU1ITyB0aGUgYWJvdmUgX3RyeV9jaGFyZ2Uo KSByZXR1cm5pbmcgYSBwb2ludGVyIG9mIEVQQyBjZ3JvdXAgaXMgYSBsaXR0bGUgYml0DQpvZGQs IGJlY2F1c2UgaXQgZG9lc24ndCBtYXRjaCB0aGUgZXhpc3RpbmcgbWlzY19jZ190cnlfY2hhcmdl KCkgd2hpY2ggcmV0dXJucw0Kd2hldGhlciB0aGUgY2hhcmdlIGlzIHN1Y2Nlc3NmdWwgb3Igbm90 LiAgc2V2X21pc2NfY2dfdHJ5X2NoYXJnZSgpIG1hdGNoZXMNCm1pc2NfY2dfdHJ5X2NoYXJnZSgp IHRvby4gDQoNCkkgdGhpbmsgaXQncyBiZXR0ZXIgdG8gc3BsaXQgImdldHRpbmcgRVBDIGNncm91 cCIgcGFydCBvdXQgYXMgYSBzZXBhcmF0ZSBoZWxwZXIsDQphbmQgbWFrZSB0aGlzIF90cnlfY2hh cmdlKCkgbWF0Y2ggZXhpc3RpbmcgcGF0dGVybjoNCg0KCXN0cnVjdCBzZ3hfZXBjX2Nncm91cCAq c2d4X2dldF9jdXJyZW50X2VwY19jZyh2b2lkKQ0KCXsNCgkJaWYgKHNneF9lcGNfY2dyb3VwX2Rp c2FibGVkKCkpDQoJCQlyZXR1cm4gTlVMTDsNCgkNCgkJcmV0dXJuIHNneF9lcGNfY2dyb3VwX2Zy b21fbWlzY19jZyhnZXRfY3VycmVudF9taXNjX2NnKCkpOw0KCX0NCg0KCWludCBzZ3hfZXBjX2Nn cm91cF90cnlfY2hhcmdlKHN0cnVjdCBzZ3hfZXBjX2Nncm91cCAqZXBjX2NnKQ0KCXsNCgkJaWYg KCFlcGNfY2cpDQoJCQlyZXR1cm4gLUVJTlZBTDsNCgkNCgkJcmV0dXJuIG1pc2NfY2dfdHJ5X2No YXJnZShlcGNfY2ctPmNnKTsNCgl9DQoNCkhhdmluZyBzZ3hfZ2V0X2N1cnJlbnRfZXBjX2NnKCkg YWxzbyBtYWtlcyB0aGUgY2FsbGVyIGVhc2llciB0byByZWFkLCBiZWNhdXNlIHdlDQpjYW4gaW1t ZWRpYXRlbHkga25vdyB3ZSBhcmUgZ29pbmcgdG8gY2hhcmdlIHRoZSAqY3VycmVudCogRVBDIGNn cm91cCwgYnV0IG5vdA0Kc29tZSBjZ3JvdXAgaGlkZGVuIHdpdGhpbiBzZ3hfZXBjX2Nncm91cF90 cnlfY2hhcmdlKCkuDQoNCj4gKw0KPiArLyoqDQo+ICsgKiBzZ3hfZXBjX2Nncm91cF91bmNoYXJn ZSgpIC0gaGllcmFyY2hpY2FsbHkgdW5jaGFyZ2UgRVBDIHBhZ2VzDQo+ICsgKiBAZXBjX2NnOgl0 aGUgY2hhcmdlZCBlcGMgY2dyb3VwDQo+ICsgKi8NCj4gK3ZvaWQgc2d4X2VwY19jZ3JvdXBfdW5j aGFyZ2Uoc3RydWN0IHNneF9lcGNfY2dyb3VwICplcGNfY2cpDQo+ICt7DQo+ICsJaWYgKHNneF9l cGNfY2dyb3VwX2Rpc2FibGVkKCkpDQo+ICsJCXJldHVybjsNCg0KSWYgd2l0aCBhYm92ZSBjaGFu Z2UsIGNoZWNrICFlcGNfY2cgaW5zdGVhZC4NCg0KPiArDQo+ICsJbWlzY19jZ191bmNoYXJnZShN SVNDX0NHX1JFU19TR1hfRVBDLCBlcGNfY2ctPmNnLCBQQUdFX1NJWkUpOw0KPiArDQo+ICsJLyog UmVmIGdvdCBmcm9tIHNneF9lcGNfY2dyb3VwX3RyeV9jaGFyZ2UoKSAqLw0KPiArCXB1dF9taXNj X2NnKGVwY19jZy0+Y2cpOw0KPiArfQ0KPiAJDQo+ICsNCj4gK3N0YXRpYyB2b2lkIHNneF9lcGNf Y2dyb3VwX2ZyZWUoc3RydWN0IG1pc2NfY2cgKmNnKQ0KPiArew0KPiArCXN0cnVjdCBzZ3hfZXBj X2Nncm91cCAqZXBjX2NnOw0KPiArDQo+ICsJZXBjX2NnID0gc2d4X2VwY19jZ3JvdXBfZnJvbV9t aXNjX2NnKGNnKTsNCj4gKwlpZiAoIWVwY19jZykNCj4gKwkJcmV0dXJuOw0KPiArDQo+ICsJa2Zy ZWUoZXBjX2NnKTsNCj4gK30NCj4gKw0KPiArc3RhdGljIGludCBzZ3hfZXBjX2Nncm91cF9hbGxv YyhzdHJ1Y3QgbWlzY19jZyAqY2cpOw0KPiArDQo+ICtjb25zdCBzdHJ1Y3QgbWlzY19vcGVyYXRp b25zX3N0cnVjdCBzZ3hfZXBjX2Nncm91cF9vcHMgPSB7DQo+ICsJLmFsbG9jID0gc2d4X2VwY19j Z3JvdXBfYWxsb2MsDQo+ICsJLmZyZWUgPSBzZ3hfZXBjX2Nncm91cF9mcmVlLA0KPiArfTsNCj4g Kw0KPiArc3RhdGljIGludCBzZ3hfZXBjX2Nncm91cF9hbGxvYyhzdHJ1Y3QgbWlzY19jZyAqY2cp DQo+ICt7DQo+ICsJc3RydWN0IHNneF9lcGNfY2dyb3VwICplcGNfY2c7DQo+ICsNCj4gKwllcGNf Y2cgPSBremFsbG9jKHNpemVvZigqZXBjX2NnKSwgR0ZQX0tFUk5FTCk7DQo+ICsJaWYgKCFlcGNf Y2cpDQo+ICsJCXJldHVybiAtRU5PTUVNOw0KPiArDQo+ICsJY2ctPnJlc1tNSVNDX0NHX1JFU19T R1hfRVBDXS5taXNjX29wcyA9ICZzZ3hfZXBjX2Nncm91cF9vcHM7DQo+ICsJY2ctPnJlc1tNSVND X0NHX1JFU19TR1hfRVBDXS5wcml2ID0gZXBjX2NnOw0KPiArCWVwY19jZy0+Y2cgPSBjZzsNCj4g KwlyZXR1cm4gMDsNCj4gK30NCj4gKw0KPiArc3RhdGljIGludCBfX2luaXQgc2d4X2VwY19jZ3Jv dXBfaW5pdCh2b2lkKQ0KPiArew0KPiArCXN0cnVjdCBtaXNjX2NnICpjZzsNCj4gKw0KPiArCWlm ICghYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX1NHWCkpDQo+ICsJCXJldHVybiAwOw0KPiArDQo+ ICsJY2cgPSBtaXNjX2NnX3Jvb3QoKTsNCj4gKwlCVUdfT04oIWNnKTsNCg0KQlVHX09OKCkgd2ls bCBjYXRjaCBzb21lIGV5ZWJhbGwsIGJ1dCBpdCBjYW5ub3QgYmUgTlVMTCBpbiBwcmFjdGljZSBJ SVVDLg0KDQpJIGFtIG5vdCBzdXJlIHdoZXRoZXIgeW91IGNhbiBqdXN0IG1ha2UgbWlzYyBAcm9v dF9jZyB2aXNpYmxlIChpbnN0ZWFkIG9mIGhhdmluZw0KdGhlIG1pc2NfY2dfcm9vdCgpIGhlbHBl cikgYW5kIGRpcmVjdGx5IHVzZSBAcm9vdF9jZyBoZXJlIHRvIGF2b2lkIHVzaW5nIHRoZQ0KQlVH KCkuICBObyBvcGluaW9uIGhlcmUuDQoNCj4gKw0KPiArCXJldHVybiBzZ3hfZXBjX2Nncm91cF9h bGxvYyhjZyk7DQoNCkFzIG1lbnRpb25lZCBhYm92ZSB0aGUgbWVtb3J5IGFsbG9jYXRpb24gY2Fu IGZhaWwsIGluIHdoaWNoIGNhc2UgRVBDIGNncm91cCBpcw0KZWZmZWN0aXZlbHkgZGlzYWJsZWQg SUlVQz8NCg0KT25lIHdheSBpcyB0byBtYW51YWxseSBjaGVjayB3aGV0aGVyIHJvb3QgRVBDIGNn cm91cCBpcyB2YWxpZCBpbg0Kc2d4X2VwY19jZ3JvdXBfZGlzYWJsZWQoKS4gIEFsdGVybmF0aXZl bHksIHlvdSBjYW4gaGF2ZSBhIHN0YXRpYyByb290IEVQQyBjZ3JvdXANCmhlcmU6DQoNCglzdGF0 aWMgc3RydWN0IHNneF9lcGNfY2dyb3VwIHJvb3RfZXBjX2NnOw0KDQpJbiB0aGlzIHdheSB5b3Ug Y2FuIGhhdmUgYSBzZ3hfZXBjX2Nncm91cF9pbml0KCZlcGNfY2cpLCBhbmQgY2FsbCBpdCBmcm9t DQpzZ3hfZXBjX2Nncm91cF9hbGxvYygpLg0KDQo+ICt9DQo+ICtzdWJzeXNfaW5pdGNhbGwoc2d4 X2VwY19jZ3JvdXBfaW5pdCk7DQo+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9rZXJuZWwvY3B1L3Nn eC9lcGNfY2dyb3VwLmggYi9hcmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9lcGNfY2dyb3VwLmgNCj4g bmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAwLi5jM2FiZmU4MmJlMTUN Cj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9hcmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9lcGNfY2dy b3VwLmgNCj4gQEAgLTAsMCArMSwzNiBAQA0KPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6 IEdQTC0yLjAgKi8NCj4gKy8qIENvcHlyaWdodChjKSAyMDIyIEludGVsIENvcnBvcmF0aW9uLiAq Lw0KPiArI2lmbmRlZiBfSU5URUxfU0dYX0VQQ19DR1JPVVBfSF8NCj4gKyNkZWZpbmUgX0lOVEVM X1NHWF9FUENfQ0dST1VQX0hfDQo+ICsNCj4gKyNpbmNsdWRlIDxhc20vc2d4Lmg+DQo+ICsjaW5j bHVkZSA8bGludXgvY2dyb3VwLmg+DQo+ICsjaW5jbHVkZSA8bGludXgvbGlzdC5oPg0KPiArI2lu Y2x1ZGUgPGxpbnV4L21pc2NfY2dyb3VwLmg+DQo+ICsjaW5jbHVkZSA8bGludXgvcGFnZV9jb3Vu dGVyLmg+DQo+ICsjaW5jbHVkZSA8bGludXgvd29ya3F1ZXVlLmg+DQo+ICsNCj4gKyNpbmNsdWRl ICJzZ3guaCINCj4gKw0KPiArI2lmbmRlZiBDT05GSUdfQ0dST1VQX1NHWF9FUEMNCj4gKyNkZWZp bmUgTUlTQ19DR19SRVNfU0dYX0VQQyBNSVNDX0NHX1JFU19UWVBFUw0KDQpEbyB5b3UgbmVlZCB0 aGlzIG1hY3JvPw0KDQo+ICtzdHJ1Y3Qgc2d4X2VwY19jZ3JvdXA7DQo+ICsNCj4gK3N0YXRpYyBp bmxpbmUgc3RydWN0IHNneF9lcGNfY2dyb3VwICpzZ3hfZXBjX2Nncm91cF90cnlfY2hhcmdlKHZv aWQpDQo+ICt7DQo+ICsJcmV0dXJuIE5VTEw7DQo+ICt9DQo+ICsNCj4gK3N0YXRpYyBpbmxpbmUg dm9pZCBzZ3hfZXBjX2Nncm91cF91bmNoYXJnZShzdHJ1Y3Qgc2d4X2VwY19jZ3JvdXAgKmVwY19j ZykgeyB9DQo+ICsjZWxzZQ0KPiArc3RydWN0IHNneF9lcGNfY2dyb3VwIHsNCj4gKwlzdHJ1Y3Qg bWlzY19jZyAqY2c7DQo+ICt9Ow0KPiArDQo+ICtzdHJ1Y3Qgc2d4X2VwY19jZ3JvdXAgKnNneF9l cGNfY2dyb3VwX3RyeV9jaGFyZ2Uodm9pZCk7DQo+ICt2b2lkIHNneF9lcGNfY2dyb3VwX3VuY2hh cmdlKHN0cnVjdCBzZ3hfZXBjX2Nncm91cCAqZXBjX2NnKTsNCj4gK2Jvb2wgc2d4X2VwY19jZ3Jv dXBfbHJ1X2VtcHR5KHN0cnVjdCBtaXNjX2NnICpyb290KTsNCg0KV2h5IGRvIHlvdSBuZWVkIHNn eF9lcGNfY2dyb3VwX2xydV9lbXB0eSgpIGhlcmU/IA0KDQo+ICsNCj4gKyNlbmRpZg0KPiArDQo+ ICsjZW5kaWYgLyogX0lOVEVMX1NHWF9FUENfQ0dST1VQX0hfICovDQo+IGRpZmYgLS1naXQgYS9h cmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9tYWluLmMgYi9hcmNoL3g4Ni9rZXJuZWwvY3B1L3NneC9t YWluLmMNCj4gaW5kZXggMTY2NjkyZjJkNTAxLi4wNzYwNmYzOTE1NDAgMTAwNjQ0DQo+IC0tLSBh L2FyY2gveDg2L2tlcm5lbC9jcHUvc2d4L21haW4uYw0KPiArKysgYi9hcmNoL3g4Ni9rZXJuZWwv Y3B1L3NneC9tYWluLmMNCj4gQEAgLTYsNiArNiw3IEBADQo+ICAjaW5jbHVkZSA8bGludXgvaGln aG1lbS5oPg0KPiAgI2luY2x1ZGUgPGxpbnV4L2t0aHJlYWQuaD4NCj4gICNpbmNsdWRlIDxsaW51 eC9taXNjZGV2aWNlLmg+DQo+ICsjaW5jbHVkZSA8bGludXgvbWlzY19jZ3JvdXAuaD4NCj4gICNp bmNsdWRlIDxsaW51eC9ub2RlLmg+DQo+ICAjaW5jbHVkZSA8bGludXgvcGFnZW1hcC5oPg0KPiAg I2luY2x1ZGUgPGxpbnV4L3JhdGVsaW1pdC5oPg0KPiBAQCAtMTcsNiArMTgsNyBAQA0KPiAgI2lu Y2x1ZGUgImRyaXZlci5oIg0KPiAgI2luY2x1ZGUgImVuY2wuaCINCj4gICNpbmNsdWRlICJlbmNs cy5oIg0KPiArI2luY2x1ZGUgImVwY19jZ3JvdXAuaCINCj4gIA0KPiAgc3RydWN0IHNneF9lcGNf c2VjdGlvbiBzZ3hfZXBjX3NlY3Rpb25zW1NHWF9NQVhfRVBDX1NFQ1RJT05TXTsNCj4gIHN0YXRp YyBpbnQgc2d4X25yX2VwY19zZWN0aW9uczsNCj4gQEAgLTU1OSw2ICs1NjEsMTEgQEAgaW50IHNn eF91bm1hcmtfcGFnZV9yZWNsYWltYWJsZShzdHJ1Y3Qgc2d4X2VwY19wYWdlICpwYWdlKQ0KPiAg c3RydWN0IHNneF9lcGNfcGFnZSAqc2d4X2FsbG9jX2VwY19wYWdlKHZvaWQgKm93bmVyLCBib29s IHJlY2xhaW0pDQo+ICB7DQo+ICAJc3RydWN0IHNneF9lcGNfcGFnZSAqcGFnZTsNCj4gKwlzdHJ1 Y3Qgc2d4X2VwY19jZ3JvdXAgKmVwY19jZzsNCj4gKw0KPiArCWVwY19jZyA9IHNneF9lcGNfY2dy b3VwX3RyeV9jaGFyZ2UoKTsNCj4gKwlpZiAoSVNfRVJSKGVwY19jZykpDQo+ICsJCXJldHVybiBF UlJfQ0FTVChlcGNfY2cpOw0KPiAgDQo+ICAJZm9yICggOyA7ICkgew0KPiAgCQlwYWdlID0gX19z Z3hfYWxsb2NfZXBjX3BhZ2UoKTsNCj4gQEAgLTU4MCwxMCArNTg3LDIxIEBAIHN0cnVjdCBzZ3hf ZXBjX3BhZ2UgKnNneF9hbGxvY19lcGNfcGFnZSh2b2lkICpvd25lciwgYm9vbCByZWNsYWltKQ0K PiAgCQkJYnJlYWs7DQo+ICAJCX0NCj4gIA0KPiArCQkvKg0KPiArCQkgKiBOZWVkIHRvIGRvIGEg Z2xvYmFsIHJlY2xhbWF0aW9uIGlmIGNncm91cCB3YXMgbm90IGZ1bGwgYnV0IGZyZWUNCj4gKwkJ ICogcGh5c2ljYWwgcGFnZXMgcnVuIG91dCwgY2F1c2luZyBfX3NneF9hbGxvY19lcGNfcGFnZSgp IHRvIGZhaWwuDQo+ICsJCSAqLw0KPiAgCQlzZ3hfcmVjbGFpbV9wYWdlcygpOw0KDQpXaGF0J3Mg dGhlIGZpbmFsIGJlaGF2aW91cj8gIElJVUMgaXQgc2hvdWxkIGJlIHJlY2xhaW1pbmcgZnJvbSB0 aGUgKmN1cnJlbnQqIEVQQw0KY2dyb3VwPyAgSWYgc28gc2hvdWxkbid0IHdlIGp1c3QgcGFzcyB0 aGUgQGVwY19jZyB0byBpdCBoZXJlPw0KDQpJIHRoaW5rIHdlIGNhbiBtYWtlIHRoaXMgcGF0Y2gg YXMgInN0cnVjdHVyZSIgcGF0Y2ggdy9vIGFjdHVhbGx5IGhhdmluZyBFUEMNCmNncm91cCBlbmFi bGVkLCBpLmUuLCBzZ3hfZ2V0X2N1cnJlbnRfZXBjX2NnKCkgYWx3YXlzIHJldHVybiBOVUxMLg0K DQpBbmQgd2UgY2FuIGhhdmUgb25lIHBhdGNoIHRvIGNoYW5nZSBzZ3hfcmVjbGFpbV9wYWdlcygp IHRvIHRha2UgdGhlICdzdHJ1Y3QNCnNneF9lcGNfbHJ1X2xpc3QgKicgYXMgYXJndW1lbnQ6DQoN Cgl2b2lkIHNneF9yZWNsYWltX3BhZ2VzX2xydShzdHJ1Y3Qgc2d4X2VwY19scnVfbGlzdCAqIGxy dSkNCgl7DQoJCS4uLg0KCX0NCg0KVGhlbiBoZXJlIHdlIGNhbiBoYXZlIHNvbWV0aGluZyBsaWtl Og0KDQoJdm9pZCBzZ3hfcmVjbGFpbV9wYWdlcyhzdHJ1Y3Qgc2d4X2VwY19jZyAqZXBjX2NnKQ0K CXsNCgkJc3RydWN0IHNneF9lcGNfbHJ1X2xpc3QgKmxydSA9wqANCgkJCWVwY19jZyA/ICZlcGNf Y2ctPmxydSA6ICZzZ3hfZ2xvYmFsX2xydTsNCg0KCQlzZ3hfcmVjbGFpbV9wYWdlc19scnUobHJ1 KTsNCgl9DQoNCk1ha2VzIHNlbnNlPw0KDQo+ICAJCWNvbmRfcmVzY2hlZCgpOw0KPiAgCX0NCj4g IA0KPiArCWlmICghSVNfRVJSKHBhZ2UpKSB7DQo+ICsJCVdBUk5fT05fT05DRShwYWdlLT5lcGNf Y2cpOw0KPiArCQlwYWdlLT5lcGNfY2cgPSBlcGNfY2c7DQo+ICsJfSBlbHNlIHsNCj4gKwkJc2d4 X2VwY19jZ3JvdXBfdW5jaGFyZ2UoZXBjX2NnKTsNCj4gKwl9DQo+ICsNCj4gIAlpZiAoc2d4X3No b3VsZF9yZWNsYWltKFNHWF9OUl9MT1dfUEFHRVMpKQ0KPiAgCQl3YWtlX3VwKCZrc2d4ZF93YWl0 cSk7DQo+ICANCj4gQEAgLTYwNCw2ICs2MjIsMTEgQEAgdm9pZCBzZ3hfZnJlZV9lcGNfcGFnZShz dHJ1Y3Qgc2d4X2VwY19wYWdlICpwYWdlKQ0KPiAgCXN0cnVjdCBzZ3hfZXBjX3NlY3Rpb24gKnNl Y3Rpb24gPSAmc2d4X2VwY19zZWN0aW9uc1twYWdlLT5zZWN0aW9uXTsNCj4gIAlzdHJ1Y3Qgc2d4 X251bWFfbm9kZSAqbm9kZSA9IHNlY3Rpb24tPm5vZGU7DQo+ICANCj4gKwlpZiAocGFnZS0+ZXBj X2NnKSB7DQo+ICsJCXNneF9lcGNfY2dyb3VwX3VuY2hhcmdlKHBhZ2UtPmVwY19jZyk7DQo+ICsJ CXBhZ2UtPmVwY19jZyA9IE5VTEw7DQo+ICsJfQ0KPiArDQo+ICAJc3Bpbl9sb2NrKCZub2RlLT5s b2NrKTsNCj4gIA0KPiAgCXBhZ2UtPm93bmVyID0gTlVMTDsNCj4gQEAgLTY0Myw2ICs2NjYsNyBA QCBzdGF0aWMgYm9vbCBfX2luaXQgc2d4X3NldHVwX2VwY19zZWN0aW9uKHU2NCBwaHlzX2FkZHIs IHU2NCBzaXplLA0KPiAgCQlzZWN0aW9uLT5wYWdlc1tpXS5mbGFncyA9IDA7DQo+ICAJCXNlY3Rp b24tPnBhZ2VzW2ldLm93bmVyID0gTlVMTDsNCj4gIAkJc2VjdGlvbi0+cGFnZXNbaV0ucG9pc29u ID0gMDsNCj4gKwkJc2VjdGlvbi0+cGFnZXNbaV0uZXBjX2NnID0gTlVMTDsNCj4gIAkJbGlzdF9h ZGRfdGFpbCgmc2VjdGlvbi0+cGFnZXNbaV0ubGlzdCwgJnNneF9kaXJ0eV9wYWdlX2xpc3QpOw0K PiAgCX0NCj4gIA0KPiBAQCAtNzg3LDYgKzgxMSw3IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBhcmNo X3VwZGF0ZV9zeXNmc192aXNpYmlsaXR5KGludCBuaWQpIHt9DQo+ICBzdGF0aWMgYm9vbCBfX2lu aXQgc2d4X3BhZ2VfY2FjaGVfaW5pdCh2b2lkKQ0KPiAgew0KPiAgCXUzMiBlYXgsIGVieCwgZWN4 LCBlZHgsIHR5cGU7DQo+ICsJdTY0IGNhcGFjaXR5ID0gMDsNCj4gIAl1NjQgcGEsIHNpemU7DQo+ ICAJaW50IG5pZDsNCj4gIAlpbnQgaTsNCj4gQEAgLTgzNyw2ICs4NjIsNyBAQCBzdGF0aWMgYm9v bCBfX2luaXQgc2d4X3BhZ2VfY2FjaGVfaW5pdCh2b2lkKQ0KPiAgDQo+ICAJCXNneF9lcGNfc2Vj dGlvbnNbaV0ubm9kZSA9ICAmc2d4X251bWFfbm9kZXNbbmlkXTsNCj4gIAkJc2d4X251bWFfbm9k ZXNbbmlkXS5zaXplICs9IHNpemU7DQo+ICsJCWNhcGFjaXR5ICs9IHNpemU7DQo+ICANCj4gIAkJ c2d4X25yX2VwY19zZWN0aW9ucysrOw0KPiAgCX0NCj4gQEAgLTg0Niw2ICs4NzIsOCBAQCBzdGF0 aWMgYm9vbCBfX2luaXQgc2d4X3BhZ2VfY2FjaGVfaW5pdCh2b2lkKQ0KPiAgCQlyZXR1cm4gZmFs c2U7DQo+ICAJfQ0KPiAgDQo+ICsJbWlzY19jZ19zZXRfY2FwYWNpdHkoTUlTQ19DR19SRVNfU0dY X0VQQywgY2FwYWNpdHkpOw0KPiArDQo+ICAJcmV0dXJuIHRydWU7DQo+ICB9DQoNCkkgd291bGQg c2VwYXJhdGUgc2V0dGluZyB1cCBjYXBhY2l0eSBhcyBhIHNlcGFyYXRlIHBhdGNoLg0KDQo+ICAN Cj4gZGlmZiAtLWdpdCBhL2FyY2gveDg2L2tlcm5lbC9jcHUvc2d4L3NneC5oIGIvYXJjaC94ODYv a2VybmVsL2NwdS9zZ3gvc2d4LmgNCj4gaW5kZXggZDJkYWQyMTI1OWE4Li5iMTc4Njc3NGI4ZDIg MTAwNjQ0DQo+IC0tLSBhL2FyY2gveDg2L2tlcm5lbC9jcHUvc2d4L3NneC5oDQo+ICsrKyBiL2Fy Y2gveDg2L2tlcm5lbC9jcHUvc2d4L3NneC5oDQo+IEBAIC0yOSwxMiArMjksMTUgQEANCj4gIC8q IFBhZ2VzIG9uIGZyZWUgbGlzdCAqLw0KPiAgI2RlZmluZSBTR1hfRVBDX1BBR0VfSVNfRlJFRQkJ QklUKDEpDQo+ICANCj4gK3N0cnVjdCBzZ3hfZXBjX2Nncm91cDsNCj4gKw0KPiAgc3RydWN0IHNn eF9lcGNfcGFnZSB7DQo+ICAJdW5zaWduZWQgaW50IHNlY3Rpb247DQo+ICAJdTE2IGZsYWdzOw0K PiAgCXUxNiBwb2lzb247DQo+ICAJc3RydWN0IHNneF9lbmNsX3BhZ2UgKm93bmVyOw0KPiAgCXN0 cnVjdCBsaXN0X2hlYWQgbGlzdDsNCj4gKwlzdHJ1Y3Qgc2d4X2VwY19jZ3JvdXAgKmVwY19jZzsN Cj4gIH07DQo+IA0KDQpBZGRpbmcgQGVwY19jZyB1bmNvbmRpdGlvbmFsbHkgbWVhbnMgZXZlbiB3 aXRoICFDT05GSUdfQ0dST1VQX1NHWF9FUEMgdGhlIG1lbW9yeQ0KaXMgc3RpbGwgb2NjdXBpZWQu ICBJTUhPIHRoYXQgd291bGQgYnJpbmcgbm9uLXRyaXZpYWwgbWVtb3J5IHdhc3RlIGFzIGl0J3Mg OC0NCmJ5dGVzIGZvciBlYWNoIEVQQyBwYWdlLg0KDQpJZiBpdCdzIG5vdCBnb29kIHRvIGhhdmUg IiNpZmRlZiBDT05GSUdfQ0dST1VQX1NHWF9FUEMiIGluIHRoZSAuYyBmaWxlLCB0aGVuDQpwZXJo YXBzIHdlIGNhbiBoYXZlIHNvbWUgaGVscGVyIGhlcmUsIGUuZy4sDQoNCg0Kc3RhdGljIGlubGlu ZSBzZ3hfZXBjX3BhZ2Vfc2V0X2NnKHN0cnVjdCBzZ3hfZXBjX3BhZ2UgKmVwY19wYWdlLA0KCQkJ CSAgc3RydWN0IHNneF9lcGNfY2dyb3VwICplcGNfY2cpDQp7DQojaWZkZWYgQ09ORklHX0NHUk9V UF9TR1hfRVBDDQoJZXBjX3BhZ2UtPmVwY19jZyA9IGVwY19jZzsNCiNlbmRpZg0KfSANCg0KDQo=