Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp1570666ybf; Sun, 1 Mar 2020 12:35:09 -0800 (PST) X-Google-Smtp-Source: APXvYqxw2gCdiwzcxroON2wrWaL8e33tU3QTti5L+0JQ2r9VxZ2YbCLrB82B+BKJCzDjikBMqL1Z X-Received: by 2002:aca:c45:: with SMTP id i5mr8972172oiy.111.1583094909357; Sun, 01 Mar 2020 12:35:09 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1583094909; cv=pass; d=google.com; s=arc-20160816; b=sqnuhWU8YsPlxDignP+Aec8iV4NgCM+5Ve66kDRuOcBiFAXlwRBZ2/thhudUSUcNCF ZFdlVDM2y7+Lf10LVuFr+PXZnvlZhFXVx6A6d39HzLIMNatBK++czv9PLIRGsgoGN2Ck 0ph2clK5EUTbAj0Grc3I9qmKU0rCMqwF88/tIi8ZKM3iLSf4r6C4NYcVuRCOF7lhwe0k DOZNyluFRS4gPxY7FhlWMasP+NbjW4s3XkcmBUoebYVgc1kq3Ppa6L0C3VmxO0eiCHIw jUjeO4iWE35foM+98O+oZsREDNsDsV8sqdonDZoLKmKbovq7YkpDKHzx2JX3yxm1DIf0 2PhQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from; bh=GPdiW8w8JXaj5n8tNG0+e21yw8CsXvCoaSkrbP4ln5A=; b=kHvzPqRAPlgPmq5uKwe2GiDrvzzHdfS7L0P/LU5bsLfH8izmCodG53VpT8YvS8qQvM OThu37NdhQGwFctKB52bzuRH6t/VlB8h8qVaMN4HVpEFksy5mdXreieS/1S67ndB55DG aht5Qz+MH+gFeGRNx7U7mAmt3V2PsVdM+gdx60wEvBBXQmA8oj52iadIG1w8omcYaveb LLwsPM+FWOi8T2kch4/9E7U6GIwbgBoTNfODtWaztkcQfqvGkTx+Zc2tfgxeht1K+9Q7 hfyjPSpidwkxux88oy78EZ5p9ZQHbJefQNtf68eq/Eb0Zl4t1nvOdeB6Osl/GhmTSI48 3A7A== ARC-Authentication-Results: i=2; mx.google.com; arc=pass (i=1); spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e7si5026763otr.183.2020.03.01.12.34.57; Sun, 01 Mar 2020 12:35:09 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; arc=pass (i=1); spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726682AbgCAUeX (ORCPT + 99 others); Sun, 1 Mar 2020 15:34:23 -0500 Received: from mail-oln040092073043.outbound.protection.outlook.com ([40.92.73.43]:4548 "EHLO EUR04-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1725945AbgCAUeX (ORCPT ); Sun, 1 Mar 2020 15:34:23 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DKViFawXLvf9qaJxEdWd/6tJtHRrLdshqlza/rZWOs3IxmDPGU5WzdLaT0//+/+SigsSx9rbOUfVZW+qqyP5kIZHd4O8AAyWdxw3C1bAHYq0HSqc21Oofy05U2GkNfSAZlLoqGQ3UfjIDN/+PqKAGZ8B8qVgAQ4xu0w8NDjHGpstd+TyUPVshJFgPHaH8mSivWvH4HlSEEatWZYi1iFJiJvX3Dey0pzSqExMzfDG2VPl5PtOv5vDlgdXJo3N3awN/EmN2YapD6UMaHcrApg4QPffJbVaY09X4+OOaXmr/nMzBSIbcef6X24k1Eb6Egip+U161yN3KSRXYbbNTqunWA== 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-SenderADCheck; bh=GPdiW8w8JXaj5n8tNG0+e21yw8CsXvCoaSkrbP4ln5A=; b=cfBO6jufL6NfSbkUk3cuXFFbamVhcve1MhPfRPCPePC5haHIoC3uF5I/ZQt0SvGMfTnHVuC9dm6/89NgSm3i2MtEggN7Ielz2g4WYLaU155l0fzsfaf7jZoTHiqxg1CULiADclnJ2lNNRQbKdjpVgCDrvFjE8i/Q1wvn8v1lPIa/BuQXiee6gBP3ejtZkt5Fa3J9Y0NKsMUt542B07cxe8Zd/+OAVyNeAw/N08jw5zisUx7ayMmkzVFLKMpHA8i89KtfYlkrxM/HCsIU6wRJvAR24IFslp+sQD4+ySTVs6OshxKZOQOjDPEJZf2VsQLFgJlV8aSWjF2rFVHnMcRICQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from DB3EUR04FT041.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0c::3c) by DB3EUR04HT003.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0c::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2772.15; Sun, 1 Mar 2020 20:34:16 +0000 Received: from AM6PR03MB5170.eurprd03.prod.outlook.com (10.152.24.54) by DB3EUR04FT041.mail.protection.outlook.com (10.152.25.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2772.15 via Frontend Transport; Sun, 1 Mar 2020 20:34:16 +0000 Received: from AM6PR03MB5170.eurprd03.prod.outlook.com ([fe80::1956:d274:cab3:b4dd]) by AM6PR03MB5170.eurprd03.prod.outlook.com ([fe80::1956:d274:cab3:b4dd%6]) with mapi id 15.20.2772.019; Sun, 1 Mar 2020 20:34:16 +0000 Received: from [192.168.1.101] (92.77.140.102) by FRYP281CA0013.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2772.14 via Frontend Transport; Sun, 1 Mar 2020 20:34:14 +0000 From: Bernd Edlinger To: Jann Horn , Christian Brauner CC: Jonathan Corbet , Alexander Viro , Andrew Morton , Alexey Dobriyan , "Eric W. Biederman" , Thomas Gleixner , Oleg Nesterov , Frederic Weisbecker , Andrei Vagin , Ingo Molnar , "Peter Zijlstra (Intel)" , Yuyang Du , David Hildenbrand , Sebastian Andrzej Siewior , Anshuman Khandual , David Howells , James Morris , Kees Cook , Greg Kroah-Hartman , Shakeel Butt , Jason Gunthorpe , Christian Kellner , Andrea Arcangeli , Aleksa Sarai , "Dmitry V. Levin" , "linux-doc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" , "linux-mm@kvack.org" , Aleksa Sarai , "stable@vger.kernel.org" Subject: [PATCHv2] exec: Fix a deadlock in ptrace Thread-Topic: [PATCHv2] exec: Fix a deadlock in ptrace Thread-Index: AQHV8AjGwZG4WijWc0+aQpdADP+q6g== Date: Sun, 1 Mar 2020 20:34:16 +0000 Message-ID: References: <20200301185244.zkofjus6xtgkx4s3@wittgenstein> In-Reply-To: Accept-Language: en-US, en-GB, de-DE Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: FRYP281CA0013.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10::23) To AM6PR03MB5170.eurprd03.prod.outlook.com (2603:10a6:20b:ca::23) x-incomingtopheadermarker: OriginalChecksum:C56D792F49214D1511F61546F3F9611CB6F02AD676CD591E34F382FBF82C386F;UpperCasedChecksum:56D79049FA5A818742FBC6C94A6B2753413DCC47862A56F18FA6315FE913F781;SizeAsReceived:9119;Count:50 x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [t+JWDGIw2yhxJ/dQ0BuUULYZoRt0KdeB] x-microsoft-original-message-id: x-ms-publictraffictype: Email x-incomingheadercount: 50 x-eopattributedmessage: 0 x-ms-office365-filtering-correlation-id: b0d7055d-f0a7-4df7-1290-08d7be1fe8ea x-ms-traffictypediagnostic: DB3EUR04HT003: x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 1Is2QYkIlwX3HtTzffdQYzl9XK6IAaznCOI+sTN0Vsgjc6X1ifoUrlajKOLT3i0RsQ1qbeTfSYArDlDstsrz4GWQYoZC8r8GqQzvCSfh9O/vTKR8cDtdL8U5L0O1Xb/+fpLr1Pssdr+0C9rjXbl319SECJc5EL0qPc/V7LYbcxY1mnTgPZ5Jfn1RCUuxrQSS x-ms-exchange-antispam-messagedata: zdtR2BNwkpQncY+8cS6A2FNNKXCDjfD2f5UfpLoIf7N49yubl+kivM+AB8JSX6taIeTyp6iZSMfLdOdmvXgn+wHSY1enb/fDBhwU+grOfxUFN65m3WQFTJUFIDILcojf8C2k8LHms15YfvlZLLasdQ== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <785CAA66EB60C94A8AE9A1CFDDAA6EE5@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: b0d7055d-f0a7-4df7-1290-08d7be1fe8ea X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Mar 2020 20:34:16.1210 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3EUR04HT003 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org VGhpcyBmaXhlcyBhIGRlYWRsb2NrIGluIHRoZSB0cmFjZXIgd2hlbiB0cmFjaW5nIGEgbXVsdGkt dGhyZWFkZWQNCmFwcGxpY2F0aW9uIHRoYXQgY2FsbHMgZXhlY3ZlIHdoaWxlIG1vcmUgdGhhbiBv bmUgdGhyZWFkIGFyZSBydW5uaW5nLg0KDQpJIG9ic2VydmVkIHRoYXQgd2hlbiBydW5uaW5nIHN0 cmFjZSBvbiB0aGUgZ2NjIHRlc3Qgc3VpdGUsIGl0IGFsd2F5cw0KYmxvY2tzIGFmdGVyIGEgd2hp bGUsIHdoZW4gZXhwZWN0IGNhbGxzIGV4ZWN2ZSwgYmVjYXVzZSBvdGhlciB0aHJlYWRzDQpoYXZl IHRvIGJlIHRlcm1pbmF0ZWQuICBUaGV5IHNlbmQgcHRyYWNlIGV2ZW50cywgYnV0IHRoZSBzdHJh Y2UgaXMgbm8NCmxvbmdlciBhYmxlIHRvIHJlc3BvbmQsIHNpbmNlIGl0IGlzIGJsb2NrZWQgaW4g dm1fYWNjZXNzLg0KDQpUaGUgZGVhZGxvY2sgaXMgYWx3YXlzIGhhcHBlbmluZyB3aGVuIHN0cmFj ZSBuZWVkcyB0byBhY2Nlc3MgdGhlDQp0cmFjZWVzIHByb2Nlc3MgbW1hcCwgd2hpbGUgYW5vdGhl ciB0aHJlYWQgaW4gdGhlIHRyYWNlZSBzdGFydHMgdG8NCmV4ZWN2ZSBhIGNoaWxkIHByb2Nlc3Ms IGJ1dCB0aGF0IGNhbm5vdCBjb250aW51ZSB1bnRpbCB0aGUNClBUUkFDRV9FVkVOVF9FWElUIGlz IGhhbmRsZWQgYW5kIHRoZSBXSUZFWElURUQgZXZlbnQgaXMgcmVjZWl2ZWQ6DQoNCnN0cmFjZSAg ICAgICAgICBEICAgIDAgMzA2MTQgIDMwNTg0IDB4MDAwMDAwMDANCkNhbGwgVHJhY2U6DQpfX3Nj aGVkdWxlKzB4M2NlLzB4NmUwDQpzY2hlZHVsZSsweDVjLzB4ZDANCnNjaGVkdWxlX3ByZWVtcHRf ZGlzYWJsZWQrMHgxNS8weDIwDQpfX211dGV4X2xvY2suaXNyYS4xMysweDFlYy8weDUyMA0KX19t dXRleF9sb2NrX2tpbGxhYmxlX3Nsb3dwYXRoKzB4MTMvMHgyMA0KbXV0ZXhfbG9ja19raWxsYWJs ZSsweDI4LzB4MzANCm1tX2FjY2VzcysweDI3LzB4YTANCnByb2Nlc3Nfdm1fcndfY29yZS5pc3Jh LjMrMHhmZi8weDU1MA0KcHJvY2Vzc192bV9ydysweGRkLzB4ZjANCl9feDY0X3N5c19wcm9jZXNz X3ZtX3JlYWR2KzB4MzEvMHg0MA0KZG9fc3lzY2FsbF82NCsweDY0LzB4MjIwDQplbnRyeV9TWVND QUxMXzY0X2FmdGVyX2h3ZnJhbWUrMHg0NC8weGE5DQoNCmV4cGVjdCAgICAgICAgICBEICAgIDAg MzE5MzMgIDMwODc2IDB4ODAwMDQwMDMNCkNhbGwgVHJhY2U6DQpfX3NjaGVkdWxlKzB4M2NlLzB4 NmUwDQpzY2hlZHVsZSsweDVjLzB4ZDANCmZsdXNoX29sZF9leGVjKzB4YzQvMHg3NzANCmxvYWRf ZWxmX2JpbmFyeSsweDM1YS8weDE2YzANCnNlYXJjaF9iaW5hcnlfaGFuZGxlcisweDk3LzB4MWQw DQpfX2RvX2V4ZWN2ZV9maWxlLmlzcmEuNDArMHg1ZDQvMHg4YTANCl9feDY0X3N5c19leGVjdmUr MHg0OS8weDYwDQpkb19zeXNjYWxsXzY0KzB4NjQvMHgyMjANCmVudHJ5X1NZU0NBTExfNjRfYWZ0 ZXJfaHdmcmFtZSsweDQ0LzB4YTkNCg0KVGhlIHByb3Bvc2VkIHNvbHV0aW9uIGlzIHRvIGhhdmUg YSBzZWNvbmQgbXV0ZXggdGhhdCBpcw0KdXNlZCBpbiBtbV9hY2Nlc3MsIHNvIGl0IGlzIGFsbG93 ZWQgdG8gY29udGludWUgd2hpbGUgdGhlDQpkeWluZyB0aHJlYWRzIGFyZSBub3QgeWV0IHRlcm1p bmF0ZWQuDQoNCkkgYWxzbyB0b29rIHRoZSBvcHBvcnR1bml0eSB0byBpbXByb3ZlIHRoZSBkb2N1 bWVudGF0aW9uDQpvZiBwcmVwYXJlX2NyZWRzLCB3aGljaCBpcyBvYnZpb3VzbHkgb3V0IG9mIHN5 bmMuDQoNClNpZ25lZC1vZmYtYnk6IEJlcm5kIEVkbGluZ2VyIDxiZXJuZC5lZGxpbmdlckBob3Rt YWlsLmRlPg0KLS0tDQogRG9jdW1lbnRhdGlvbi9zZWN1cml0eS9jcmVkZW50aWFscy5yc3QgICAg fCAxOCArKysrKystLS0tLS0NCiBmcy9leGVjLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICA5ICsrKysrKw0KIGluY2x1ZGUvbGludXgvYmluZm10cy5oICAgICAgICAgICAgICAg ICAgIHwgIDYgKysrLQ0KIGluY2x1ZGUvbGludXgvc2NoZWQvc2lnbmFsLmggICAgICAgICAgICAg IHwgIDEgKw0KIGluaXQvaW5pdF90YXNrLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEg Kw0KIGtlcm5lbC9jcmVkLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0NCiBr ZXJuZWwvZm9yay5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsrLS0NCiBtbS9w cm9jZXNzX3ZtX2FjY2Vzcy5jICAgICAgICAgICAgICAgICAgICB8ICAyICstDQogdG9vbHMvdGVz dGluZy9zZWxmdGVzdHMvcHRyYWNlL01ha2VmaWxlICAgfCAgNCArLS0NCiB0b29scy90ZXN0aW5n L3NlbGZ0ZXN0cy9wdHJhY2Uvdm1hY2Nlc3MuYyB8IDQ2ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysNCiAxMCBmaWxlcyBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlv bnMoLSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQgdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvcHRyYWNl L3ZtYWNjZXNzLmMNCg0KdjI6IGFkZHMgYSB0ZXN0IGNhc2Ugd2hpY2ggcGFzc2VzIHdoZW4gdGhp cyBwYXRjaCBpcyBhcHBsaWVkLg0KDQoNCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3NlY3Vy aXR5L2NyZWRlbnRpYWxzLnJzdCBiL0RvY3VtZW50YXRpb24vc2VjdXJpdHkvY3JlZGVudGlhbHMu cnN0DQppbmRleCAyODJlNzlmLi5jOThlMGE4IDEwMDY0NA0KLS0tIGEvRG9jdW1lbnRhdGlvbi9z ZWN1cml0eS9jcmVkZW50aWFscy5yc3QNCisrKyBiL0RvY3VtZW50YXRpb24vc2VjdXJpdHkvY3Jl ZGVudGlhbHMucnN0DQpAQCAtNDM3LDkgKzQzNywxMyBAQCBuZXcgc2V0IG9mIGNyZWRlbnRpYWxz IGJ5IGNhbGxpbmc6Og0KIA0KIAlzdHJ1Y3QgY3JlZCAqcHJlcGFyZV9jcmVkcyh2b2lkKTsNCiAN Ci10aGlzIGxvY2tzIGN1cnJlbnQtPmNyZWRfcmVwbGFjZV9tdXRleCBhbmQgdGhlbiBhbGxvY2F0 ZXMgYW5kIGNvbnN0cnVjdHMgYQ0KLWR1cGxpY2F0ZSBvZiB0aGUgY3VycmVudCBwcm9jZXNzJ3Mg Y3JlZGVudGlhbHMsIHJldHVybmluZyB3aXRoIHRoZSBtdXRleCBzdGlsbA0KLWhlbGQgaWYgc3Vj Y2Vzc2Z1bC4gIEl0IHJldHVybnMgTlVMTCBpZiBub3Qgc3VjY2Vzc2Z1bCAob3V0IG9mIG1lbW9y eSkuDQordGhpcyBhbGxvY2F0ZXMgYW5kIGNvbnN0cnVjdHMgYSBkdXBsaWNhdGUgb2YgdGhlIGN1 cnJlbnQgcHJvY2VzcydzIGNyZWRlbnRpYWxzLg0KK0l0IHJldHVybnMgTlVMTCBpZiBub3Qgc3Vj Y2Vzc2Z1bCAob3V0IG9mIG1lbW9yeSkuDQorDQorSWYgY2FsbGVkIGZyb20gX19kb19leGVjdmVf ZmlsZSwgdGhlIG11dGV4IGN1cnJlbnQtPnNpZ25hbC0+Y3JlZF9ndWFyZF9tdXRleA0KK2lzIGFj cXVpcmVkIGJlZm9yZSB0aGlzIGZ1bmN0aW9uIGdldHMgY2FsbGVkLCBhbmQgdGhlIG11dGV4DQor Y3VycmVudC0+c2lnbmFsLT5jcmVkX2NoYW5nZV9tdXRleCBpcyBhY3F1aXJlZCBsYXRlciwgd2hp bGUgdGhlIGNyZWRlbnRpYWxzDQorYW5kIHRoZSBwcm9jZXNzIG1tYXAgYXJlIGFjdHVhbGx5IGNo YW5nZWQuDQogDQogVGhlIG11dGV4IHByZXZlbnRzIGBgcHRyYWNlKClgYCBmcm9tIGFsdGVyaW5n IHRoZSBwdHJhY2Ugc3RhdGUgb2YgYSBwcm9jZXNzDQogd2hpbGUgc2VjdXJpdHkgY2hlY2tzIG9u IGNyZWRlbnRpYWxzIGNvbnN0cnVjdGlvbiBhbmQgY2hhbmdpbmcgaXMgdGFraW5nIHBsYWNlDQpA QCAtNDY2LDkgKzQ3MCw4IEBAIGJ5IGNhbGxpbmc6Og0KIA0KIFRoaXMgd2lsbCBhbHRlciB2YXJp b3VzIGFzcGVjdHMgb2YgdGhlIGNyZWRlbnRpYWxzIGFuZCB0aGUgcHJvY2VzcywgZ2l2aW5nIHRo ZQ0KIExTTSBhIGNoYW5jZSB0byBkbyBsaWtld2lzZSwgdGhlbiBpdCB3aWxsIHVzZSBgYHJjdV9h c3NpZ25fcG9pbnRlcigpYGAgdG8NCi1hY3R1YWxseSBjb21taXQgdGhlIG5ldyBjcmVkZW50aWFs cyB0byBgYGN1cnJlbnQtPmNyZWRgYCwgaXQgd2lsbCByZWxlYXNlDQotYGBjdXJyZW50LT5jcmVk X3JlcGxhY2VfbXV0ZXhgYCB0byBhbGxvdyBgYHB0cmFjZSgpYGAgdG8gdGFrZSBwbGFjZSwgYW5k IGl0DQotd2lsbCBub3RpZnkgdGhlIHNjaGVkdWxlciBhbmQgb3RoZXJzIG9mIHRoZSBjaGFuZ2Vz Lg0KK2FjdHVhbGx5IGNvbW1pdCB0aGUgbmV3IGNyZWRlbnRpYWxzIHRvIGBgY3VycmVudC0+Y3Jl ZGBgLCBhbmQgaXQgd2lsbCBub3RpZnkNCit0aGUgc2NoZWR1bGVyIGFuZCBvdGhlcnMgb2YgdGhl IGNoYW5nZXMuDQogDQogVGhpcyBmdW5jdGlvbiBpcyBndWFyYW50ZWVkIHRvIHJldHVybiAwLCBz byB0aGF0IGl0IGNhbiBiZSB0YWlsLWNhbGxlZCBhdCB0aGUNCiBlbmQgb2Ygc3VjaCBmdW5jdGlv bnMgYXMgYGBzeXNfc2V0cmVzdWlkKClgYC4NCkBAIC00ODYsOCArNDg5LDcgQEAgaW52b2tlZDo6 DQogDQogCXZvaWQgYWJvcnRfY3JlZHMoc3RydWN0IGNyZWQgKm5ldyk7DQogDQotVGhpcyByZWxl YXNlcyB0aGUgbG9jayBvbiBgYGN1cnJlbnQtPmNyZWRfcmVwbGFjZV9tdXRleGBgIHRoYXQNCi1g YHByZXBhcmVfY3JlZHMoKWBgIGdvdCBhbmQgdGhlbiByZWxlYXNlcyB0aGUgbmV3IGNyZWRlbnRp YWxzLg0KK1RoaXMgcmVsZWFzZXMgdGhlIG5ldyBjcmVkZW50aWFscy4NCiANCiANCiBBIHR5cGlj YWwgY3JlZGVudGlhbHMgYWx0ZXJhdGlvbiBmdW5jdGlvbiB3b3VsZCBsb29rIHNvbWV0aGluZyBs aWtlIHRoaXM6Og0KZGlmZiAtLWdpdCBhL2ZzL2V4ZWMuYyBiL2ZzL2V4ZWMuYw0KaW5kZXggNzRk ODhkYS4uYTY4ODRlNCAxMDA2NDQNCi0tLSBhL2ZzL2V4ZWMuYw0KKysrIGIvZnMvZXhlYy5jDQpA QCAtMTI2Niw2ICsxMjY2LDEyIEBAIGludCBmbHVzaF9vbGRfZXhlYyhzdHJ1Y3QgbGludXhfYmlu cHJtICogYnBybSkNCiAJaWYgKHJldHZhbCkNCiAJCWdvdG8gb3V0Ow0KIA0KKwlyZXR2YWwgPSBt dXRleF9sb2NrX2tpbGxhYmxlKCZjdXJyZW50LT5zaWduYWwtPmNyZWRfY2hhbmdlX211dGV4KTsN CisJaWYgKHJldHZhbCkNCisJCWdvdG8gb3V0Ow0KKw0KKwlicHJtLT5jYWxsZWRfZmx1c2hfb2xk X2V4ZWMgPSAxOw0KKw0KIAkvKg0KIAkgKiBNdXN0IGJlIGNhbGxlZCBfYmVmb3JlXyBleGVjX21t YXAoKSBhcyBicHJtLT5tbSBpcw0KIAkgKiBub3QgdmlzaWJpbGUgdW50aWwgdGhlbi4gVGhpcyBh bHNvIGVuYWJsZXMgdGhlIHVwZGF0ZQ0KQEAgLTE0MjAsNiArMTQyNiw4IEBAIHN0YXRpYyB2b2lk IGZyZWVfYnBybShzdHJ1Y3QgbGludXhfYmlucHJtICpicHJtKQ0KIHsNCiAJZnJlZV9hcmdfcGFn ZXMoYnBybSk7DQogCWlmIChicHJtLT5jcmVkKSB7DQorCQlpZiAoYnBybS0+Y2FsbGVkX2ZsdXNo X29sZF9leGVjKQ0KKwkJCW11dGV4X3VubG9jaygmY3VycmVudC0+c2lnbmFsLT5jcmVkX2NoYW5n ZV9tdXRleCk7DQogCQltdXRleF91bmxvY2soJmN1cnJlbnQtPnNpZ25hbC0+Y3JlZF9ndWFyZF9t dXRleCk7DQogCQlhYm9ydF9jcmVkcyhicHJtLT5jcmVkKTsNCiAJfQ0KQEAgLTE0NjksNiArMTQ3 Nyw3IEBAIHZvaWQgaW5zdGFsbF9leGVjX2NyZWRzKHN0cnVjdCBsaW51eF9iaW5wcm0gKmJwcm0p DQogCSAqIGNyZWRlbnRpYWxzOyBhbnkgdGltZSBhZnRlciB0aGlzIGl0IG1heSBiZSB1bmxvY2tl ZC4NCiAJICovDQogCXNlY3VyaXR5X2Jwcm1fY29tbWl0dGVkX2NyZWRzKGJwcm0pOw0KKwltdXRl eF91bmxvY2soJmN1cnJlbnQtPnNpZ25hbC0+Y3JlZF9jaGFuZ2VfbXV0ZXgpOw0KIAltdXRleF91 bmxvY2soJmN1cnJlbnQtPnNpZ25hbC0+Y3JlZF9ndWFyZF9tdXRleCk7DQogfQ0KIEVYUE9SVF9T WU1CT0woaW5zdGFsbF9leGVjX2NyZWRzKTsNCmRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L2Jp bmZtdHMuaCBiL2luY2x1ZGUvbGludXgvYmluZm10cy5oDQppbmRleCBiNDBmYzYzLi4yZTEzMThi IDEwMDY0NA0KLS0tIGEvaW5jbHVkZS9saW51eC9iaW5mbXRzLmgNCisrKyBiL2luY2x1ZGUvbGlu dXgvYmluZm10cy5oDQpAQCAtNDQsNyArNDQsMTEgQEAgc3RydWN0IGxpbnV4X2JpbnBybSB7DQog CQkgKiBleGVjIGhhcyBoYXBwZW5lZC4gVXNlZCB0byBzYW5pdGl6ZSBleGVjdXRpb24gZW52aXJv bm1lbnQNCiAJCSAqIGFuZCB0byBzZXQgQVRfU0VDVVJFIGF1eHYgZm9yIGdsaWJjLg0KIAkJICov DQotCQlzZWN1cmVleGVjOjE7DQorCQlzZWN1cmVleGVjOjEsDQorCQkvKg0KKwkJICogU2V0IGJ5 IGZsdXNoX29sZF9leGVjLCB3aGVuIHRoZSBjcmVkX2NoYW5nZV9tdXRleCBpcyB0YWtlbi4NCisJ CSAqLw0KKwkJY2FsbGVkX2ZsdXNoX29sZF9leGVjOjE7DQogI2lmZGVmIF9fYWxwaGFfXw0KIAl1 bnNpZ25lZCBpbnQgdGFzbzoxOw0KICNlbmRpZg0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgv c2NoZWQvc2lnbmFsLmggYi9pbmNsdWRlL2xpbnV4L3NjaGVkL3NpZ25hbC5oDQppbmRleCA4ODA1 MDI1Li4zN2VlYWJlIDEwMDY0NA0KLS0tIGEvaW5jbHVkZS9saW51eC9zY2hlZC9zaWduYWwuaA0K KysrIGIvaW5jbHVkZS9saW51eC9zY2hlZC9zaWduYWwuaA0KQEAgLTIyNSw2ICsyMjUsNyBAQCBz dHJ1Y3Qgc2lnbmFsX3N0cnVjdCB7DQogCXN0cnVjdCBtdXRleCBjcmVkX2d1YXJkX211dGV4Owkv KiBndWFyZCBhZ2FpbnN0IGZvcmVpZ24gaW5mbHVlbmNlcyBvbg0KIAkJCQkJICogY3JlZGVudGlh bCBjYWxjdWxhdGlvbnMNCiAJCQkJCSAqIChub3RhYmx5LiBwdHJhY2UpICovDQorCXN0cnVjdCBt dXRleCBjcmVkX2NoYW5nZV9tdXRleDsgLyogZ3VhcmQgYWdhaW5zdCBjcmVkZW50aWFscyBjaGFu Z2UgKi8NCiB9IF9fcmFuZG9taXplX2xheW91dDsNCiANCiAvKg0KZGlmZiAtLWdpdCBhL2luaXQv aW5pdF90YXNrLmMgYi9pbml0L2luaXRfdGFzay5jDQppbmRleCA5ZTVjYmU1Li42Y2Q5YTBmIDEw MDY0NA0KLS0tIGEvaW5pdC9pbml0X3Rhc2suYw0KKysrIGIvaW5pdC9pbml0X3Rhc2suYw0KQEAg LTI2LDYgKzI2LDcgQEANCiAJLm11bHRpcHJvY2Vzcwk9IEhMSVNUX0hFQURfSU5JVCwNCiAJLnJs aW0JCT0gSU5JVF9STElNSVRTLA0KIAkuY3JlZF9ndWFyZF9tdXRleCA9IF9fTVVURVhfSU5JVElB TElaRVIoaW5pdF9zaWduYWxzLmNyZWRfZ3VhcmRfbXV0ZXgpLA0KKwkuY3JlZF9jaGFuZ2VfbXV0 ZXggPSBfX01VVEVYX0lOSVRJQUxJWkVSKGluaXRfc2lnbmFscy5jcmVkX2NoYW5nZV9tdXRleCks DQogI2lmZGVmIENPTkZJR19QT1NJWF9USU1FUlMNCiAJLnBvc2l4X3RpbWVycyA9IExJU1RfSEVB RF9JTklUKGluaXRfc2lnbmFscy5wb3NpeF90aW1lcnMpLA0KIAkuY3B1dGltZXIJPSB7DQpkaWZm IC0tZ2l0IGEva2VybmVsL2NyZWQuYyBiL2tlcm5lbC9jcmVkLmMNCmluZGV4IDgwOWE5ODUuLmU0 Yzc4ZGUgMTAwNjQ0DQotLS0gYS9rZXJuZWwvY3JlZC5jDQorKysgYi9rZXJuZWwvY3JlZC5jDQpA QCAtNjc2LDcgKzY3Niw3IEBAIHZvaWQgX19pbml0IGNyZWRfaW5pdCh2b2lkKQ0KICAqDQogICog UmV0dXJucyB0aGUgbmV3IGNyZWRlbnRpYWxzIG9yIE5VTEwgaWYgb3V0IG9mIG1lbW9yeS4NCiAg Kg0KLSAqIERvZXMgbm90IHRha2UsIGFuZCBkb2VzIG5vdCByZXR1cm4gaG9sZGluZyBjdXJyZW50 LT5jcmVkX3JlcGxhY2VfbXV0ZXguDQorICogRG9lcyBub3QgdGFrZSwgYW5kIGRvZXMgbm90IHJl dHVybiBob2xkaW5nIC0+Y3JlZF9ndWFyZF9tdXRleC4NCiAgKi8NCiBzdHJ1Y3QgY3JlZCAqcHJl cGFyZV9rZXJuZWxfY3JlZChzdHJ1Y3QgdGFza19zdHJ1Y3QgKmRhZW1vbikNCiB7DQpkaWZmIC0t Z2l0IGEva2VybmVsL2ZvcmsuYyBiL2tlcm5lbC9mb3JrLmMNCmluZGV4IDA4MDgwOTUuLjAzOTUx NTQgMTAwNjQ0DQotLS0gYS9rZXJuZWwvZm9yay5jDQorKysgYi9rZXJuZWwvZm9yay5jDQpAQCAt MTIyNCw3ICsxMjI0LDcgQEAgc3RydWN0IG1tX3N0cnVjdCAqbW1fYWNjZXNzKHN0cnVjdCB0YXNr X3N0cnVjdCAqdGFzaywgdW5zaWduZWQgaW50IG1vZGUpDQogCXN0cnVjdCBtbV9zdHJ1Y3QgKm1t Ow0KIAlpbnQgZXJyOw0KIA0KLQllcnIgPSAgbXV0ZXhfbG9ja19raWxsYWJsZSgmdGFzay0+c2ln bmFsLT5jcmVkX2d1YXJkX211dGV4KTsNCisJZXJyID0gIG11dGV4X2xvY2tfa2lsbGFibGUoJnRh c2stPnNpZ25hbC0+Y3JlZF9jaGFuZ2VfbXV0ZXgpOw0KIAlpZiAoZXJyKQ0KIAkJcmV0dXJuIEVS Ul9QVFIoZXJyKTsNCiANCkBAIC0xMjM0LDcgKzEyMzQsNyBAQCBzdHJ1Y3QgbW1fc3RydWN0ICpt bV9hY2Nlc3Moc3RydWN0IHRhc2tfc3RydWN0ICp0YXNrLCB1bnNpZ25lZCBpbnQgbW9kZSkNCiAJ CW1tcHV0KG1tKTsNCiAJCW1tID0gRVJSX1BUUigtRUFDQ0VTKTsNCiAJfQ0KLQltdXRleF91bmxv Y2soJnRhc2stPnNpZ25hbC0+Y3JlZF9ndWFyZF9tdXRleCk7DQorCW11dGV4X3VubG9jaygmdGFz ay0+c2lnbmFsLT5jcmVkX2NoYW5nZV9tdXRleCk7DQogDQogCXJldHVybiBtbTsNCiB9DQpAQCAt MTU5NCw2ICsxNTk0LDcgQEAgc3RhdGljIGludCBjb3B5X3NpZ25hbCh1bnNpZ25lZCBsb25nIGNs b25lX2ZsYWdzLCBzdHJ1Y3QgdGFza19zdHJ1Y3QgKnRzaykNCiAJc2lnLT5vb21fc2NvcmVfYWRq X21pbiA9IGN1cnJlbnQtPnNpZ25hbC0+b29tX3Njb3JlX2Fkal9taW47DQogDQogCW11dGV4X2lu aXQoJnNpZy0+Y3JlZF9ndWFyZF9tdXRleCk7DQorCW11dGV4X2luaXQoJnNpZy0+Y3JlZF9jaGFu Z2VfbXV0ZXgpOw0KIA0KIAlyZXR1cm4gMDsNCiB9DQpkaWZmIC0tZ2l0IGEvbW0vcHJvY2Vzc192 bV9hY2Nlc3MuYyBiL21tL3Byb2Nlc3Nfdm1fYWNjZXNzLmMNCmluZGV4IDM1N2FhN2IuLmIzZTZl YjUgMTAwNjQ0DQotLS0gYS9tbS9wcm9jZXNzX3ZtX2FjY2Vzcy5jDQorKysgYi9tbS9wcm9jZXNz X3ZtX2FjY2Vzcy5jDQpAQCAtMjA0LDcgKzIwNCw3IEBAIHN0YXRpYyBzc2l6ZV90IHByb2Nlc3Nf dm1fcndfY29yZShwaWRfdCBwaWQsIHN0cnVjdCBpb3ZfaXRlciAqaXRlciwNCiAJaWYgKCFtbSB8 fCBJU19FUlIobW0pKSB7DQogCQlyYyA9IElTX0VSUihtbSkgPyBQVFJfRVJSKG1tKSA6IC1FU1JD SDsNCiAJCS8qDQotCQkgKiBFeHBsaWNpdGx5IG1hcCBFQUNDRVMgdG8gRVBFUk0gYXMgRVBFUk0g aXMgYSBtb3JlIGENCisJCSAqIEV4cGxpY2l0bHkgbWFwIEVBQ0NFUyB0byBFUEVSTSBhcyBFUEVS TSBpcyBhIG1vcmUNCiAJCSAqIGFwcHJvcHJpYXRlIGVycm9yIGNvZGUgZm9yIHByb2Nlc3Nfdndf cmVhZHYvd3JpdGV2DQogCQkgKi8NCiAJCWlmIChyYyA9PSAtRUFDQ0VTKQ0KZGlmZiAtLWdpdCBh L3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3B0cmFjZS9NYWtlZmlsZSBiL3Rvb2xzL3Rlc3Rpbmcv c2VsZnRlc3RzL3B0cmFjZS9NYWtlZmlsZQ0KaW5kZXggYzBiN2Y4OS4uMmYxZjUzMiAxMDA2NDQN Ci0tLSBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3B0cmFjZS9NYWtlZmlsZQ0KKysrIGIvdG9v bHMvdGVzdGluZy9zZWxmdGVzdHMvcHRyYWNlL01ha2VmaWxlDQpAQCAtMSw2ICsxLDYgQEANCiAj IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wLW9ubHkNCi1DRkxBR1MgKz0gLWlxdW90 ZS4uLy4uLy4uLy4uL2luY2x1ZGUvdWFwaSAtV2FsbA0KK0NGTEFHUyArPSAtc3RkPWM5OSAtcHRo cmVhZCAtaXF1b3RlLi4vLi4vLi4vLi4vaW5jbHVkZS91YXBpIC1XYWxsDQogDQotVEVTVF9HRU5f UFJPR1MgOj0gZ2V0X3N5c2NhbGxfaW5mbyBwZWVrc2lnaW5mbw0KK1RFU1RfR0VOX1BST0dTIDo9 IGdldF9zeXNjYWxsX2luZm8gcGVla3NpZ2luZm8gdm1hY2Nlc3MNCiANCiBpbmNsdWRlIC4uL2xp Yi5taw0KZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3B0cmFjZS92bWFjY2Vz cy5jIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvcHRyYWNlL3ZtYWNjZXNzLmMNCm5ldyBmaWxl IG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwLi5lZjA4YzlmDQotLS0gL2Rldi9udWxsDQorKysg Yi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9wdHJhY2Uvdm1hY2Nlc3MuYw0KQEAgLTAsMCArMSw0 NiBAQA0KKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wKw0KKy8qDQorICogQ29w eXJpZ2h0IChjKSAyMDIwIEJlcm5kIEVkbGluZ2VyIDxiZXJuZC5lZGxpbmdlckBob3RtYWlsLmRl Pg0KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuDQorICoNCisgKiBDaGVjayB3aGV0aGVyIC9wcm9j LyRwaWQvbWVtIGNhbiBiZSBhY2Nlc3NlZCB3aXRob3V0IGNhdXNpbmcgZGVhZGxvY2tzDQorICog d2hlbiBkZV90aHJlYWQgaXMgYmxvY2tlZCB3aXRoIC0+Y3JlZF9ndWFyZF9tdXRleCBoZWxkLg0K KyAqLw0KKw0KKyNpbmNsdWRlICIuLi9rc2VsZnRlc3RfaGFybmVzcy5oIg0KKyNpbmNsdWRlIDxz dGRpby5oPg0KKyNpbmNsdWRlIDxmY250bC5oPg0KKyNpbmNsdWRlIDxwdGhyZWFkLmg+DQorI2lu Y2x1ZGUgPHNpZ25hbC5oPg0KKyNpbmNsdWRlIDx1bmlzdGQuaD4NCisjaW5jbHVkZSA8c3lzL3B0 cmFjZS5oPg0KKw0KK3N0YXRpYyB2b2lkICp0aHJlYWQodm9pZCAqYXJnKQ0KK3sNCisJcHRyYWNl KFBUUkFDRV9UUkFDRU1FLCAwLCAwLCAwKTsNCisJcmV0dXJuIE5VTEw7DQorfQ0KKw0KK1RFU1Qo dm1hY2Nlc3MpDQorew0KKwlpbnQgZiwgcGlkID0gZm9yaygpOw0KKwljaGFyIG1tWzY0XTsNCisN CisJaWYgKCFwaWQpIHsNCisJCXB0aHJlYWRfdCBwdDsNCisJCXB0aHJlYWRfY3JlYXRlKCZwdCwg TlVMTCwgdGhyZWFkLCBOVUxMKTsNCisJCXB0aHJlYWRfam9pbihwdCwgTlVMTCk7DQorCQlleGVj bHAoInRydWUiLCAidHJ1ZSIsIE5VTEwpOw0KKwl9DQorDQorCXNsZWVwKDEpOw0KKwlzcHJpbnRm KG1tLCAiL3Byb2MvJWQvbWVtIiwgcGlkKTsNCisJZiA9IG9wZW4obW0sIE9fUkRPTkxZKTsNCisJ QVNTRVJUX0xFKDAsIGYpDQorCQljbG9zZShmKTsNCisJLyogdGhpcyBpcyBub3QgZml4ZWQhIHB0 cmFjZShQVFJBQ0VfQVRUQUNILCBwaWQsIDAsMCk7ICovDQorCWYgPSBraWxsKHBpZCwgU0lHQ09O VCk7DQorCUFTU0VSVF9FUSgwLCBmKTsNCit9DQorDQorVEVTVF9IQVJORVNTX01BSU4NCi0tIA0K MS45LjENCg==