From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.4 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AEE3FC11F66 for ; Tue, 13 Jul 2021 06:40:39 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6458361249 for ; Tue, 13 Jul 2021 06:40:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6458361249 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=amd.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B08DA6E03A; Tue, 13 Jul 2021 06:40:38 +0000 (UTC) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2076.outbound.protection.outlook.com [40.107.243.76]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5DC206E037; Tue, 13 Jul 2021 06:40:37 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SpqsXs83DZIMJNscR08AKDwQrm9CKZ2WjOuHygG/4lUfUiOMuHhQjezm4+1t9JcS9tMeRVssQ5WGtfVaf91x05GwPswDYhMu0MRr8XQ4mk2P9lJCKyECEdXgRlnjlpNIX5ttkPkp7g//IlGUzpz5qMjnysgirRsFv280TfWPSZcL070n5KCDoLBf0EM4Baq4RfDt7X0FbKZ1OwfjgRziAxJtxgpdiG6OfWQ0zQtbtXE+cQ9PyNGb2xjT41514GLk7bzT/e49SJ9lx1cqxz6PQD2Qu7D3dFHxcaqobLh6Y1BvisbFiouvyc8ie4X+FdVJ3038o/vHprpmIhXWF08tQg== 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=w/5ZK/uBMBUMAfSe7r/Ub4ywOX+wovaiAOryCx6R4xw=; b=QgIlkXyjY+7QPeVmzX1ThkippyryTMk1SwNv+HgHY9uYryY7N8IGgptPSW/idQxWacjkIBPIFUMSzHj9vkJ564xq/bXB7BWD+UU25tZpoy7aAykdnCM5QWl2zz7vjjPURRX48AXWDqjF699YnEz42iHfXRy+N1jVig3xlULzqNPbzxkg6jpk7rq4almMgwzrECMSXU0uqq77FaJvVuPiJcZpqInvCf1g6bXGAoy/ZfSCVo7dUu3uqLCgA7M9rOOvpwMofrxtgEOH40qw0PYQuge2o0F4uH/ljdLN7Wu2Zzo04HJZpCnkjQZGZZWlPHZ98nBmpBWH38Ch48qRbBg5Xg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=w/5ZK/uBMBUMAfSe7r/Ub4ywOX+wovaiAOryCx6R4xw=; b=pBy5KEfL5Af6yCyGCwZVG2Heczwpbqp0q66+u4xPH6BTK5GM1PnQRlrh+CfrrU2ieyCDM92rMFVIde1GhCT1lVTDri29yBy8aIolbjNhQ9b1DruR1KvIMyYknvrKjkCEc8LuHT3oBHGNGpdLDewAksLOyHbrCbiqccPrmH/q49E= Authentication-Results: anholt.net; dkim=none (message not signed) header.d=none;anholt.net; dmarc=none action=none header.from=amd.com; Received: from MN2PR12MB3775.namprd12.prod.outlook.com (2603:10b6:208:159::19) by MN2PR12MB4304.namprd12.prod.outlook.com (2603:10b6:208:1d0::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4308.20; Tue, 13 Jul 2021 06:40:33 +0000 Received: from MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::6c9e:1e08:7617:f756]) by MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::6c9e:1e08:7617:f756%5]) with mapi id 15.20.4308.027; Tue, 13 Jul 2021 06:40:33 +0000 To: Daniel Vetter , DRI Development References: <20210712175352.802687-1-daniel.vetter@ffwll.ch> <20210712175352.802687-2-daniel.vetter@ffwll.ch> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <0058920a-935a-20f2-9342-bda81485027f@amd.com> Date: Tue, 13 Jul 2021 08:40:18 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 In-Reply-To: <20210712175352.802687-2-daniel.vetter@ffwll.ch> Content-Language: en-US X-ClientProxiedBy: FR3P281CA0050.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4a::19) To MN2PR12MB3775.namprd12.prod.outlook.com (2603:10b6:208:159::19) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [IPv6:2a02:908:1252:fb60:7f5a:cff:4644:b698] (2a02:908:1252:fb60:7f5a:cff:4644:b698) by FR3P281CA0050.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.10 via Frontend Transport; Tue, 13 Jul 2021 06:40:22 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 86a395de-05f7-479e-b453-08d945c91d2f X-MS-TrafficTypeDiagnostic: MN2PR12MB4304: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1850; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Lnx4qVZkcTpZKvU+DU2tEfVsZtv+LKqu3bnZNZmJ4pFPWesBqFj2fZ+Ynrloe4SUUrvSzWNG7pvifQ26/0VrGL/hkrrYO72V/I1/QPv92qmbt5UNZzTm2l37E7AI3zBg0NKxBS7pYYw7KFMkygQKdhvAnoEkxT0yw2HJ00OKY0uhKiV8qDAgeOf4nNjfgyVa6SHGuQjDcpkwJ9oYri0eoOLD2G+m4k62iJu4imyyBzylRgGBY8m9XyVs9JSPs9/WO19oM/65f5sKdE/qCrnmQUXv0NSP0+wnPNhrxrDykyFWwJwHP809bT0Xmghp8Pi89TRHKyhXOg7YjRtOH4oYu2hy3vqhB2nLhaLDwgrKjv2uex/LuGla8HTIPywd0F0Bc+yiHDGFRwHvwksb/88Ta8qj0EsFSuaFBasTM+BScxBxLw9AxvpiexBIn9ziUuQaUHdUzAoYptuZhG3qGmhp++mdTQaOuXVhS1gWj2wnIhEK7FlLm5YwES/ZCN7wfqsS7jBdvWJ4m6cAaCxIwMiFoPYEU0IpT+dkFkeswojlXWyp/AuuYyeR01ozoGa5hBGARcc4E63Metn1Zf+g91cQLmfkIZeLnC28ELsEJPUq/bpa5BfYDO19YLvS2K6RBCzKUtsX/s7MWBBzMcDagUphMu+Nnvt+zJWVckf12cFEOXhXRcejs3G66F7xJmqi6Nl8FUBF8dHS4eN8ult0A65aImnI4dJalp2Q+kaMABrD7gI= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR12MB3775.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(39860400002)(396003)(376002)(346002)(366004)(66574015)(8676002)(7406005)(83380400001)(66556008)(38100700002)(31696002)(30864003)(2616005)(2906002)(7416002)(31686004)(6666004)(8936002)(478600001)(36756003)(186003)(6486002)(316002)(110136005)(54906003)(86362001)(5660300002)(4326008)(66476007)(66946007)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Z21OTGlwSXg4Z3orbElEcjdiVk1ackE5Wk5vejhPUVRKRlJhU3dFdm1Odmt6?= =?utf-8?B?czRuZnE1SGxQemRBbVVMNGlpVDE2QkRRUkVaMU0wVllmc1NqSzNkYzFDUEhW?= =?utf-8?B?VmpGVHBFUjJCYVdhSjVIQmp4L0lIWSs3RkRiN0dRTUxuSUNPTXhMTlljK3hB?= =?utf-8?B?MjVadlF2KzczUHNHUDZnNmxwZzJxWWV6T05tc2FETEhMOXZ3WThOR0Z4eWFr?= =?utf-8?B?UDhxRHMyaDVtUElEWkQvUlUwdC9rT2NqeGI5QmF2WHhiVDZucWV6UUJYbmtX?= =?utf-8?B?eUZRa2xaUFluR2xxcjZpSE9VamdXUEZLeDJiZVBxaHZ4WkYxbytBSXNnRWFu?= =?utf-8?B?ZlJrbXJIbkxsQmVnTWxEK1Z0a016cWd3R28yZk85d1gzWHJveXZTMzlLd1dG?= =?utf-8?B?eC9mYzNqMUxTeGRJTmhrL3pFbExjcERweVAxaFlvSi9LZ3JLM1A0Z05zc3p5?= =?utf-8?B?WjduaDlZYUUwTURjdTN1ZzJjNXN0RmVZQnBPSnpKTmlscGVVZ0xjLzlEMVZT?= =?utf-8?B?NHovejNac2RVSTJud3ZNN3lrL2paSXBjbXJ4TGd1Y2tlRHFDekxsTzBGdHBh?= =?utf-8?B?ckJKZFpXS0tDeWlkeFkvYUgydTF1OE1lTXpCOGhCcDA4UEdaaHZUWURhbmlG?= =?utf-8?B?elgyalRDQlVJV2RhNVJXcG80Vm4zMVdSbmIrYktpRCtpSFBvM3RjNHVLc3NF?= =?utf-8?B?b3hjcDlkeC91aDNiS3NpNTBQOXRmVVJiRUhnbktUN2phZDRYVjdHaGNJVXBj?= =?utf-8?B?Z3Q3djNGNk51K0pWbFVrYVVLYWZvcEpaNlVpY0hWZFlaY015S1BPckdMT2Ny?= =?utf-8?B?cDhtMHlFVklQY3orc0JkTWEwR1o1ckV3N2lqa0tvUHNlaFFuVnkra0d5Slh5?= =?utf-8?B?enQxMHhrdDBpNm5OY3UxV3R0WDNsVmNaRGpIemVwNjJ6REdqSFNlM240R0RC?= =?utf-8?B?MmJabGUreFlZZ0VERkVqL2MvOGV4aWVTZTloUVVDZkpaMUJ5S2g2cEJPY2ZZ?= =?utf-8?B?RFRIY2JZeGNRNjhpQVlVU3NlNWFkN1hhMkNycEJXaGNoWkpSeldLcCtiYVVG?= =?utf-8?B?ajZvQ2x6ZFdRS0d1TW55c3NSWTZIdjRjRGh3ZjlWUE4zeUkwRXZuYXgrNnFL?= =?utf-8?B?TUlVekNVV291OGYxSnhMQTZxOUJCcGpVSkJYU0tBNUMwZWxlUzdvTUErVGgz?= =?utf-8?B?UWVzSEFPL2lzK2wwMmZxRllxR0Q1SW4xQlNKLzV3UTZRSkFrd29sZmtnRFpy?= =?utf-8?B?Tk96YTJDQVU0bUZBUW41VGNxekpUeHBSODROd3VhTWZVeHkwRnI4TjVJOFZl?= =?utf-8?B?T3JPOWFsVFE2cnpxM2g3WmpWcG16WHpKVUZqWWdhYUVyaFJTZkxYU1RhaUhG?= =?utf-8?B?b1JSay82VGpwQ1V2bmdsOUcxdXVYSFUwa0EzSkdndmZRVWR1ZkZ5SXBzeWh3?= =?utf-8?B?ZDV6Yys2VTdpSElWQlEzT2pCYUtCTUJnaHBOVTEyRHFqWnJ5TmFZZEN4Uk9Z?= =?utf-8?B?VzdGY3J0Szcza0lWakdhQ1ZtK3F6NlUvMm83ZEkxNUhCS2QxV2llbEtGbmpv?= =?utf-8?B?QlpCYkZLeldRSkg1OTlBOVhWUjByb2NiNU1ybnBwOURZazhsdDZLZXdmNjVw?= =?utf-8?B?dWRtMW5HeXNDV1h5WVQ5STFvVUlWSlFKSTRicjFIY2FKamJucWdlRXJpTUFr?= =?utf-8?B?NEpiRVhMbzNZR1VxeUVZT1hyZDMwUElSZDdCUkJndjNPcEhoWEZ2VWN2a3Za?= =?utf-8?B?cHJGakFBZ0ZsTjFia1pCZDJDeXEydld1Y1dRbldKYU96WnVEMDY0SDJ6Ym5G?= =?utf-8?B?Q3p3NnUxZlZjWGExS1k0NGdXSTJGZTc2ZzlZRVFWOWQ5SFNpMHBLVmtKSllx?= =?utf-8?Q?sOIFxL+bYg2xd?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 86a395de-05f7-479e-b453-08d945c91d2f X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3775.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jul 2021 06:40:33.4851 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: McTZv68RnoCjHB/I8BmLt7KDz95HTkWU7daswQTWtFVXdNyKP/4jcgG9WWFRhJSA X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4304 Subject: Re: [Intel-gfx] [PATCH v4 01/18] drm/sched: Split drm_sched_job_init X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Emma Anholt , Adam Borowski , David Airlie , Viresh Kumar , Melissa Wen , Nirmoy Das , Daniel Vetter , Lee Jones , Sumit Semwal , Rob Herring , lima@lists.freedesktop.org, Mauro Carvalho Chehab , Masahiro Yamada , Steven Price , Luben Tuikov , Alyssa Rosenzweig , Sami Tolvanen , Russell King , Dave Airlie , =?UTF-8?B?TWFyZWsgT2zFocOhaw==?= , Dennis Li , Chen Li , Paul Menzel , Kees Cook , Intel Graphics Development , Kevin Wang , etnaviv@lists.freedesktop.org, linaro-mm-sig@lists.linaro.org, Nick Terrell , Andrey Grodzovsky , Sonny Jiang , Deepak R Varma , Tomeu Vizoso , Christian Gmeiner , Qiang Yu , Alex Deucher , Tian Tao , linux-media@vger.kernel.org, Lucas Stach Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" QW0gMTIuMDcuMjEgdW0gMTk6NTMgc2NocmllYiBEYW5pZWwgVmV0dGVyOgo+IFRoaXMgaXMgYSB2 ZXJ5IGNvbmZ1c2luZ2x5IG5hbWVkIGZ1bmN0aW9uLCBiZWNhdXNlIG5vdCBqdXN0IGRvZXMgaXQK PiBpbml0IGFuIG9iamVjdCwgaXQgYXJtcyBpdCBhbmQgcHJvdmlkZXMgYSBwb2ludCBvZiBubyBy ZXR1cm4gZm9yCj4gcHVzaGluZyBhIGpvYiBpbnRvIHRoZSBzY2hlZHVsZXIuIEl0IHdvdWxkIGJl IG5pY2UgaWYgdGhhdCdzIGEgYml0Cj4gY2xlYXJlciBpbiB0aGUgaW50ZXJmYWNlLgo+Cj4gQnV0 IHRoZSByZWFsIHJlYXNvbiBpcyB0aGF0IEkgd2FudCB0byBwdXNoIHRoZSBkZXBlbmRlbmN5IHRy YWNraW5nCj4gaGVscGVycyBpbnRvIHRoZSBzY2hlZHVsZXIgY29kZSwgYW5kIHRoYXQgbWVhbnMg ZHJtX3NjaGVkX2pvYl9pbml0Cj4gbXVzdCBiZSBjYWxsZWQgYSBsb3QgZWFybGllciwgd2l0aG91 dCBhcm1pbmcgdGhlIGpvYi4KPgo+IHYyOgo+IC0gZG9uJ3QgY2hhbmdlIC5naXRpZ25vcmUgKFN0 ZXZlbikKPiAtIGRvbid0IGZvcmdldCB2M2QgKEVtbWEpCj4KPiB2MzogRW1tYSBub3RpY2VkIHRo YXQgSSBsZWFrIHRoZSBtZW1vcnkgYWxsb2NhdGVkIGluCj4gZHJtX3NjaGVkX2pvYl9pbml0IGlm IHdlIGJhaWwgb3V0IGJlZm9yZSB0aGUgcG9pbnQgb2Ygbm8gcmV0dXJuIGluCj4gc3Vic2VxdWVu dCBkcml2ZXIgcGF0Y2hlcy4gVG8gYmUgYWJsZSB0byBmaXggdGhpcyBjaGFuZ2UKPiBkcm1fc2No ZWRfam9iX2NsZWFudXAoKSBzbyBpdCBjYW4gaGFuZGxlIGJlaW5nIGNhbGxlZCBib3RoIGJlZm9y ZSBhbmQKPiBhZnRlciBkcm1fc2NoZWRfam9iX2FybSgpLgo+Cj4gQWxzbyBpbXByb3ZlIHRoZSBr ZXJuZWxkb2MgZm9yIHRoaXMuCj4KPiB2NDoKPiAtIEZpeCB0aGUgZHJtX3NjaGVkX2pvYl9jbGVh bnVwIGxvZ2ljLCBJIGludmVydGVkIHRoZSBib29sZWFucywgYXMKPiAgICB1c3VhbCAoTWVsaXNz YSkKPgo+IC0gQ2hyaXN0aWFuIHBvaW50ZWQgb3V0IHRoYXQgZHJtX3NjaGVkX2VudGl0eV9zZWxl Y3RfcnEoKSBhbHNvIG5lZWRzCj4gICAgdG8gYmUgbW92ZWQgaW50byBkcm1fc2NoZWRfam9iX2Fy bSwgd2hpY2ggbWFkZSBtZSByZWFsaXplIHRoYXQgdGhlCj4gICAgam9iLT5pZCBkZWZpbml0ZWx5 IG5lZWRzIHRvIGJlIG1vdmVkIHRvby4KCkFzIGZhciBhcyBJIGNhbiBzZWUgeW91IHN0aWxsIGhh dmUgZHJtX3NjaGVkX2VudGl0eV9zZWxlY3RfcnEoKSBpbiAKZHJtX3NjaGVkX2pvYl9pbml0KCk/ CgpDaHJpc3RpYW4uCgo+Cj4gICAgU2h1ZmZsZSB0aGluZ3MgdG8gZml0IGJldHdlZW4gam9iX2lu aXQgYW5kIGpvYl9hcm0uCj4KPiB2NToKPiBSZXNodWZmbGUgdGhlIHNwbGl0IGJldHdlZW4gaW5p dC9hcm0gb25jZSBtb3JlLCBhbWRncHUgYWJ1c2VzCj4gZHJtX3NjaGVkLnJlYWR5IHRvIHNpZ25h bCBncHUgcmVzZXQgZmFpbHVyZXMuIEFsc28gZG9jdW1lbnQgdGhpcwo+IHNvbWV3aGF0LiAoQ2hy aXN0aWFuKQo+Cj4gQ2M6IE1lbGlzc2EgV2VuIDxtZWxpc3NhLnNyd0BnbWFpbC5jb20+Cj4gQWNr ZWQtYnk6IFN0ZXZlbiBQcmljZSA8c3RldmVuLnByaWNlQGFybS5jb20+ICh2MikKPiBTaWduZWQt b2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KPiBDYzogTHVj YXMgU3RhY2ggPGwuc3RhY2hAcGVuZ3V0cm9uaXguZGU+Cj4gQ2M6IFJ1c3NlbGwgS2luZyA8bGlu dXgrZXRuYXZpdkBhcm1saW51eC5vcmcudWs+Cj4gQ2M6IENocmlzdGlhbiBHbWVpbmVyIDxjaHJp c3RpYW4uZ21laW5lckBnbWFpbC5jb20+Cj4gQ2M6IFFpYW5nIFl1IDx5dXE4MjVAZ21haWwuY29t Pgo+IENjOiBSb2IgSGVycmluZyA8cm9iaEBrZXJuZWwub3JnPgo+IENjOiBUb21ldSBWaXpvc28g PHRvbWV1LnZpem9zb0Bjb2xsYWJvcmEuY29tPgo+IENjOiBTdGV2ZW4gUHJpY2UgPHN0ZXZlbi5w cmljZUBhcm0uY29tPgo+IENjOiBBbHlzc2EgUm9zZW56d2VpZyA8YWx5c3NhLnJvc2VuendlaWdA Y29sbGFib3JhLmNvbT4KPiBDYzogRGF2aWQgQWlybGllIDxhaXJsaWVkQGxpbnV4LmllPgo+IENj OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWxAZmZ3bGwuY2g+Cj4gQ2M6IFN1bWl0IFNlbXdhbCA8c3Vt aXQuc2Vtd2FsQGxpbmFyby5vcmc+Cj4gQ2M6ICJDaHJpc3RpYW4gS8O2bmlnIiA8Y2hyaXN0aWFu LmtvZW5pZ0BhbWQuY29tPgo+IENjOiBNYXNhaGlybyBZYW1hZGEgPG1hc2FoaXJveUBrZXJuZWwu b3JnPgo+IENjOiBLZWVzIENvb2sgPGtlZXNjb29rQGNocm9taXVtLm9yZz4KPiBDYzogQWRhbSBC b3Jvd3NraSA8a2lsb2J5dGVAYW5nYmFuZC5wbD4KPiBDYzogTmljayBUZXJyZWxsIDx0ZXJyZWxs bkBmYi5jb20+Cj4gQ2M6IE1hdXJvIENhcnZhbGhvIENoZWhhYiA8bWNoZWhhYitodWF3ZWlAa2Vy bmVsLm9yZz4KPiBDYzogUGF1bCBNZW56ZWwgPHBtZW56ZWxAbW9sZ2VuLm1wZy5kZT4KPiBDYzog U2FtaSBUb2x2YW5lbiA8c2FtaXRvbHZhbmVuQGdvb2dsZS5jb20+Cj4gQ2M6IFZpcmVzaCBLdW1h ciA8dmlyZXNoLmt1bWFyQGxpbmFyby5vcmc+Cj4gQ2M6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVy LmRldWNoZXJAYW1kLmNvbT4KPiBDYzogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0LmNvbT4K PiBDYzogTmlybW95IERhcyA8bmlybW95LmRhc0BhbWQuY29tPgo+IENjOiBEZWVwYWsgUiBWYXJt YSA8bWgxMmd4MjgyNUBnbWFpbC5jb20+Cj4gQ2M6IExlZSBKb25lcyA8bGVlLmpvbmVzQGxpbmFy by5vcmc+Cj4gQ2M6IEtldmluIFdhbmcgPGtldmluMS53YW5nQGFtZC5jb20+Cj4gQ2M6IENoZW4g TGkgPGNoZW5saUB1bmlvbnRlY2guY29tPgo+IENjOiBMdWJlbiBUdWlrb3YgPGx1YmVuLnR1aWtv dkBhbWQuY29tPgo+IENjOiAiTWFyZWsgT2zFocOhayIgPG1hcmVrLm9sc2FrQGFtZC5jb20+Cj4g Q2M6IERlbm5pcyBMaSA8RGVubmlzLkxpQGFtZC5jb20+Cj4gQ2M6IE1hYXJ0ZW4gTGFua2hvcnN0 IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Cj4gQ2M6IEFuZHJleSBHcm9kem92 c2t5IDxhbmRyZXkuZ3JvZHpvdnNreUBhbWQuY29tPgo+IENjOiBTb25ueSBKaWFuZyA8c29ubnku amlhbmdAYW1kLmNvbT4KPiBDYzogQm9yaXMgQnJlemlsbG9uIDxib3Jpcy5icmV6aWxsb25AY29s bGFib3JhLmNvbT4KPiBDYzogVGlhbiBUYW8gPHRpYW50YW82QGhpc2lsaWNvbi5jb20+Cj4gQ2M6 IGV0bmF2aXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gQ2M6IGxpbWFAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCj4gQ2M6IGxpbnV4LW1lZGlhQHZnZXIua2VybmVsLm9yZwo+IENjOiBsaW5hcm8tbW0t c2lnQGxpc3RzLmxpbmFyby5vcmcKPiBDYzogRW1tYSBBbmhvbHQgPGVtbWFAYW5ob2x0Lm5ldD4K PiAtLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jICAgfCAgMiAr Cj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfam9iLmMgIHwgIDIgKwo+ICAg ZHJpdmVycy9ncHUvZHJtL2V0bmF2aXYvZXRuYXZpdl9zY2hlZC5jICB8ICAyICsKPiAgIGRyaXZl cnMvZ3B1L2RybS9saW1hL2xpbWFfc2NoZWQuYyAgICAgICAgfCAgMiArCj4gICBkcml2ZXJzL2dw dS9kcm0vcGFuZnJvc3QvcGFuZnJvc3Rfam9iLmMgIHwgIDIgKwo+ICAgZHJpdmVycy9ncHUvZHJt L3NjaGVkdWxlci9zY2hlZF9lbnRpdHkuYyB8ICA2ICstLQo+ICAgZHJpdmVycy9ncHUvZHJtL3Nj aGVkdWxlci9zY2hlZF9mZW5jZS5jICB8IDE5ICsrKystLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9z Y2hlZHVsZXIvc2NoZWRfbWFpbi5jICAgfCA2OSArKysrKysrKysrKysrKysrKysrKy0tLS0KPiAg IGRyaXZlcnMvZ3B1L2RybS92M2QvdjNkX2dlbS5jICAgICAgICAgICAgfCAgMiArCj4gICBpbmNs dWRlL2RybS9ncHVfc2NoZWR1bGVyLmggICAgICAgICAgICAgIHwgIDcgKystCj4gICAxMCBmaWxl cyBjaGFuZ2VkLCA5MSBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKPgo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYyBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jCj4gaW5kZXggYzUzODZkMTNlYjRhLi5hNGVjMDky YWY5YTcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Nz LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYwo+IEBAIC0x MjI2LDYgKzEyMjYsOCBAQCBzdGF0aWMgaW50IGFtZGdwdV9jc19zdWJtaXQoc3RydWN0IGFtZGdw dV9jc19wYXJzZXIgKnAsCj4gICAJaWYgKHIpCj4gICAJCWdvdG8gZXJyb3JfdW5sb2NrOwo+ICAg Cj4gKwlkcm1fc2NoZWRfam9iX2FybSgmam9iLT5iYXNlKTsKPiArCj4gICAJLyogTm8gbWVtb3J5 IGFsbG9jYXRpb24gaXMgYWxsb3dlZCB3aGlsZSBob2xkaW5nIHRoZSBub3RpZmllciBsb2NrLgo+ ICAgCSAqIFRoZSBsb2NrIGlzIGhlbGQgdW50aWwgYW1kZ3B1X2NzX3N1Ym1pdCBpcyBmaW5pc2hl ZCBhbmQgZmVuY2UgaXMKPiAgIAkgKiBhZGRlZCB0byBCT3MuCj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9qb2IuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9qb2IuYwo+IGluZGV4IGQzM2U2ZDk3Y2M4OS4uNWRkYjk1NWQyMzE1IDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9qb2IuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9qb2IuYwo+IEBAIC0xNzAsNiAr MTcwLDggQEAgaW50IGFtZGdwdV9qb2Jfc3VibWl0KHN0cnVjdCBhbWRncHVfam9iICpqb2IsIHN0 cnVjdCBkcm1fc2NoZWRfZW50aXR5ICplbnRpdHksCj4gICAJaWYgKHIpCj4gICAJCXJldHVybiBy Owo+ICAgCj4gKwlkcm1fc2NoZWRfam9iX2FybSgmam9iLT5iYXNlKTsKPiArCj4gICAJKmYgPSBk bWFfZmVuY2VfZ2V0KCZqb2ItPmJhc2Uuc19mZW5jZS0+ZmluaXNoZWQpOwo+ICAgCWFtZGdwdV9q b2JfZnJlZV9yZXNvdXJjZXMoam9iKTsKPiAgIAlkcm1fc2NoZWRfZW50aXR5X3B1c2hfam9iKCZq b2ItPmJhc2UsIGVudGl0eSk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9ldG5hdml2 L2V0bmF2aXZfc2NoZWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9ldG5hdml2L2V0bmF2aXZfc2NoZWQu Ywo+IGluZGV4IGZlYjZkYTFiNmNlYi4uMDVmNDEyMjA0MTE4IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9ldG5hdml2L2V0bmF2aXZfc2NoZWQuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9ldG5hdml2L2V0bmF2aXZfc2NoZWQuYwo+IEBAIC0xNjMsNiArMTYzLDggQEAgaW50IGV0bmF2 aXZfc2NoZWRfcHVzaF9qb2Ioc3RydWN0IGRybV9zY2hlZF9lbnRpdHkgKnNjaGVkX2VudGl0eSwK PiAgIAlpZiAocmV0KQo+ICAgCQlnb3RvIG91dF91bmxvY2s7Cj4gICAKPiArCWRybV9zY2hlZF9q b2JfYXJtKCZzdWJtaXQtPnNjaGVkX2pvYik7Cj4gKwo+ICAgCXN1Ym1pdC0+b3V0X2ZlbmNlID0g ZG1hX2ZlbmNlX2dldCgmc3VibWl0LT5zY2hlZF9qb2Iuc19mZW5jZS0+ZmluaXNoZWQpOwo+ICAg CXN1Ym1pdC0+b3V0X2ZlbmNlX2lkID0gaWRyX2FsbG9jX2N5Y2xpYygmc3VibWl0LT5ncHUtPmZl bmNlX2lkciwKPiAgIAkJCQkJCXN1Ym1pdC0+b3V0X2ZlbmNlLCAwLAo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vbGltYS9saW1hX3NjaGVkLmMgYi9kcml2ZXJzL2dwdS9kcm0vbGltYS9s aW1hX3NjaGVkLmMKPiBpbmRleCBkYmE4MzI5OTM3YTMuLjM4Zjc1NTU4MDUwNyAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vbGltYS9saW1hX3NjaGVkLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vbGltYS9saW1hX3NjaGVkLmMKPiBAQCAtMTI5LDYgKzEyOSw4IEBAIGludCBsaW1hX3Nj aGVkX3Rhc2tfaW5pdChzdHJ1Y3QgbGltYV9zY2hlZF90YXNrICp0YXNrLAo+ICAgCQlyZXR1cm4g ZXJyOwo+ICAgCX0KPiAgIAo+ICsJZHJtX3NjaGVkX2pvYl9hcm0oJnRhc2stPmJhc2UpOwo+ICsK PiAgIAl0YXNrLT5udW1fYm9zID0gbnVtX2JvczsKPiAgIAl0YXNrLT52bSA9IGxpbWFfdm1fZ2V0 KHZtKTsKPiAgIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJv c3Rfam9iLmMgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZnJvc3QvcGFuZnJvc3Rfam9iLmMKPiBpbmRl eCA3MWE3MmZiNTBlNmIuLjI5OTJkYzg1MzI1ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vcGFuZnJvc3QvcGFuZnJvc3Rfam9iLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFuZnJv c3QvcGFuZnJvc3Rfam9iLmMKPiBAQCAtMjg4LDYgKzI4OCw4IEBAIGludCBwYW5mcm9zdF9qb2Jf cHVzaChzdHJ1Y3QgcGFuZnJvc3Rfam9iICpqb2IpCj4gICAJCWdvdG8gdW5sb2NrOwo+ICAgCX0K PiAgIAo+ICsJZHJtX3NjaGVkX2pvYl9hcm0oJmpvYi0+YmFzZSk7Cj4gKwo+ICAgCWpvYi0+cmVu ZGVyX2RvbmVfZmVuY2UgPSBkbWFfZmVuY2VfZ2V0KCZqb2ItPmJhc2Uuc19mZW5jZS0+ZmluaXNo ZWQpOwo+ICAgCj4gICAJcmV0ID0gcGFuZnJvc3RfYWNxdWlyZV9vYmplY3RfZmVuY2VzKGpvYi0+ Ym9zLCBqb2ItPmJvX2NvdW50LAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc2NoZWR1 bGVyL3NjaGVkX2VudGl0eS5jIGIvZHJpdmVycy9ncHUvZHJtL3NjaGVkdWxlci9zY2hlZF9lbnRp dHkuYwo+IGluZGV4IDc5NTU0YWE0ZGJiMS4uZjczNDdjMjg0ODg2IDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9zY2hlZHVsZXIvc2NoZWRfZW50aXR5LmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vc2NoZWR1bGVyL3NjaGVkX2VudGl0eS5jCj4gQEAgLTQ4NSw5ICs0ODUsOSBAQCB2b2lk IGRybV9zY2hlZF9lbnRpdHlfc2VsZWN0X3JxKHN0cnVjdCBkcm1fc2NoZWRfZW50aXR5ICplbnRp dHkpCj4gICAgKiBAc2NoZWRfam9iOiBqb2IgdG8gc3VibWl0Cj4gICAgKiBAZW50aXR5OiBzY2hl ZHVsZXIgZW50aXR5Cj4gICAgKgo+IC0gKiBOb3RlOiBUbyBndWFyYW50ZWUgdGhhdCB0aGUgb3Jk ZXIgb2YgaW5zZXJ0aW9uIHRvIHF1ZXVlIG1hdGNoZXMKPiAtICogdGhlIGpvYidzIGZlbmNlIHNl cXVlbmNlIG51bWJlciB0aGlzIGZ1bmN0aW9uIHNob3VsZCBiZQo+IC0gKiBjYWxsZWQgd2l0aCBk cm1fc2NoZWRfam9iX2luaXQgdW5kZXIgY29tbW9uIGxvY2suCj4gKyAqIE5vdGU6IFRvIGd1YXJh bnRlZSB0aGF0IHRoZSBvcmRlciBvZiBpbnNlcnRpb24gdG8gcXVldWUgbWF0Y2hlcyB0aGUgam9i J3MKPiArICogZmVuY2Ugc2VxdWVuY2UgbnVtYmVyIHRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIGNh bGxlZCB3aXRoIGRybV9zY2hlZF9qb2JfYXJtKCkKPiArICogdW5kZXIgY29tbW9uIGxvY2suCj4g ICAgKgo+ICAgICogUmV0dXJucyAwIGZvciBzdWNjZXNzLCBuZWdhdGl2ZSBlcnJvciBjb2RlIG90 aGVyd2lzZS4KPiAgICAqLwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc2NoZWR1bGVy L3NjaGVkX2ZlbmNlLmMgYi9kcml2ZXJzL2dwdS9kcm0vc2NoZWR1bGVyL3NjaGVkX2ZlbmNlLmMK PiBpbmRleCA2OWRlMmM3NjczMWYuLmJjZWEwMzVjZjRjNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vc2NoZWR1bGVyL3NjaGVkX2ZlbmNlLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v c2NoZWR1bGVyL3NjaGVkX2ZlbmNlLmMKPiBAQCAtOTAsNyArOTAsNyBAQCBzdGF0aWMgY29uc3Qg Y2hhciAqZHJtX3NjaGVkX2ZlbmNlX2dldF90aW1lbGluZV9uYW1lKHN0cnVjdCBkbWFfZmVuY2Ug KmYpCj4gICAgKgo+ICAgICogRnJlZSB1cCB0aGUgZmVuY2UgbWVtb3J5IGFmdGVyIHRoZSBSQ1Ug Z3JhY2UgcGVyaW9kLgo+ICAgICovCj4gLXN0YXRpYyB2b2lkIGRybV9zY2hlZF9mZW5jZV9mcmVl KHN0cnVjdCByY3VfaGVhZCAqcmN1KQo+ICt2b2lkIGRybV9zY2hlZF9mZW5jZV9mcmVlKHN0cnVj dCByY3VfaGVhZCAqcmN1KQo+ICAgewo+ICAgCXN0cnVjdCBkbWFfZmVuY2UgKmYgPSBjb250YWlu ZXJfb2YocmN1LCBzdHJ1Y3QgZG1hX2ZlbmNlLCByY3UpOwo+ICAgCXN0cnVjdCBkcm1fc2NoZWRf ZmVuY2UgKmZlbmNlID0gdG9fZHJtX3NjaGVkX2ZlbmNlKGYpOwo+IEBAIC0xNTIsMjcgKzE1Miwz MiBAQCBzdHJ1Y3QgZHJtX3NjaGVkX2ZlbmNlICp0b19kcm1fc2NoZWRfZmVuY2Uoc3RydWN0IGRt YV9mZW5jZSAqZikKPiAgIH0KPiAgIEVYUE9SVF9TWU1CT0wodG9fZHJtX3NjaGVkX2ZlbmNlKTsK PiAgIAo+IC1zdHJ1Y3QgZHJtX3NjaGVkX2ZlbmNlICpkcm1fc2NoZWRfZmVuY2VfY3JlYXRlKHN0 cnVjdCBkcm1fc2NoZWRfZW50aXR5ICplbnRpdHksCj4gLQkJCQkJICAgICAgIHZvaWQgKm93bmVy KQo+ICtzdHJ1Y3QgZHJtX3NjaGVkX2ZlbmNlICpkcm1fc2NoZWRfZmVuY2VfYWxsb2Moc3RydWN0 IGRybV9zY2hlZF9lbnRpdHkgKmVudGl0eSwKPiArCQkJCQkgICAgICB2b2lkICpvd25lcikKPiAg IHsKPiAgIAlzdHJ1Y3QgZHJtX3NjaGVkX2ZlbmNlICpmZW5jZSA9IE5VTEw7Cj4gLQl1bnNpZ25l ZCBzZXE7Cj4gICAKPiAgIAlmZW5jZSA9IGttZW1fY2FjaGVfemFsbG9jKHNjaGVkX2ZlbmNlX3Ns YWIsIEdGUF9LRVJORUwpOwo+ICAgCWlmIChmZW5jZSA9PSBOVUxMKQo+ICAgCQlyZXR1cm4gTlVM TDsKPiAgIAo+ICAgCWZlbmNlLT5vd25lciA9IG93bmVyOwo+IC0JZmVuY2UtPnNjaGVkID0gZW50 aXR5LT5ycS0+c2NoZWQ7Cj4gICAJc3Bpbl9sb2NrX2luaXQoJmZlbmNlLT5sb2NrKTsKPiAgIAo+ ICsJcmV0dXJuIGZlbmNlOwo+ICt9Cj4gKwo+ICt2b2lkIGRybV9zY2hlZF9mZW5jZV9pbml0KHN0 cnVjdCBkcm1fc2NoZWRfZmVuY2UgKmZlbmNlLAo+ICsJCQkgIHN0cnVjdCBkcm1fc2NoZWRfZW50 aXR5ICplbnRpdHkpCj4gK3sKPiArCXVuc2lnbmVkIHNlcTsKPiArCj4gKwlmZW5jZS0+c2NoZWQg PSBlbnRpdHktPnJxLT5zY2hlZDsKPiAgIAlzZXEgPSBhdG9taWNfaW5jX3JldHVybigmZW50aXR5 LT5mZW5jZV9zZXEpOwo+ICAgCWRtYV9mZW5jZV9pbml0KCZmZW5jZS0+c2NoZWR1bGVkLCAmZHJt X3NjaGVkX2ZlbmNlX29wc19zY2hlZHVsZWQsCj4gICAJCSAgICAgICAmZmVuY2UtPmxvY2ssIGVu dGl0eS0+ZmVuY2VfY29udGV4dCwgc2VxKTsKPiAgIAlkbWFfZmVuY2VfaW5pdCgmZmVuY2UtPmZp bmlzaGVkLCAmZHJtX3NjaGVkX2ZlbmNlX29wc19maW5pc2hlZCwKPiAgIAkJICAgICAgICZmZW5j ZS0+bG9jaywgZW50aXR5LT5mZW5jZV9jb250ZXh0ICsgMSwgc2VxKTsKPiAtCj4gLQlyZXR1cm4g ZmVuY2U7Cj4gICB9Cj4gICAKPiAgIG1vZHVsZV9pbml0KGRybV9zY2hlZF9mZW5jZV9zbGFiX2lu aXQpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc2NoZWR1bGVyL3NjaGVkX21haW4u YyBiL2RyaXZlcnMvZ3B1L2RybS9zY2hlZHVsZXIvc2NoZWRfbWFpbi5jCj4gaW5kZXggMzNjNDE0 ZDU1ZmFiLi40NTRjYjYxNjRiZGMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3NjaGVk dWxlci9zY2hlZF9tYWluLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc2NoZWR1bGVyL3NjaGVk X21haW4uYwo+IEBAIC00OCw5ICs0OCwxMSBAQAo+ICAgI2luY2x1ZGUgPGxpbnV4L3dhaXQuaD4K PiAgICNpbmNsdWRlIDxsaW51eC9zY2hlZC5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L2NvbXBsZXRp b24uaD4KPiArI2luY2x1ZGUgPGxpbnV4L2RtYS1yZXN2Lmg+Cj4gICAjaW5jbHVkZSA8dWFwaS9s aW51eC9zY2hlZC90eXBlcy5oPgo+ICAgCj4gICAjaW5jbHVkZSA8ZHJtL2RybV9wcmludC5oPgo+ ICsjaW5jbHVkZSA8ZHJtL2RybV9nZW0uaD4KPiAgICNpbmNsdWRlIDxkcm0vZ3B1X3NjaGVkdWxl ci5oPgo+ICAgI2luY2x1ZGUgPGRybS9zcHNjX3F1ZXVlLmg+Cj4gICAKPiBAQCAtNTY5LDcgKzU3 MSw2IEBAIEVYUE9SVF9TWU1CT0woZHJtX3NjaGVkX3Jlc3VibWl0X2pvYnNfZXh0KTsKPiAgIAo+ ICAgLyoqCj4gICAgKiBkcm1fc2NoZWRfam9iX2luaXQgLSBpbml0IGEgc2NoZWR1bGVyIGpvYgo+ IC0gKgo+ICAgICogQGpvYjogc2NoZWR1bGVyIGpvYiB0byBpbml0Cj4gICAgKiBAZW50aXR5OiBz Y2hlZHVsZXIgZW50aXR5IHRvIHVzZQo+ICAgICogQG93bmVyOiBqb2Igb3duZXIgZm9yIGRlYnVn Z2luZwo+IEBAIC01NzcsMjcgKzU3OCwyOCBAQCBFWFBPUlRfU1lNQk9MKGRybV9zY2hlZF9yZXN1 Ym1pdF9qb2JzX2V4dCk7Cj4gICAgKiBSZWZlciB0byBkcm1fc2NoZWRfZW50aXR5X3B1c2hfam9i KCkgZG9jdW1lbnRhdGlvbgo+ICAgICogZm9yIGxvY2tpbmcgY29uc2lkZXJhdGlvbnMuCj4gICAg Kgo+ICsgKiBEcml2ZXJzIG11c3QgbWFrZSBzdXJlIGRybV9zY2hlZF9qb2JfY2xlYW51cCgpIGlm IHRoaXMgZnVuY3Rpb24gcmV0dXJucwo+ICsgKiBzdWNjZXNzZnVsbHksIGV2ZW4gd2hlbiBAam9i IGlzIGFib3J0ZWQgYmVmb3JlIGRybV9zY2hlZF9qb2JfYXJtKCkgaXMgY2FsbGVkLgo+ICsgKgo+ ICsgKiBXQVJOSU5HOiBhbWRncHUgYWJ1c2VzICZkcm1fc2NoZWQucmVhZHkgdG8gc2lnbmFsIHdo ZW4gdGhlIGhhcmR3YXJlCj4gKyAqIGhhcyBkaWVkLCB3aGljaCBjYW4gbWVhbiB0aGF0IHRoZXJl J3Mgbm8gdmFsaWQgcnVucXVldWUgZm9yIGEgQGVudGl0eS4KPiArICogVGhpcyBmdW5jdGlvbiBy ZXR1cm5zIC1FTk9FTlQgaW4gdGhpcyBjYXNlICh3aGljaCBwcm9iYWJseSBzaG91bGQgYmUgLUVJ TyBhcwo+ICsgKiBhIG1vcmUgbWVhbmlnZnVsIHJldHVybiB2YWx1ZSkuCj4gKyAqCj4gICAgKiBS ZXR1cm5zIDAgZm9yIHN1Y2Nlc3MsIG5lZ2F0aXZlIGVycm9yIGNvZGUgb3RoZXJ3aXNlLgo+ICAg ICovCj4gICBpbnQgZHJtX3NjaGVkX2pvYl9pbml0KHN0cnVjdCBkcm1fc2NoZWRfam9iICpqb2Is Cj4gICAJCSAgICAgICBzdHJ1Y3QgZHJtX3NjaGVkX2VudGl0eSAqZW50aXR5LAo+ICAgCQkgICAg ICAgdm9pZCAqb3duZXIpCj4gICB7Cj4gLQlzdHJ1Y3QgZHJtX2dwdV9zY2hlZHVsZXIgKnNjaGVk Owo+IC0KPiAgIAlkcm1fc2NoZWRfZW50aXR5X3NlbGVjdF9ycShlbnRpdHkpOwo+ICAgCWlmICgh ZW50aXR5LT5ycSkKPiAgIAkJcmV0dXJuIC1FTk9FTlQ7Cj4gICAKPiAtCXNjaGVkID0gZW50aXR5 LT5ycS0+c2NoZWQ7Cj4gLQo+IC0Jam9iLT5zY2hlZCA9IHNjaGVkOwo+ICAgCWpvYi0+ZW50aXR5 ID0gZW50aXR5Owo+IC0Jam9iLT5zX3ByaW9yaXR5ID0gZW50aXR5LT5ycSAtIHNjaGVkLT5zY2hl ZF9ycTsKPiAtCWpvYi0+c19mZW5jZSA9IGRybV9zY2hlZF9mZW5jZV9jcmVhdGUoZW50aXR5LCBv d25lcik7Cj4gKwlqb2ItPnNfZmVuY2UgPSBkcm1fc2NoZWRfZmVuY2VfYWxsb2MoZW50aXR5LCBv d25lcik7Cj4gICAJaWYgKCFqb2ItPnNfZmVuY2UpCj4gICAJCXJldHVybiAtRU5PTUVNOwo+IC0J am9iLT5pZCA9IGF0b21pYzY0X2luY19yZXR1cm4oJnNjaGVkLT5qb2JfaWRfY291bnQpOwo+ICAg Cj4gICAJSU5JVF9MSVNUX0hFQUQoJmpvYi0+bGlzdCk7Cj4gICAKPiBAQCAtNjA2LDEzICs2MDgs NTggQEAgaW50IGRybV9zY2hlZF9qb2JfaW5pdChzdHJ1Y3QgZHJtX3NjaGVkX2pvYiAqam9iLAo+ ICAgRVhQT1JUX1NZTUJPTChkcm1fc2NoZWRfam9iX2luaXQpOwo+ICAgCj4gICAvKioKPiAtICog ZHJtX3NjaGVkX2pvYl9jbGVhbnVwIC0gY2xlYW4gdXAgc2NoZWR1bGVyIGpvYiByZXNvdXJjZXMK PiArICogZHJtX3NjaGVkX2pvYl9hcm0gLSBhcm0gYSBzY2hlZHVsZXIgam9iIGZvciBleGVjdXRp b24KPiArICogQGpvYjogc2NoZWR1bGVyIGpvYiB0byBhcm0KPiArICoKPiArICogVGhpcyBhcm1z IGEgc2NoZWR1bGVyIGpvYiBmb3IgZXhlY3V0aW9uLiBTcGVjaWZpY2FsbHkgaXQgaW5pdGlhbGl6 ZXMgdGhlCj4gKyAqICZkcm1fc2NoZWRfam9iLnNfZmVuY2Ugb2YgQGpvYiwgc28gdGhhdCBpdCBj YW4gYmUgYXR0YWNoZWQgdG8gc3RydWN0IGRtYV9yZXN2Cj4gKyAqIG9yIG90aGVyIHBsYWNlcyB0 aGF0IG5lZWQgdG8gdHJhY2sgdGhlIGNvbXBsZXRpb24gb2YgdGhpcyBqb2IuCj4gKyAqCj4gKyAq IFJlZmVyIHRvIGRybV9zY2hlZF9lbnRpdHlfcHVzaF9qb2IoKSBkb2N1bWVudGF0aW9uIGZvciBs b2NraW5nCj4gKyAqIGNvbnNpZGVyYXRpb25zLgo+ICAgICoKPiArICogVGhpcyBjYW4gb25seSBi ZSBjYWxsZWQgaWYgZHJtX3NjaGVkX2pvYl9pbml0KCkgc3VjY2VlZGVkLgo+ICsgKi8KPiArdm9p ZCBkcm1fc2NoZWRfam9iX2FybShzdHJ1Y3QgZHJtX3NjaGVkX2pvYiAqam9iKQo+ICt7Cj4gKwlz dHJ1Y3QgZHJtX2dwdV9zY2hlZHVsZXIgKnNjaGVkOwo+ICsJc3RydWN0IGRybV9zY2hlZF9lbnRp dHkgKmVudGl0eSA9IGpvYi0+ZW50aXR5Owo+ICsKPiArCUJVR19PTighZW50aXR5KTsKPiArCj4g KwlzY2hlZCA9IGVudGl0eS0+cnEtPnNjaGVkOwo+ICsKPiArCWpvYi0+c2NoZWQgPSBzY2hlZDsK PiArCWpvYi0+c19wcmlvcml0eSA9IGVudGl0eS0+cnEgLSBzY2hlZC0+c2NoZWRfcnE7Cj4gKwlq b2ItPmlkID0gYXRvbWljNjRfaW5jX3JldHVybigmc2NoZWQtPmpvYl9pZF9jb3VudCk7Cj4gKwo+ ICsJZHJtX3NjaGVkX2ZlbmNlX2luaXQoam9iLT5zX2ZlbmNlLCBqb2ItPmVudGl0eSk7Cj4gK30K PiArRVhQT1JUX1NZTUJPTChkcm1fc2NoZWRfam9iX2FybSk7Cj4gKwo+ICsvKioKPiArICogZHJt X3NjaGVkX2pvYl9jbGVhbnVwIC0gY2xlYW4gdXAgc2NoZWR1bGVyIGpvYiByZXNvdXJjZXMKPiAg ICAqIEBqb2I6IHNjaGVkdWxlciBqb2IgdG8gY2xlYW4gdXAKPiArICoKPiArICogQ2xlYW5zIHVw IHRoZSByZXNvdXJjZXMgYWxsb2NhdGVkIHdpdGggZHJtX3NjaGVkX2pvYl9pbml0KCkuCj4gKyAq Cj4gKyAqIERyaXZlcnMgc2hvdWxkIGNhbGwgdGhpcyBmcm9tIHRoZWlyIGVycm9yIHVud2luZCBj b2RlIGlmIEBqb2IgaXMgYWJvcnRlZAo+ICsgKiBiZWZvcmUgZHJtX3NjaGVkX2pvYl9hcm0oKSBp cyBjYWxsZWQuCj4gKyAqCj4gKyAqIEFmdGVyIHRoYXQgcG9pbnQgb2Ygbm8gcmV0dXJuIEBqb2Ig aXMgY29tbWl0dGVkIHRvIGJlIGV4ZWN1dGVkIGJ5IHRoZQo+ICsgKiBzY2hlZHVsZXIsIGFuZCB0 aGlzIGZ1bmN0aW9uIHNob3VsZCBiZSBjYWxsZWQgZnJvbSB0aGUKPiArICogJmRybV9zY2hlZF9i YWNrZW5kX29wcy5mcmVlX2pvYiBjYWxsYmFjay4KPiAgICAqLwo+ICAgdm9pZCBkcm1fc2NoZWRf am9iX2NsZWFudXAoc3RydWN0IGRybV9zY2hlZF9qb2IgKmpvYikKPiAgIHsKPiAtCWRtYV9mZW5j ZV9wdXQoJmpvYi0+c19mZW5jZS0+ZmluaXNoZWQpOwo+ICsJaWYgKGtyZWZfcmVhZCgmam9iLT5z X2ZlbmNlLT5maW5pc2hlZC5yZWZjb3VudCkpIHsKPiArCQkvKiBkcm1fc2NoZWRfam9iX2FybSgp IGhhcyBiZWVuIGNhbGxlZCAqLwo+ICsJCWRtYV9mZW5jZV9wdXQoJmpvYi0+c19mZW5jZS0+Zmlu aXNoZWQpOwo+ICsJfSBlbHNlIHsKPiArCQkvKiBhYm9ydGVkIGpvYiBiZWZvcmUgY29tbWl0dGlu ZyB0byBydW4gaXQgKi8KPiArCQlkcm1fc2NoZWRfZmVuY2VfZnJlZSgmam9iLT5zX2ZlbmNlLT5m aW5pc2hlZC5yY3UpOwo+ICsJfQo+ICsKPiAgIAlqb2ItPnNfZmVuY2UgPSBOVUxMOwo+ICAgfQo+ ICAgRVhQT1JUX1NZTUJPTChkcm1fc2NoZWRfam9iX2NsZWFudXApOwo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vdjNkL3YzZF9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS92M2QvdjNkX2dl bS5jCj4gaW5kZXggNGViMzU0MjI2OTcyLi41YzNhOTkwMjdlY2QgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL3YzZC92M2RfZ2VtLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdjNkL3Yz ZF9nZW0uYwo+IEBAIC00NzUsNiArNDc1LDggQEAgdjNkX3B1c2hfam9iKHN0cnVjdCB2M2RfZmls ZV9wcml2ICp2M2RfcHJpdiwKPiAgIAlpZiAocmV0KQo+ICAgCQlyZXR1cm4gcmV0Owo+ICAgCj4g Kwlkcm1fc2NoZWRfam9iX2FybSgmam9iLT5iYXNlKTsKPiArCj4gICAJam9iLT5kb25lX2ZlbmNl ID0gZG1hX2ZlbmNlX2dldCgmam9iLT5iYXNlLnNfZmVuY2UtPmZpbmlzaGVkKTsKPiAgIAo+ICAg CS8qIHB1dCBieSBzY2hlZHVsZXIgam9iIGNvbXBsZXRpb24gKi8KPiBkaWZmIC0tZ2l0IGEvaW5j bHVkZS9kcm0vZ3B1X3NjaGVkdWxlci5oIGIvaW5jbHVkZS9kcm0vZ3B1X3NjaGVkdWxlci5oCj4g aW5kZXggODhhZTdmMzMxYmIxLi44M2FmYzNhYThlMmYgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9k cm0vZ3B1X3NjaGVkdWxlci5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZ3B1X3NjaGVkdWxlci5oCj4g QEAgLTM0OCw2ICszNDgsNyBAQCB2b2lkIGRybV9zY2hlZF9maW5pKHN0cnVjdCBkcm1fZ3B1X3Nj aGVkdWxlciAqc2NoZWQpOwo+ICAgaW50IGRybV9zY2hlZF9qb2JfaW5pdChzdHJ1Y3QgZHJtX3Nj aGVkX2pvYiAqam9iLAo+ICAgCQkgICAgICAgc3RydWN0IGRybV9zY2hlZF9lbnRpdHkgKmVudGl0 eSwKPiAgIAkJICAgICAgIHZvaWQgKm93bmVyKTsKPiArdm9pZCBkcm1fc2NoZWRfam9iX2FybShz dHJ1Y3QgZHJtX3NjaGVkX2pvYiAqam9iKTsKPiAgIHZvaWQgZHJtX3NjaGVkX2VudGl0eV9tb2Rp Znlfc2NoZWQoc3RydWN0IGRybV9zY2hlZF9lbnRpdHkgKmVudGl0eSwKPiAgIAkJCQkgICAgc3Ry dWN0IGRybV9ncHVfc2NoZWR1bGVyICoqc2NoZWRfbGlzdCwKPiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG51bV9zY2hlZF9saXN0KTsKPiBAQCAtMzg3 LDggKzM4OCwxMiBAQCB2b2lkIGRybV9zY2hlZF9lbnRpdHlfc2V0X3ByaW9yaXR5KHN0cnVjdCBk cm1fc2NoZWRfZW50aXR5ICplbnRpdHksCj4gICAJCQkJICAgZW51bSBkcm1fc2NoZWRfcHJpb3Jp dHkgcHJpb3JpdHkpOwo+ICAgYm9vbCBkcm1fc2NoZWRfZW50aXR5X2lzX3JlYWR5KHN0cnVjdCBk cm1fc2NoZWRfZW50aXR5ICplbnRpdHkpOwo+ICAgCj4gLXN0cnVjdCBkcm1fc2NoZWRfZmVuY2Ug KmRybV9zY2hlZF9mZW5jZV9jcmVhdGUoCj4gK3N0cnVjdCBkcm1fc2NoZWRfZmVuY2UgKmRybV9z Y2hlZF9mZW5jZV9hbGxvYygKPiAgIAlzdHJ1Y3QgZHJtX3NjaGVkX2VudGl0eSAqc19lbnRpdHks IHZvaWQgKm93bmVyKTsKPiArdm9pZCBkcm1fc2NoZWRfZmVuY2VfaW5pdChzdHJ1Y3QgZHJtX3Nj aGVkX2ZlbmNlICpmZW5jZSwKPiArCQkJICBzdHJ1Y3QgZHJtX3NjaGVkX2VudGl0eSAqZW50aXR5 KTsKPiArdm9pZCBkcm1fc2NoZWRfZmVuY2VfZnJlZShzdHJ1Y3QgcmN1X2hlYWQgKnJjdSk7Cj4g Kwo+ICAgdm9pZCBkcm1fc2NoZWRfZmVuY2Vfc2NoZWR1bGVkKHN0cnVjdCBkcm1fc2NoZWRfZmVu Y2UgKmZlbmNlKTsKPiAgIHZvaWQgZHJtX3NjaGVkX2ZlbmNlX2ZpbmlzaGVkKHN0cnVjdCBkcm1f c2NoZWRfZmVuY2UgKmZlbmNlKTsKPiAgIAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4Cg==