Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp34741924rwd; Sun, 9 Jul 2023 19:35:15 -0700 (PDT) X-Google-Smtp-Source: APBJJlGZhYhBS5bfk4yaZbwlDnei4VXYQqm4Q2QapE3VrEfhbcw78/y1NWaF+LULSob1zAL7C6iU X-Received: by 2002:ac2:5e7b:0:b0:4fb:8948:2b28 with SMTP id a27-20020ac25e7b000000b004fb89482b28mr7761773lfr.63.1688956515628; Sun, 09 Jul 2023 19:35:15 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1688956515; cv=pass; d=google.com; s=arc-20160816; b=mnPrZc/OY/90svB7N50eOGosAd0BVjs1TeFSTyXoVAvUuh5iiOYtcnfQKvfieoZzgu xjuqWcv+1x2/mZnqs5Z0rg+f7iyaltwbYsUdcEk8c+Z2+XDOvA9v5i/hGDUTK5XucLiB jpkPqLBLQ/5ABTmiOpu8e3Ioetch5Y3+p23/BzAlrth1HcP0TlRZFqryCIqddltiA/M0 l3UcXFJBmd31mk48yVLfZZho5nxPPv0rKU138lRrUY5kbwvy0tF2tBEHT6P7cotOX83C vuDytvqtjwB86rI7N8sqKPHyjniROKvKmr7V9FGvD8ABitMioMTOKaK8NIgbDN99CxaN RD1g== 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=fKlQgMas55dGZoQheHEJKxNRMso0dkO5bjNveFbrOp0=; fh=JHRNocf7EhcG2QQD0JaM56qtgtM7WHfrSzp//HV6FvU=; b=tvC7C1Kfj4tsjNRA0QdHXNn+EYdjH8AC/gCg/RJlEeh5SMjN/zuVPEjyvivP5H3JnT 0AVePbxYCllhlvNenrAObkk0NS3KswZWAxiEqBsm9uQ7PpF3vBJK0dTEX883ftMg+HIt mbaFeKRUNRcmYFs6H6LhkX4G2X14HJyqKUtyZoegUvMchqe0zKvJ9+8a4tk4m8mecY+X 2JhbBtkrDHutYNyZ/510Ah7fyt/sVQvYjZJ3g+ncz2uyhqFtx/01k49qbxr1NFKRgS4p lFqRF8os0uSFgTSWbtsB6TIuyVBMNjSIb0ekHDzeNw2BxnYduP8aIFnLNYYSNXCMShjm Wk2g== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ld08aiod; 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-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id jt5-20020a170906dfc500b00991f1a1c99csi7087025ejc.360.2023.07.09.19.34.56; Sun, 09 Jul 2023 19:35:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ld08aiod; 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-wireless-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229662AbjGJBxU (ORCPT + 60 others); Sun, 9 Jul 2023 21:53:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36648 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229517AbjGJBxT (ORCPT ); Sun, 9 Jul 2023 21:53:19 -0400 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 567B5EE for ; Sun, 9 Jul 2023 18:53:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1688953997; x=1720489997; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=fKlQgMas55dGZoQheHEJKxNRMso0dkO5bjNveFbrOp0=; b=ld08aiod5RN8PPvQOkoNOWgEEiXkYONVW8gdhFYxr1NOAvQrAwsuPTY5 8BsR/2TMs2hQqUqmrmN8pYooN9NOIULvGmJeTPh5Hq4SPmhuTd26pRYDJ 3cnSNAJbPHewe45IymnvuzPsON94ZscjEG5RHzc+iIMPwkN1v2tTa2HyB ZxBxOSK/zyo3kvoXrbuEJ7ffisunTF+LKxcL7bgrDzeedWDMdJRps0Ccc 0zyn4P+a2aFUDxyuKq2y6DdLVpXFYcR2qCAE5UMT1k9LQt3z8VmcFtAK8 8IYrLKYBvjFynG/j48yvE6IswdPMtkcDVaXh8gCpBdsVAGF+sWcS7Bu+1 A==; X-IronPort-AV: E=McAfee;i="6600,9927,10766"; a="430311518" X-IronPort-AV: E=Sophos;i="6.01,193,1684825200"; d="scan'208";a="430311518" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jul 2023 18:53:16 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10766"; a="834096219" X-IronPort-AV: E=Sophos;i="6.01,193,1684825200"; d="scan'208";a="834096219" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga002.fm.intel.com with ESMTP; 09 Jul 2023 18:53:16 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Sun, 9 Jul 2023 18:53:16 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Sun, 9 Jul 2023 18:53:15 -0700 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.27 via Frontend Transport; Sun, 9 Jul 2023 18:53:15 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.44) 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.27; Sun, 9 Jul 2023 18:53:15 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SYMefYXEuSWVOmUYbFU5pi61tYc+9FVI5eTqIlfJWl+uRXtyP6yyFGmMHG6fsgcD6wm1Qv0M2M4NUu+27NhQlNG2wtC80tT8qyCBTGKb1y4WBAFngFRwTeqvpN7p9FaBS+yKjsg1sz8aauZGlLImUHMkYraPFGBz/Qu2IeMZaINyYtozUVaYbwoiSAMcAh5+kh7hGhB4HmAHh/MztwBvJupGbR1Uw75oeTvH5vbrwvgemrkTosYB3bjcfJ5VB4Kt22y7RivFDPhRqu7JMiC5wIbOxJbrX/Eb7oemouUC6IxAGfaUQv3iQ7nMyTgaDh+TFOzXuAOcjvZEHXVWiyksSg== 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=fKlQgMas55dGZoQheHEJKxNRMso0dkO5bjNveFbrOp0=; b=O4i2nlAl8Qqg3W7bzfn7v1tASU5fUuMiOzJilUtqdAbnihNv4nJ47NxeAqBMdj84asOmcA5edOUSsWzS//7zoRRIIBibgeRua50XftAsnfIjdcCwi8EUUeLHoPE2IdV+wnfA2ZHc/ZPXxqydGBz7rcY7ITCnPRtU57tWrMOEg6Lang//LlqZjrTmRKEmVrr9BFm8loOi6ujDHL3F4uGFHKk2mPTzf8JBcwfO4mMJ25Bd5mfMAjkNnSy7Gf4l+gEi4lQPY8W9jB5zC5wFMZO7I0/OvOBC5Zva3jJmfMkVzkbsuTrcEEk4PNEM1RQIotvRxei3DRcOH5FSSNfCfS323g== 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 PH7PR11MB6605.namprd11.prod.outlook.com (2603:10b6:510:1b0::16) by MW5PR11MB5812.namprd11.prod.outlook.com (2603:10b6:303:193::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.30; Mon, 10 Jul 2023 01:53:13 +0000 Received: from PH7PR11MB6605.namprd11.prod.outlook.com ([fe80::f6a8:daa0:7575:801d]) by PH7PR11MB6605.namprd11.prod.outlook.com ([fe80::f6a8:daa0:7575:801d%7]) with mapi id 15.20.6565.028; Mon, 10 Jul 2023 01:53:12 +0000 From: "Zhang, Rui" To: "linux-wireless@vger.kernel.org" , "johannes@sipsolutions.net" CC: "jeff.chua.linux@gmail.com" , "Berg, Johannes" Subject: Re: [RFC PATCH] wifi: iwlwifi: remove 'use_tfh' config to fix crash Thread-Topic: [RFC PATCH] wifi: iwlwifi: remove 'use_tfh' config to fix crash Thread-Index: AQHZspEg4qQbV0ISFk+au7/7CJYoBq+yPWuA Date: Mon, 10 Jul 2023 01:53:12 +0000 Message-ID: <19f7bc7f43922c257238127d5fe84ea01cf2be79.camel@intel.com> References: <20230709181323.12085-2-johannes@sipsolutions.net> In-Reply-To: <20230709181323.12085-2-johannes@sipsolutions.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.44.4-0ubuntu1 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: PH7PR11MB6605:EE_|MW5PR11MB5812:EE_ x-ms-office365-filtering-correlation-id: ffaa6d14-b408-4412-1061-08db80e86b1d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qrUPVhyVRq4Xvp4FjKqjPvM3aDhdeLW+qqZSrbNmbfyazTuvKkb39Vt06sxf5gBr10VUxoH70zbxAhQRZVI19hHXfM4H0WGQAST8ZjW+V7k3bPFGQarUtyVTWW3zwlw2ADWF8dIedHGUco2C7v0WbybWWgcjjVORrj/XRMjLZA0rSoZoPWb1yPW9Gcs5FeHq9Hs/pQtgHcmJNVdn4cmfWOziecQtHxs4Qrkht5LbN/6Al0bKzTYZtVMasQq0f34Qv4JOwf+zXMS6D99d47GeYUezanmRSQXSEm9GzrpksJwkUJYjjvHq7hUYLrZnzvQ3bMyTddPMVfUwp+dyP7jvXLYQUJwM35pUrdaHOWvkTug94fiavgohzfz2j4ccDrD8V5L6e9dJBYUAvtJ2ffBmiEi6qC7p8i8C95t7AIii3pVa0ZqpDGFMQoV2SsSfL5nSDw0HiKndssK7gYdbR97m4jAoEk51NNRNbpRWM9leNAczXeRcQXGl0UfXCLxFCgHTCm8zw8u+Zi8K3Kvikdq5zUoFiBoU/Xo+J1IQUd7C/jgN3azU+B9U302jF4iL8X8N28xhCca5MCjvZZAO/dYOpj/lzygs0TBWjgRCZ4Z1hgKdYvL/0qxsT/KUR18pyQ5B7WQ0+av9MH/k4SnL7c+6AQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH7PR11MB6605.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(396003)(366004)(39860400002)(136003)(451199021)(6486002)(478600001)(71200400001)(91956017)(76116006)(110136005)(54906003)(6506007)(26005)(186003)(6512007)(966005)(107886003)(66946007)(30864003)(2906002)(41300700001)(316002)(66556008)(66476007)(66446008)(64756008)(4326008)(5660300002)(8676002)(8936002)(38100700002)(122000001)(82960400001)(86362001)(36756003)(38070700005)(2616005)(83380400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Z09GUE9LbUFQaTNybXBuWHorNzhLZ3BURzk1SFFYVktHMVRUT3Jxc1c5SFlN?= =?utf-8?B?MXJMUEI4b1U2VFUvRllENmcrSHA1aHE4L1VRaXkzZ2RQZG92VzR6VmF2TXI1?= =?utf-8?B?SjYwZUFVYWlMZ1o3QTkrSzJ0WTNQNzhVL0x5ai82VE1zUnhQc3lYNW5PZGpS?= =?utf-8?B?eUMwMUtGdkVDT21xdU5mUyswa3VJVTFGaElRdDMxVFB3MC9HRkJ0K1ZHN0ky?= =?utf-8?B?MVRmNG4vb244dzdvbHMweGl0UHAyT3E2c0JHWWErVk5Ldm1lei92em43MVEr?= =?utf-8?B?a3hUanA3L1R6WjhyN3RBQ3BVZjhvcWNoRTlKY2pjenhNL2F2R2tTN1JqN3NG?= =?utf-8?B?OWZVLzZMSVhscWJobTJJUGwrbHlqaFd3ZUNlbkl5S21HaDFjQ0Z4UEh1akhR?= =?utf-8?B?VWY0NC8wUWNXbnY5VHdTZ3BiL3lsRWphR2NLYmNpKy9nM2x3UUNTcVMvOFJp?= =?utf-8?B?cDliYTFSTnMrNzN5eHRrWjJoUWhtM3N1S3I5MjFpMFU5TGY5VGVTMkZtbnFO?= =?utf-8?B?UDBNTTBmcXEzdzFCZUc1NG9ya2FJb09VY3pxZmUvTHBGMWF0blUxbmFTL3U5?= =?utf-8?B?dXducGNpQnFMQVUvOW5mNHU4bkpkR2dyVXZLNEtpQzBJeDJMVUJkVlNudk44?= =?utf-8?B?Mlg5MHdvME5ZQmMrNStEemJ5MnBiTlZDVHRTb1VtQy9xalV5NkVjVDBrTTAz?= =?utf-8?B?WThMMFViVnd0RDNqbTdJMUJhN1RaOEp0bnRiUWtHc2VPSjZIT0Raam9iaUVw?= =?utf-8?B?Q3RMSnlNYlc1R0N0d0lnZHdNck04RVlhcjdVWTdUNUVidE9qS1JRaklIWWpi?= =?utf-8?B?K1U0aVVRWnY0aW40RFZjdkl0aU5idzRoTkpxb2JhVzJrRWpIL2RQVXBoZE1k?= =?utf-8?B?MEUwZm1NVnpmalBzSjQ2azZJdmxEaEJ6OHZFQUhYMnNkNDJEZGJWeHBtL01H?= =?utf-8?B?K3dlT0xrTEJOS21Pc3hUL1NOVXFnQjJkMlRPVTBvMis5MEdFUEFwcVpaTm9N?= =?utf-8?B?VnZjSmRzYkVMRStWckRLK0VXWU14VkFqQVFRb1g5UlUzRldQM3B4L2gvSS9Z?= =?utf-8?B?S0dzcW9iY0NkOVdwM01FZkJxdHRXanZlT1V5Z1UydW5RaVBlaFdISlVYMkg3?= =?utf-8?B?UnZ1dENDZk9IbFFpUWc0bERBT0xsTHhCN05NOXNYb0xsdzJ6c3hLclNWaXBI?= =?utf-8?B?NUwvQXcyR0M4VGMwR2ZOS1BUbm5FVmpVd1U3bERhNE5aN29mNHZxK2JMNVZO?= =?utf-8?B?ZnBVM3Y0Z1F2T213N0JPZjMvN2t6UE9SZ2psRXVXNVZrSE1QOGgxb1Q0Mmxj?= =?utf-8?B?TEJmWGFDTCtLaXBYNjNVV1hPS3ZCeEZUaDF4ZC9ML1ZSSTFGbU91ZGJmWGI0?= =?utf-8?B?ZkFwQmFqZU5kSnN1RDc4WEFsRjZFQUpXYVExQm1vd3ppK1kvQVRDbXZGb2Fo?= =?utf-8?B?TmRaWHoyS0tWS1lRbHU0bXY4SVFVY0VLVXZocHpLOUN5c04zWGh6LzU3Yzgz?= =?utf-8?B?ZllGNVBtUUV5OUM5NmhMRThianQ3RU1lbzlFcW52eHEyMWtkSGt4aGJJUGhy?= =?utf-8?B?VVVCbklEWlIyTG4yZ1AxQ1lHQ2tvWFdhNFg2L1lQb0o5ZldXeForcVY1ZUVX?= =?utf-8?B?YStjemxWSjdaRENOMnc0a2pINVpRc2dIUVNXM1UyZGE0U3NuM2xFR1JHQnVX?= =?utf-8?B?NmpwdTJvdC91KysyaUZjdU0zMXc2NHFRUXA1b3Vwb3FPZk5KdjdVRWhGRVF3?= =?utf-8?B?YThBcWtSdCtvU3BkbExSVGRudHRZTHdyTm5QTjhnSVBhYWREc1phZmZ3VitX?= =?utf-8?B?OERPZHp6Yjc4VXN1ZUsxZlE1Wk1Qc0FKL3JnTkdCOEl6Y1FOWlhLYmhhdGNz?= =?utf-8?B?M2hKUWJ3U0tFOVZ1TkNKV3dMbEEvL3lqdjhURFZBVS8rRjNOZm1BS0k3RjNU?= =?utf-8?B?NUk5V202QVU0MCtDMDBHdEJCZmptZXo1ZGdUWVdzVHdHd24yMFl6WkJ0YWpE?= =?utf-8?B?a2xWSHdFMmF2TW9kMGVBZ21tdmxWMllGWGdwa3E3b2xyQzBWREtaK0MrbXpw?= =?utf-8?B?N0hSN2t5cnBSdmV2TjV3N0MwbkovR2xIOXRzKzBOK2o3VDQzaThDNlV3NXI5?= =?utf-8?Q?FltW4aKu2abPfjZ+LB3OCI0DZ?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH7PR11MB6605.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ffaa6d14-b408-4412-1061-08db80e86b1d X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jul 2023 01:53:12.0653 (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: AQlsJ6CImdhzkNcIN3WQsifiOcJRoSCSGm45YhixyMO6yCfd1UOqCWmvcCTt7YHt3arHu1WqNlTPFA8WSMsDKQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR11MB5812 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org T24gU3VuLCAyMDIzLTA3LTA5IGF0IDIwOjEzICswMjAwLCBKb2hhbm5lcyBCZXJnIHdyb3RlOgo+ IEZyb206IEpvaGFubmVzIEJlcmcgPGpvaGFubmVzLmJlcmdAaW50ZWwuY29tPgo+IAo+IFRoaXMg aXMgZXF1aXZhbGVudCB0byAnZ2VuMicsIGFuZCBpdCdzIGNvbmZ1c2luZyB0byBoYXZlIHR3bwo+ IG9mIHRoZSBzYW1lIGNvbmZpZ3MuIFRoZSBzcGxpdCBjb25maWcgcGF0Y2ggYWN0dWFsbHkgaGFk IGJlZW4KPiBvcmlnaW5hbGx5IGRldmVsb3BlZCBhZnRlciB0aGlzLCBhbmQgZGlkbid0IGFkZCB0 aGUgdXNlX3RmaAo+IGluIHRoZSBuZXcgY29uZmlncyBiZWNhdXNlIHRoZXkgd2VyZSBjb3BpZWQg dG8gdGhlIG5ldyBmaWxlcwo+IGFmdGVyIC4uLgo+IAo+IFRoZXJlJ3MgY2xlYXJseSBzdGlsbCBh biB1bndpbmQgZXJyb3IgaW4gaXdsX3R4cV9nZW4yX2luaXQoKQo+IHNpbmNlIGl0IGNyYXNoZXMg aWYgc29tZXRoaW5nIGZhaWxzIHRoZXJlLCBidXQgdGhlIHJlYXNvbiBpdAo+IGZhaWxzIGluIHRo ZSBmaXJzdCBwbGFjZSBpcyBkdWUgdG8gdGhlIGdlbjIvdXNlX3RmaCBjb25mdXNpb24uCj4gCj4g UmVwb3J0ZWQtYnk6IEplZmYgQ2h1YSA8amVmZi5jaHVhLmxpbnV4QGdtYWlsLmNvbT4KPiBSZXBv cnRlZC1ieTogIlpoYW5nLCBSdWkiIDxydWkuemhhbmdAaW50ZWwuY29tPgo+IExpbms6IGh0dHBz Oi8vYnVnemlsbGEua2VybmVsLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3NjIyCj4gTGluazoKPiBo dHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvOTI3NGQ5YmQzZDA4MGE0NTc2NDlmZjVhZGRjYzE3 MjZmMDhlZjViMi5jYW1lbEB4cnkxMTEuc2l0ZS8KPiBMaW5rOgo+IGh0dHBzOi8vbG9yZS5rZXJu ZWwub3JnL2FsbC9DQUFKd19adWc2VkNTNVpxVFdhRlNyOXNkODVrJTNEdHlQbTlERUUlMkJtViUz REFLb0VDWk0lMkJzUUBtYWlsLmdtYWlsLmNvbS8KPiBGaXhlczogMTk4OThjZTljZjhhICgid2lm aTogaXdsd2lmaTogc3BsaXQgMjIwMDAuYyBpbnRvIG11bHRpcGxlCj4gZmlsZXMiKQo+IFNpZ25l ZC1vZmYtYnk6IEpvaGFubmVzIEJlcmcgPGpvaGFubmVzLmJlcmdAaW50ZWwuY29tPgoKSGksIEpv aGFubmVzLAoKVGhhbmtzIGZvciB0aGUgcGF0Y2guIEl0IGZpeGVzIHRoZSBwcm9ibGVtIG9uIG15 IHNpZGUuCgpUZXN0ZWQtYnk6IFpoYW5nIFJ1aSA8cnVpLnpoYW5nQGludGVsLmNvbT4KCnRoYW5r cywKcnVpCgo+IC0tLQo+IMKgZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9jZmcv MjIwMDAuY8KgIHzCoCA1IC0tLS0tCj4gwqBkcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3 aWZpL2l3bC1jb25maWcuaCB8wqAgMiAtLQo+IMKgZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwv aXdsd2lmaS9pd2wtZmguaMKgwqDCoMKgIHzCoCA0ICsrLS0KPiDCoGRyaXZlcnMvbmV0L3dpcmVs ZXNzL2ludGVsL2l3bHdpZmkvaXdsLXRyYW5zLmPCoCB8wqAgNiArKystLS0KPiDCoGRyaXZlcnMv bmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvbXZtL212bS5owqDCoMKgIHzCoCAyICstCj4gwqBk cml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL3BjaWUvdHJhbnMuYyB8wqAgNCArKy0t Cj4gwqBkcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL3BjaWUvdHguY8KgwqDCoCB8 wqAgMiArLQo+IMKgZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9xdWV1ZS90eC5j wqDCoCB8IDEwICsrKysrLS0tLS0KPiDCoGRyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdp ZmkvcXVldWUvdHguaMKgwqAgfMKgIDggKysrKy0tLS0KPiDCoDkgZmlsZXMgY2hhbmdlZCwgMTgg aW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv bmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvY2ZnLzIyMDAwLmMKPiBiL2RyaXZlcnMvbmV0L3dp cmVsZXNzL2ludGVsL2l3bHdpZmkvY2ZnLzIyMDAwLmMKPiBpbmRleCBhYTQzMjBjYTRjMzAuLmQ1 OTQ2OTQyMDZiMyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3 aWZpL2NmZy8yMjAwMC5jCj4gKysrIGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lm aS9jZmcvMjIwMDAuYwo+IEBAIC04NCw3ICs4NCw2IEBAIGNvbnN0IHN0cnVjdCBpd2xfaHRfcGFy YW1zIGl3bF8yMjAwMF9odF9wYXJhbXMgPSB7Cj4gwqDCoMKgwqDCoMKgwqDCoC5tYWNfYWRkcl9m cm9tX2NzciA9Cj4gMHgzODAswqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBcCj4gwqDCoMKgwqDCoMKgwqDCoC5o dF9wYXJhbXMgPQo+ICZpd2xfMjIwMDBfaHRfcGFyYW1zLMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoFwKPiDCoMKgwqDCoMKgwqDCoMKg Lm52bV92ZXIgPQo+IElXTF8yMjAwMF9OVk1fVkVSU0lPTizCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoFwKPiAtwqDCoMKgwqDCoMKg wqAudHJhbnMudXNlX3RmaCA9Cj4gdHJ1ZSzCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBcCj4g wqDCoMKgwqDCoMKgwqDCoC50cmFucy5yZl9pZCA9Cj4gdHJ1ZSzCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgXAo+IMKgwqDCoMKgwqDCoMKgwqAudHJhbnMuZ2VuMiA9Cj4gdHJ1ZSzCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBcCj4gwqDCoMKgwqDCoMKgwqDCoC5udm1fdHlw ZSA9Cj4gSVdMX05WTV9FWFQswqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBcCj4gQEAgLTEyMiw3ICsx MjEsNiBAQCBjb25zdCBzdHJ1Y3QgaXdsX2h0X3BhcmFtcyBpd2xfMjIwMDBfaHRfcGFyYW1zID0K PiB7Cj4gwqAKPiDCoGNvbnN0IHN0cnVjdCBpd2xfY2ZnX3RyYW5zX3BhcmFtcyBpd2xfcXVfdHJh bnNfY2ZnID0gewo+IMKgwqDCoMKgwqDCoMKgwqAubXFfcnhfc3VwcG9ydGVkID0gdHJ1ZSwKPiAt wqDCoMKgwqDCoMKgwqAudXNlX3RmaCA9IHRydWUsCj4gwqDCoMKgwqDCoMKgwqDCoC5yZl9pZCA9 IHRydWUsCj4gwqDCoMKgwqDCoMKgwqDCoC5nZW4yID0gdHJ1ZSwKPiDCoMKgwqDCoMKgwqDCoMKg LmRldmljZV9mYW1pbHkgPSBJV0xfREVWSUNFX0ZBTUlMWV8yMjAwMCwKPiBAQCAtMTM0LDcgKzEz Miw2IEBAIGNvbnN0IHN0cnVjdCBpd2xfY2ZnX3RyYW5zX3BhcmFtcwo+IGl3bF9xdV90cmFuc19j ZmcgPSB7Cj4gwqAKPiDCoGNvbnN0IHN0cnVjdCBpd2xfY2ZnX3RyYW5zX3BhcmFtcyBpd2xfcXVf bWVkaXVtX2xhdGVuY3lfdHJhbnNfY2ZnID0KPiB7Cj4gwqDCoMKgwqDCoMKgwqDCoC5tcV9yeF9z dXBwb3J0ZWQgPSB0cnVlLAo+IC3CoMKgwqDCoMKgwqDCoC51c2VfdGZoID0gdHJ1ZSwKPiDCoMKg wqDCoMKgwqDCoMKgLnJmX2lkID0gdHJ1ZSwKPiDCoMKgwqDCoMKgwqDCoMKgLmdlbjIgPSB0cnVl LAo+IMKgwqDCoMKgwqDCoMKgwqAuZGV2aWNlX2ZhbWlseSA9IElXTF9ERVZJQ0VfRkFNSUxZXzIy MDAwLAo+IEBAIC0xNDYsNyArMTQzLDYgQEAgY29uc3Qgc3RydWN0IGl3bF9jZmdfdHJhbnNfcGFy YW1zCj4gaXdsX3F1X21lZGl1bV9sYXRlbmN5X3RyYW5zX2NmZyA9IHsKPiDCoAo+IMKgY29uc3Qg c3RydWN0IGl3bF9jZmdfdHJhbnNfcGFyYW1zIGl3bF9xdV9sb25nX2xhdGVuY3lfdHJhbnNfY2Zn ID0gewo+IMKgwqDCoMKgwqDCoMKgwqAubXFfcnhfc3VwcG9ydGVkID0gdHJ1ZSwKPiAtwqDCoMKg wqDCoMKgwqAudXNlX3RmaCA9IHRydWUsCj4gwqDCoMKgwqDCoMKgwqDCoC5yZl9pZCA9IHRydWUs Cj4gwqDCoMKgwqDCoMKgwqDCoC5nZW4yID0gdHJ1ZSwKPiDCoMKgwqDCoMKgwqDCoMKgLmRldmlj ZV9mYW1pbHkgPSBJV0xfREVWSUNFX0ZBTUlMWV8yMjAwMCwKPiBAQCAtMjAwLDcgKzE5Niw2IEBA IGNvbnN0IHN0cnVjdCBpd2xfY2ZnX3RyYW5zX3BhcmFtcwo+IGl3bF9heDIwMF90cmFuc19jZmcg PSB7Cj4gwqDCoMKgwqDCoMKgwqDCoC5kZXZpY2VfZmFtaWx5ID0gSVdMX0RFVklDRV9GQU1JTFlf MjIwMDAsCj4gwqDCoMKgwqDCoMKgwqDCoC5iYXNlX3BhcmFtcyA9ICZpd2xfMjIwMDBfYmFzZV9w YXJhbXMsCj4gwqDCoMKgwqDCoMKgwqDCoC5tcV9yeF9zdXBwb3J0ZWQgPSB0cnVlLAo+IC3CoMKg wqDCoMKgwqDCoC51c2VfdGZoID0gdHJ1ZSwKPiDCoMKgwqDCoMKgwqDCoMKgLnJmX2lkID0gdHJ1 ZSwKPiDCoMKgwqDCoMKgwqDCoMKgLmdlbjIgPSB0cnVlLAo+IMKgwqDCoMKgwqDCoMKgwqAuYmlz cl93b3JrYXJvdW5kID0gMSwKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50 ZWwvaXdsd2lmaS9pd2wtY29uZmlnLmgKPiBiL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3 bHdpZmkvaXdsLWNvbmZpZy5oCj4gaW5kZXggNzQyMDk2YzVhMzZhLi4yNDFhOWUzZjJhMWEgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9pd2wtY29uZmln LmgKPiArKysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL2l3bC1jb25maWcu aAo+IEBAIC0yNTYsNyArMjU2LDYgQEAgZW51bSBpd2xfY2ZnX3RyYW5zX2x0cl9kZWxheSB7Cj4g wqAgKiBAeHRhbF9sYXRlbmN5OiBwb3dlciB1cCBsYXRlbmN5IHRvIGdldCB0aGUgeHRhbCBzdGFi aWxpemVkCj4gwqAgKiBAZXh0cmFfcGh5X2NmZ19mbGFnczogZXh0cmEgY29uZmlndXJhdGlvbiBm bGFncyB0byBwYXNzIHRvIHRoZQo+IFBIWQo+IMKgICogQHJmX2lkOiBuZWVkIHRvIHJlYWQgcmZf aWQgdG8gZGV0ZXJtaW5lIHRoZSBmaXJtd2FyZSBpbWFnZQo+IC0gKiBAdXNlX3RmaDogdXNlIFRG SAo+IMKgICogQGdlbjI6IDIyMDAwIGFuZCBvbiB0cmFuc3BvcnQgb3BlcmF0aW9uCj4gwqAgKiBA bXFfcnhfc3VwcG9ydGVkOiBtdWx0aS1xdWV1ZSByeCBzdXBwb3J0Cj4gwqAgKiBAaW50ZWdyYXRl ZDogZGlzY3JldGUgb3IgaW50ZWdyYXRlZAo+IEBAIC0yNzEsNyArMjcwLDYgQEAgc3RydWN0IGl3 bF9jZmdfdHJhbnNfcGFyYW1zIHsKPiDCoMKgwqDCoMKgwqDCoMKgdTMyIHh0YWxfbGF0ZW5jeTsK PiDCoMKgwqDCoMKgwqDCoMKgdTMyIGV4dHJhX3BoeV9jZmdfZmxhZ3M7Cj4gwqDCoMKgwqDCoMKg wqDCoHUzMiByZl9pZDoxLAo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoCB1c2VfdGZoOjEsCj4gwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBnZW4yOjEsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBtcV9y eF9zdXBwb3J0ZWQ6MSwKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGludGVncmF0ZWQ6MSwKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9pd2wtZmguaAo+ IGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9pd2wtZmguaAo+IGluZGV4IGJl ZGQ3OGE0N2Y2Ny4uNGU0YTYwZGRmOWIyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L3dpcmVs ZXNzL2ludGVsL2l3bHdpZmkvaXdsLWZoLmgKPiArKysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9p bnRlbC9pd2x3aWZpL2l3bC1maC5oCj4gQEAgLTEsNiArMSw2IEBACj4gwqAvKiBTUERYLUxpY2Vu c2UtSWRlbnRpZmllcjogR1BMLTIuMCBPUiBCU0QtMy1DbGF1c2UgKi8KPiDCoC8qCj4gLSAqIENv cHlyaWdodCAoQykgMjAwNS0yMDE0LCAyMDE4LTIwMjEgSW50ZWwgQ29ycG9yYXRpb24KPiArICog Q29weXJpZ2h0IChDKSAyMDA1LTIwMTQsIDIwMTgtMjAyMSwgMjAyMyBJbnRlbCBDb3Jwb3JhdGlv bgo+IMKgICogQ29weXJpZ2h0IChDKSAyMDE1LTIwMTcgSW50ZWwgRGV1dHNjaGxhbmQgR21iSAo+ IMKgICovCj4gwqAjaWZuZGVmIF9faXdsX2ZoX2hfXwo+IEBAIC03MSw3ICs3MSw3IEBACj4gwqBz dGF0aWMgaW5saW5lIHVuc2lnbmVkIGludCBGSF9NRU1fQ0JCQ19RVUVVRShzdHJ1Y3QgaXdsX3Ry YW5zCj4gKnRyYW5zLAo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdW5zaWduZWQg aW50IGNobmwpCj4gwqB7Cj4gLcKgwqDCoMKgwqDCoMKgaWYgKHRyYW5zLT50cmFuc19jZmctPnVz ZV90ZmgpIHsKPiArwqDCoMKgwqDCoMKgwqBpZiAodHJhbnMtPnRyYW5zX2NmZy0+Z2VuMikgewo+ IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgV0FSTl9PTl9PTkNFKGNobmwgPj0gNjQp Owo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIFRGSF9URkRRX0NCQl9U QUJMRSArIDggKiBjaG5sOwo+IMKgwqDCoMKgwqDCoMKgwqB9Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvaXdsLXRyYW5zLmMKPiBiL2RyaXZlcnMvbmV0 L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvaXdsLXRyYW5zLmMKPiBpbmRleCBiMWFmOTM1OWNlYTUu LjRiZDc1OTQzMmQ0NCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9p d2x3aWZpL2l3bC10cmFucy5jCj4gKysrIGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXds d2lmaS9pd2wtdHJhbnMuYwo+IEBAIC0yLDcgKzIsNyBAQAo+IMKgLyoKPiDCoCAqIENvcHlyaWdo dCAoQykgMjAxNSBJbnRlbCBNb2JpbGUgQ29tbXVuaWNhdGlvbnMgR21iSAo+IMKgICogQ29weXJp Z2h0IChDKSAyMDE2LTIwMTcgSW50ZWwgRGV1dHNjaGxhbmQgR21iSAo+IC0gKiBDb3B5cmlnaHQg KEMpIDIwMTktMjAyMSBJbnRlbCBDb3Jwb3JhdGlvbgo+ICsgKiBDb3B5cmlnaHQgKEMpIDIwMTkt MjAyMSwgMjAyMyBJbnRlbCBDb3Jwb3JhdGlvbgo+IMKgICovCj4gwqAjaW5jbHVkZSA8bGludXgv a2VybmVsLmg+Cj4gwqAjaW5jbHVkZSA8bGludXgvYnNlYXJjaC5oPgo+IEBAIC00Miw3ICs0Miw3 IEBAIHN0cnVjdCBpd2xfdHJhbnMgKml3bF90cmFuc19hbGxvYyh1bnNpZ25lZCBpbnQKPiBwcml2 X3NpemUsCj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgV0FSTl9PTighb3BzLT53YWl0X3R4cV9lbXB0 eSAmJiAhb3BzLT53YWl0X3R4X3F1ZXVlc19lbXB0eSk7Cj4gwqAKPiAtwqDCoMKgwqDCoMKgwqBp ZiAodHJhbnMtPnRyYW5zX2NmZy0+dXNlX3RmaCkgewo+ICvCoMKgwqDCoMKgwqDCoGlmICh0cmFu cy0+dHJhbnNfY2ZnLT5nZW4yKSB7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB0 cmFucy0+dHhxcy50ZmQuYWRkcl9zaXplID0gNjQ7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqB0cmFucy0+dHhxcy50ZmQubWF4X3RicyA9IElXTF9URkhfTlVNX1RCUzsKPiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHRyYW5zLT50eHFzLnRmZC5zaXplID0gc2l6ZW9m KHN0cnVjdCBpd2xfdGZoX3RmZCk7Cj4gQEAgLTEwMSw3ICsxMDEsNyBAQCBpbnQgaXdsX3RyYW5z X2luaXQoc3RydWN0IGl3bF90cmFucyAqdHJhbnMpCj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgLyog U29tZSB0aGluZ3MgbXVzdCBub3QgY2hhbmdlIGV2ZW4gaWYgdGhlIGNvbmZpZyBkb2VzICovCj4g wqDCoMKgwqDCoMKgwqDCoFdBUk5fT04odHJhbnMtPnR4cXMudGZkLmFkZHJfc2l6ZSAhPQo+IC3C oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAodHJhbnMtPnRyYW5zX2NmZy0+dXNlX3RmaCA/ IDY0IDogMzYpKTsKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgKHRyYW5zLT50cmFu c19jZmctPmdlbjIgPyA2NCA6IDM2KSk7Cj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgc25wcmludGYo dHJhbnMtPmRldl9jbWRfcG9vbF9uYW1lLCBzaXplb2YodHJhbnMtCj4gPmRldl9jbWRfcG9vbF9u YW1lKSwKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiaXdsX2NtZF9wb29sOiVz IiwgZGV2X25hbWUodHJhbnMtPmRldikpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC93aXJl bGVzcy9pbnRlbC9pd2x3aWZpL212bS9tdm0uaAo+IGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50 ZWwvaXdsd2lmaS9tdm0vbXZtLmgKPiBpbmRleCBiODNkZjA2MzEyNzkuLmIxOGM5MWM1ZGQ1ZCAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL212bS9tdm0u aAo+ICsrKyBiL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvbXZtL212bS5oCj4g QEAgLTE0NTAsNyArMTQ1MCw3IEBAIHN0YXRpYyBpbmxpbmUgYm9vbAo+IGl3bF9tdm1faGFzX25l d19zdGF0aW9uX2FwaShjb25zdCBzdHJ1Y3QgaXdsX2Z3ICpmdykKPiDCoHN0YXRpYyBpbmxpbmUg Ym9vbCBpd2xfbXZtX2hhc19uZXdfdHhfYXBpKHN0cnVjdCBpd2xfbXZtICptdm0pCj4gwqB7Cj4g wqDCoMKgwqDCoMKgwqDCoC8qIFRPRE8gLSByZXBsYWNlIHdpdGggVExWIG9uY2UgZGVmaW5lZCAq Lwo+IC3CoMKgwqDCoMKgwqDCoHJldHVybiBtdm0tPnRyYW5zLT50cmFuc19jZmctPnVzZV90Zmg7 Cj4gK8KgwqDCoMKgwqDCoMKgcmV0dXJuIG12bS0+dHJhbnMtPnRyYW5zX2NmZy0+Z2VuMjsKPiDC oH0KPiDCoAo+IMKgc3RhdGljIGlubGluZSBib29sIGl3bF9tdm1faGFzX3VuaWZpZWRfdWNvZGUo c3RydWN0IGl3bF9tdm0gKm12bSkKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvd2lyZWxlc3Mv aW50ZWwvaXdsd2lmaS9wY2llL3RyYW5zLmMKPiBiL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVs L2l3bHdpZmkvcGNpZS90cmFucy5jCj4gaW5kZXggZWFjYmJkYmZmYjVlLi4zZTk4OGRhNDQ5NzMg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9wY2llL3Ry YW5zLmMKPiArKysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL3BjaWUvdHJh bnMuYwo+IEBAIC04MTksNyArODE5LDcgQEAgc3RhdGljIGludCBpd2xfcGNpZV9sb2FkX2NwdV9z ZWN0aW9uc184MDAwKHN0cnVjdAo+IGl3bF90cmFucyAqdHJhbnMsCj4gwqAKPiDCoMKgwqDCoMKg wqDCoMKgaXdsX2VuYWJsZV9pbnRlcnJ1cHRzKHRyYW5zKTsKPiDCoAo+IC3CoMKgwqDCoMKgwqDC oGlmICh0cmFucy0+dHJhbnNfY2ZnLT51c2VfdGZoKSB7Cj4gK8KgwqDCoMKgwqDCoMKgaWYgKHRy YW5zLT50cmFuc19jZmctPmdlbjIpIHsKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oGlmIChjcHUgPT0gMSkKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqBpd2xfd3JpdGVfcHJwaCh0cmFucywgVVJFR19VQ09ERV9MT0FEX1NUQVRVUywKPiDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIDB4RkZGRik7Cj4gQEAgLTMzOTQsNyArMzM5NCw3IEBAIGl3bF90 cmFuc19wY2llX2R1bXBfZGF0YShzdHJ1Y3QgaXdsX3RyYW5zCj4gKnRyYW5zLAo+IMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHU4IHRmZGlkeDsKPiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB1MzIgY2FwbGVuLCBj bWRsZW47Cj4gwqAKPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoGlmICh0cmFucy0+dHJhbnNfY2ZnLT51c2VfdGZoKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWYgKHRyYW5zLT50cmFuc19jZmctPmdlbjIpCj4g wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoHRmZGlkeCA9IGlkeDsKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqBlbHNlCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHRmZGlkeCA9IHB0cjsKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9wY2llL3R4LmMKPiBiL2RyaXZlcnMv bmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvcGNpZS90eC5jCj4gaW5kZXggMTMzN2ZhOTVmNjU3 Li43OTBlNWIxMjQ3NDAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwv aXdsd2lmaS9wY2llL3R4LmMKPiArKysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3 aWZpL3BjaWUvdHguYwo+IEBAIC0zNjQsNyArMzY0LDcgQEAgdm9pZCBpd2xfdHJhbnNfcGNpZV90 eF9yZXNldChzdHJ1Y3QgaXdsX3RyYW5zCj4gKnRyYW5zKQo+IMKgwqDCoMKgwqDCoMKgwqBmb3Ig KHR4cV9pZCA9IDA7IHR4cV9pZCA8IHRyYW5zLT50cmFuc19jZmctPmJhc2VfcGFyYW1zLQo+ID5u dW1fb2ZfcXVldWVzOwo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB0eHFfaWQrKykgewo+IMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgc3RydWN0IGl3bF90eHEgKnR4cSA9IHRyYW5z LT50eHFzLnR4cVt0eHFfaWRdOwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZiAo dHJhbnMtPnRyYW5zX2NmZy0+dXNlX3RmaCkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgaWYgKHRyYW5zLT50cmFuc19jZmctPmdlbjIpCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaXdsX3dyaXRlX2RpcmVjdDY0KHRyYW5zLAo+IMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBGSF9NRU1fQ0JCQ19RVUVVRSh0cmFucywKPiB0eHFfaWQp LAo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB0eHEtPmRtYV9hZGRyKTsKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9xdWV1ZS90eC5jCj4gYi9k cml2ZXJzL25ldC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL3F1ZXVlL3R4LmMKPiBpbmRleCBmYmFj YmU5YWRhMTUuLjViYjNjYzMzNjdjOSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC93aXJlbGVz cy9pbnRlbC9pd2x3aWZpL3F1ZXVlL3R4LmMKPiArKysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9p bnRlbC9pd2x3aWZpL3F1ZXVlL3R4LmMKPiBAQCAtOTg1LDcgKzk4NSw3IEBAIHZvaWQgaXdsX3R4 cV9sb2dfc2NkX2Vycm9yKHN0cnVjdCBpd2xfdHJhbnMKPiAqdHJhbnMsIHN0cnVjdCBpd2xfdHhx ICp0eHEpCj4gwqDCoMKgwqDCoMKgwqDCoGJvb2wgYWN0aXZlOwo+IMKgwqDCoMKgwqDCoMKgwqB1 OCBmaWZvOwo+IMKgCj4gLcKgwqDCoMKgwqDCoMKgaWYgKHRyYW5zLT50cmFuc19jZmctPnVzZV90 ZmgpIHsKPiArwqDCoMKgwqDCoMKgwqBpZiAodHJhbnMtPnRyYW5zX2NmZy0+Z2VuMikgewo+IMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgSVdMX0VSUih0cmFucywgIlF1ZXVlICVkIGlz IHN0dWNrICVkICVkXG4iLCB0eHFfaWQsCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgdHhxLT5yZWFkX3B0ciwgdHhxLT53cml0ZV9wdHIpOwo+IMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgLyogVE9ETzogYWNjZXNzIG5ldyBTQ0QgcmVnaXN0 ZXJzIGFuZCBkdW1wIHRoZW0gKi8KPiBAQCAtMTA0MCw3ICsxMDQwLDcgQEAgaW50IGl3bF90eHFf YWxsb2Moc3RydWN0IGl3bF90cmFucyAqdHJhbnMsCj4gc3RydWN0IGl3bF90eHEgKnR4cSwgaW50 IHNsb3RzX251bSwKPiDCoMKgwqDCoMKgwqDCoMKgaWYgKFdBUk5fT04odHhxLT5lbnRyaWVzIHx8 IHR4cS0+dGZkcykpCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gLUVJ TlZBTDsKPiDCoAo+IC3CoMKgwqDCoMKgwqDCoGlmICh0cmFucy0+dHJhbnNfY2ZnLT51c2VfdGZo KQo+ICvCoMKgwqDCoMKgwqDCoGlmICh0cmFucy0+dHJhbnNfY2ZnLT5nZW4yKQo+IMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgdGZkX3N6ID0gdHJhbnMtPnR4cXMudGZkLnNpemUgKiBz bG90c19udW07Cj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgdGltZXJfc2V0dXAoJnR4cS0+c3R1Y2tf dGltZXIsIGl3bF90eHFfc3R1Y2tfdGltZXIsIDApOwo+IEBAIC0xMzQ3LDcgKzEzNDcsNyBAQCBz dGF0aWMgaW5saW5lIGRtYV9hZGRyX3QKPiBpd2xfdHhxX2dlbjFfdGZkX3RiX2dldF9hZGRyKHN0 cnVjdCBpd2xfdHJhbnMgKnRyYW5zLAo+IMKgwqDCoMKgwqDCoMKgwqBkbWFfYWRkcl90IGFkZHI7 Cj4gwqDCoMKgwqDCoMKgwqDCoGRtYV9hZGRyX3QgaGlfbGVuOwo+IMKgCj4gLcKgwqDCoMKgwqDC oMKgaWYgKHRyYW5zLT50cmFuc19jZmctPnVzZV90ZmgpIHsKPiArwqDCoMKgwqDCoMKgwqBpZiAo dHJhbnMtPnRyYW5zX2NmZy0+Z2VuMikgewo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgc3RydWN0IGl3bF90ZmhfdGZkICp0ZmhfdGZkID0gX3RmZDsKPiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoHN0cnVjdCBpd2xfdGZoX3RiICp0ZmhfdGIgPSAmdGZoX3RmZC0+dGJz W2lkeF07Cj4gwqAKPiBAQCAtMTQwOCw3ICsxNDA4LDcgQEAgdm9pZCBpd2xfdHhxX2dlbjFfdGZk X3VubWFwKHN0cnVjdCBpd2xfdHJhbnMKPiAqdHJhbnMsCj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKg bWV0YS0+dGJzID0gMDsKPiDCoAo+IC3CoMKgwqDCoMKgwqDCoGlmICh0cmFucy0+dHJhbnNfY2Zn LT51c2VfdGZoKSB7Cj4gK8KgwqDCoMKgwqDCoMKgaWYgKHRyYW5zLT50cmFuc19jZmctPmdlbjIp IHsKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHN0cnVjdCBpd2xfdGZoX3RmZCAq dGZkX2ZoID0gKHZvaWQgKil0ZmQ7Cj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoHRmZF9maC0+bnVtX3RicyA9IDA7Cj4gQEAgLTE2MjUsNyArMTYyNSw3IEBAIHZvaWQgaXds X3R4cV9yZWNsYWltKHN0cnVjdCBpd2xfdHJhbnMgKnRyYW5zLAo+IGludCB0eHFfaWQsIGludCBz c24sCj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHR4cS0+ZW50cmllc1ty ZWFkX3B0cl0uc2tiID0gTlVMTDsKPiDCoAo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqBpZiAoIXRyYW5zLT50cmFuc19jZmctPnVzZV90ZmgpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoGlmICghdHJhbnMtPnRyYW5zX2NmZy0+Z2VuMikKPiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpd2xfdHhxX2dlbjFfaW52YWxfYnl0ZV9j bnRfdGJsKHRyYW5zLCB0eHEpOwo+IMKgCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqBpd2xfdHhxX2ZyZWVfdGZkKHRyYW5zLCB0eHEpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25l dC93aXJlbGVzcy9pbnRlbC9pd2x3aWZpL3F1ZXVlL3R4LmgKPiBiL2RyaXZlcnMvbmV0L3dpcmVs ZXNzL2ludGVsL2l3bHdpZmkvcXVldWUvdHguaAo+IGluZGV4IGVjYTUzYmZkMzI2ZC4uMWU0YTI0 YWI5YmFiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkv cXVldWUvdHguaAo+ICsrKyBiL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvcXVl dWUvdHguaAo+IEBAIC0xLDYgKzEsNiBAQAo+IMKgLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6 IEdQTC0yLjAgT1IgQlNELTMtQ2xhdXNlICovCj4gwqAvKgo+IC0gKiBDb3B5cmlnaHQgKEMpIDIw MjAtMjAyMiBJbnRlbCBDb3Jwb3JhdGlvbgo+ICsgKiBDb3B5cmlnaHQgKEMpIDIwMjAtMjAyMyBJ bnRlbCBDb3Jwb3JhdGlvbgo+IMKgICovCj4gwqAjaWZuZGVmIF9faXdsX3RyYW5zX3F1ZXVlX3R4 X2hfXwo+IMKgI2RlZmluZSBfX2l3bF90cmFuc19xdWV1ZV90eF9oX18KPiBAQCAtMzgsNyArMzgs NyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaXdsX3dha2VfcXVldWUoc3RydWN0IGl3bF90cmFucwo+ ICp0cmFucywKPiDCoHN0YXRpYyBpbmxpbmUgdm9pZCAqaXdsX3R4cV9nZXRfdGZkKHN0cnVjdCBp d2xfdHJhbnMgKnRyYW5zLAo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0IGl3bF90eHEgKnR4cSwgaW50 IGlkeCkKPiDCoHsKPiAtwqDCoMKgwqDCoMKgwqBpZiAodHJhbnMtPnRyYW5zX2NmZy0+dXNlX3Rm aCkKPiArwqDCoMKgwqDCoMKgwqBpZiAodHJhbnMtPnRyYW5zX2NmZy0+Z2VuMikKPiDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlkeCA9IGl3bF90eHFfZ2V0X2NtZF9pbmRleCh0eHEs IGlkeCk7Cj4gwqAKPiDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuICh1OCAqKXR4cS0+dGZkcyArIHRy YW5zLT50eHFzLnRmZC5zaXplICogaWR4Owo+IEBAIC0xMzUsNyArMTM1LDcgQEAgc3RhdGljIGlu bGluZSB1OAo+IGl3bF90eHFfZ2VuMV90ZmRfZ2V0X251bV90YnMoc3RydWN0IGl3bF90cmFucyAq dHJhbnMsCj4gwqB7Cj4gwqDCoMKgwqDCoMKgwqDCoHN0cnVjdCBpd2xfdGZkICp0ZmQ7Cj4gwqAK PiAtwqDCoMKgwqDCoMKgwqBpZiAodHJhbnMtPnRyYW5zX2NmZy0+dXNlX3RmaCkgewo+ICvCoMKg wqDCoMKgwqDCoGlmICh0cmFucy0+dHJhbnNfY2ZnLT5nZW4yKSB7Cj4gwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3QgaXdsX3RmaF90ZmQgKnRmaF90ZmQgPSBfdGZkOwo+IMKg Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gbGUxNl90b19jcHUodGZo X3RmZC0+bnVtX3RicykgJiAweDFmOwo+IEBAIC0xNTEsNyArMTUxLDcgQEAgc3RhdGljIGlubGlu ZSB1MTYKPiBpd2xfdHhxX2dlbjFfdGZkX3RiX2dldF9sZW4oc3RydWN0IGl3bF90cmFucyAqdHJh bnMsCj4gwqDCoMKgwqDCoMKgwqDCoHN0cnVjdCBpd2xfdGZkICp0ZmQ7Cj4gwqDCoMKgwqDCoMKg wqDCoHN0cnVjdCBpd2xfdGZkX3RiICp0YjsKPiDCoAo+IC3CoMKgwqDCoMKgwqDCoGlmICh0cmFu cy0+dHJhbnNfY2ZnLT51c2VfdGZoKSB7Cj4gK8KgwqDCoMKgwqDCoMKgaWYgKHRyYW5zLT50cmFu c19jZmctPmdlbjIpIHsKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHN0cnVjdCBp d2xfdGZoX3RmZCAqdGZoX3RmZCA9IF90ZmQ7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqBzdHJ1Y3QgaXdsX3RmaF90YiAqdGZoX3RiID0gJnRmaF90ZmQtPnRic1tpZHhdOwo+IMKg Cgo=