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=-12.0 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, MSGID_FROM_MTA_HEADER,NICE_REPLY_A,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F0AA2C433E0 for ; Fri, 31 Jul 2020 13:30:07 +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 C505622B3F for ; Fri, 31 Jul 2020 13:30:07 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amdcloud.onmicrosoft.com header.i=@amdcloud.onmicrosoft.com header.b="YDKw/x9w" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C505622B3F Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amd.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 33ABF6EAA8; Fri, 31 Jul 2020 13:30:07 +0000 (UTC) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2083.outbound.protection.outlook.com [40.107.243.83]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7C9E26EAA6 for ; Fri, 31 Jul 2020 13:30:06 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gNl7fMUmTQj+5nIVd+6L7sz6qvjnk818lYBllkFo2nQLqMrc+1/43QQEkpTsUkXScMRJt2KQPhxw6wEbeZJDEJDbrTV2IwulWplBmxA+fAQrqXXRw6EQr9yM9RKsA93nzp9gOiWVef7hFnGcQc6AoP8iPL9FqhG5GGIywqEeLa5MTRn7ok3OgVHTbuK8sfor4rVDmeSxpNioMBcp0gVoYcymeDePeCwatTsl6evBMh17Qr0fD0tXjNjQyBBJ7n+5siM0cLiWcDf6Cj9xgHvg6Ef6U+3TA5OjOcpGx2tuOPTPtSDUudAdZpjEuDJlHhCUKRTvTlw92Q2MG+xmYEeDqg== 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=hmP+bRUAbPkcH3BY4oO6/A9qP3Uag3oyvKI66zxitw4=; b=XkVd+F7nxUsjhhi+ONAchEHcMnrhZYxj+tE8mYJUw5JhkiMT2plHtpBQz0ImoHFcE+LBrUJ6nSnQeazPRi+J8YFHUZ0MubqPllYk3bp1oHgWVX9w5upa90yrMXzRYOJODAKR7+9gYZotDWhGIRFAcDGytbgjNea6gCqPIldoybAcTC+g+CBdYYF61YxKYYkEOCKc2eMdV4syjrrPbq4hzmJGDPOYpDv+6J90XQSy0g6cbGMN1n5b2G1BSQmQcLRxycjVgt0kmO0/uZmT0QaOT2Pim8i2TPPYswV35gTOyUr4zcYq2bB8AjWq6vYPogGF+PvZyzmsMFLTdnnkTm2ZSw== 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=amdcloud.onmicrosoft.com; s=selector2-amdcloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hmP+bRUAbPkcH3BY4oO6/A9qP3Uag3oyvKI66zxitw4=; b=YDKw/x9wPm5mvwDXv3Ga4kqYGjzZHA8ahb2cG9j+NOdEsFugc5HgnThme4KE0YUCzlGLwveJEJL6HNfnWoB+8KiTyG+IU8B49TYwBkrYvI0WY3l6AbblDlQto0itRqAY6PvFu9k1LrR60b4UAidfsHZ6d7OsjfFU6h9NymJP3qY= Authentication-Results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=amd.com; Received: from MN2PR12MB3775.namprd12.prod.outlook.com (2603:10b6:208:159::19) by BL0PR12MB2356.namprd12.prod.outlook.com (2603:10b6:207:4d::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3239.17; Fri, 31 Jul 2020 13:30:04 +0000 Received: from MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::a16e:8812:b4c0:918d]) by MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::a16e:8812:b4c0:918d%6]) with mapi id 15.20.3239.020; Fri, 31 Jul 2020 13:30:03 +0000 Subject: Re: [PATCH 38/49] drm/amdgpu/ttm: use bo manager subclassing for vram/gtt mgrs To: Dave Airlie , dri-devel@lists.freedesktop.org References: <20200731040520.3701599-1-airlied@gmail.com> <20200731040520.3701599-39-airlied@gmail.com> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: <46f1e049-b34a-8d18-d8a7-3fadaee1b833@amd.com> Date: Fri, 31 Jul 2020 15:29:57 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 In-Reply-To: <20200731040520.3701599-39-airlied@gmail.com> Content-Language: en-US X-ClientProxiedBy: AM0PR01CA0174.eurprd01.prod.exchangelabs.com (2603:10a6:208:aa::43) 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:be8a:bd56:1f94:86e7] (2a02:908:1252:fb60:be8a:bd56:1f94:86e7) by AM0PR01CA0174.eurprd01.prod.exchangelabs.com (2603:10a6:208:aa::43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3239.17 via Frontend Transport; Fri, 31 Jul 2020 13:30:01 +0000 X-Originating-IP: [2a02:908:1252:fb60:be8a:bd56:1f94:86e7] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 394662f1-d202-49ba-5e29-08d83555d46f X-MS-TrafficTypeDiagnostic: BL0PR12MB2356: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1360; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 29Bc6B/pyaH0mCxv5jaoPS0mrBA19dRLGoArVS7SG+MYTNNnvWrDoE0TP8W0c2x3wK+38iW2rAP9ItDTZNxysjFg7hIvQnhvmkiaySWpcmC0ieMnDfbw7cxTw4OR4Cd/xaKWBCzwJY3CYsbjhoXe1RAFWo6MVgx6Y3dNFHZf2FRIjNLKYygI9lhC3VOPpMBpd3m+Z+lcR6l0F7aE3zsNerTL+5G0r+ZbOLmwo5SJRHkkcohPoeSVeH5y876JJpFS/L6IKpZaHStt44g6WuuNc8af3Ljjk+oHviwslut7iNLxMn4uhl/lYQ+5BedwgvlFTXSuOtHk8+ZLuS4W/t9hjex0KLpYfOYLRkI3cbSqvSWe7UbsX+z3TqYEZKRTmVtO 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; SFTY:; SFS:(4636009)(366004)(346002)(376002)(396003)(136003)(39860400002)(5660300002)(86362001)(4326008)(66946007)(31696002)(36756003)(66476007)(6486002)(8936002)(478600001)(66574015)(8676002)(66556008)(2906002)(186003)(16526019)(6666004)(31686004)(83380400001)(316002)(2616005)(52116002)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: mIA4G39hJZ4eAk5QQdplMHx0ufB6x4PuJt6elCAnJfeJRS7Hs9pnkIcskDXcx80sMsUSTmEyXehkrngbQBK9RxlZt058R15TXQpwRVyOm/mwHFS/og3iLcZORe1blRa06JP7pllDCaX4JkpTVch4tG4fi1Dx00Cizucm+Cg6BdGMlCH3CemhBpuLFZtsOZjqAxkgaari1O4GxZeQrj3uLxHffVQ1ll5SNMATuf36pXJtamQ8Hi4xaLTpWdBnDdXzeiNkdavoTwuhRSmn7YKn0e57YgdQlrr6CLNAnX6hD/hSee71Gxjy8Ac0a8IhkH8USRL1DDOTYoyflUnM5ygw5pP/tJ8Z7q0WnWg0mtag5PyKoPKG6C4M5sdXtqHzS2+eOyEhDtctnyy9mV4DNjbX2am7DHhF9Hx90PwoL/8eEkoFNL4uiL5R1K27d4evwolPg8KWc0S8iWtqiy7Am5UCrGOy0emf+jnavtfZcjG00C55Fd0R/cwEa9WOC9B0z9N3TShXiABxuakf6F66xdI61zmgIH6ppYqPdxB3pnGEwoqkou0Feum+faiESD1S3fUWXictXvnoCM/D2cuw4wzU+vfVuwXVsj1147CBnQjmfRYbVSl40bdLqlGNRd1khuE0mANb3GV2umBoUivPjLJ3dbV3eCR7KTb27eIkYy0OfYDlh6ia4vsyKGvfR6XXBcxIS6GFX/Xy1n/V+cE9iusbWA== X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 394662f1-d202-49ba-5e29-08d83555d46f X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3775.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jul 2020 13:30:03.6189 (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: 0qGmTe2UosndxV1AI778tyV2AUUURaMqy/c+r7WhE/6bYVjQW3F40bNcQnJ08ypu X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR12MB2356 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: sroland@vmware.com, bskeggs@redhat.com, kraxel@redhat.com Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" QW0gMzEuMDcuMjAgdW0gMDY6MDUgc2NocmllYiBEYXZlIEFpcmxpZToKPiBGcm9tOiBEYXZlIEFp cmxpZSA8YWlybGllZEByZWRoYXQuY29tPgo+Cj4gU2lnbmVkLW9mZi1ieTogRGF2ZSBBaXJsaWUg PGFpcmxpZWRAcmVkaGF0LmNvbT4KClJldmlld2VkLWJ5OiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJp c3RpYW4ua29lbmlnQGFtZC5jb20+Cgo+IC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYW1kZ3B1X2d0dF9tZ3IuYyAgfCAzNSArKysrKysrKysrKy0tLS0tLS0tCj4gICBkcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdnJhbV9tZ3IuYyB8IDM2ICsrKysrKysrKysrKyst LS0tLS0tCj4gICAyIGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9u cygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9n dHRfbWdyLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZ3R0X21nci5jCj4g aW5kZXggMGIwZDA5ZDE5YjRmLi44M2Q4OGVlNzM0NjggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2d0dF9tZ3IuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdV9ndHRfbWdyLmMKPiBAQCAtMjUsMTEgKzI1LDE3IEBACj4gICAj aW5jbHVkZSAiYW1kZ3B1LmgiCj4gICAKPiAgIHN0cnVjdCBhbWRncHVfZ3R0X21nciB7Cj4gKwlz dHJ1Y3QgdHRtX21lbV90eXBlX21hbmFnZXIgbWFuYWdlcjsKPiAgIAlzdHJ1Y3QgZHJtX21tIG1t Owo+ICAgCXNwaW5sb2NrX3QgbG9jazsKPiAgIAlhdG9taWM2NF90IGF2YWlsYWJsZTsKPiAgIH07 Cj4gICAKPiArc3RhdGljIGlubGluZSBzdHJ1Y3QgYW1kZ3B1X2d0dF9tZ3IgKnRvX2d0dF9tZ3Io c3RydWN0IHR0bV9tZW1fdHlwZV9tYW5hZ2VyICptYW4pCj4gK3sKPiArCXJldHVybiBjb250YWlu ZXJfb2YobWFuLCBzdHJ1Y3QgYW1kZ3B1X2d0dF9tZ3IsIG1hbmFnZXIpOwo+ICt9Cj4gKwo+ICAg c3RydWN0IGFtZGdwdV9ndHRfbm9kZSB7Cj4gICAJc3RydWN0IGRybV9tbV9ub2RlIG5vZGU7Cj4g ICAJc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICp0Ym87Cj4gQEAgLTg3LDExICs5MywxNiBAQCBz dGF0aWMgY29uc3Qgc3RydWN0IHR0bV9tZW1fdHlwZV9tYW5hZ2VyX2Z1bmMgYW1kZ3B1X2d0dF9t Z3JfZnVuYzsKPiAgICAqLwo+ICAgaW50IGFtZGdwdV9ndHRfbWdyX2luaXQoc3RydWN0IGFtZGdw dV9kZXZpY2UgKmFkZXYsIHVpbnQ2NF90IGd0dF9zaXplKQo+ICAgewo+IC0Jc3RydWN0IHR0bV9t ZW1fdHlwZV9tYW5hZ2VyICptYW4gPSB0dG1fbWFuYWdlcl90eXBlKCZhZGV2LT5tbWFuLmJkZXYs IFRUTV9QTF9UVCk7Cj4gKwlzdHJ1Y3QgdHRtX21lbV90eXBlX21hbmFnZXIgKm1hbjsKPiAgIAlz dHJ1Y3QgYW1kZ3B1X2d0dF9tZ3IgKm1ncjsKPiAgIAl1aW50NjRfdCBzdGFydCwgc2l6ZTsKPiAg IAlpbnQgcmV0Owo+ICAgCj4gKwltZ3IgPSBremFsbG9jKHNpemVvZigqbWdyKSwgR0ZQX0tFUk5F TCk7Cj4gKwlpZiAoIW1ncikKPiArCQlyZXR1cm4gLUVOT01FTTsKPiArCj4gKwltYW4gPSAmbWdy LT5tYW5hZ2VyOwo+ICAgCW1hbi0+dXNlX3R0ID0gdHJ1ZTsKPiAgIAltYW4tPmZ1bmMgPSAmYW1k Z3B1X2d0dF9tZ3JfZnVuYzsKPiAgIAltYW4tPmF2YWlsYWJsZV9jYWNoaW5nID0gVFRNX1BMX01B U0tfQ0FDSElORzsKPiBAQCAtOTksMTYgKzExMCwxMSBAQCBpbnQgYW1kZ3B1X2d0dF9tZ3JfaW5p dChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdWludDY0X3QgZ3R0X3NpemUpCj4gICAKPiAg IAl0dG1fYm9faW5pdF9tbV9iYXNlKCZhZGV2LT5tbWFuLmJkZXYsIG1hbiwgZ3R0X3NpemUgPj4g UEFHRV9TSElGVCk7Cj4gICAKPiAtCW1nciA9IGt6YWxsb2Moc2l6ZW9mKCptZ3IpLCBHRlBfS0VS TkVMKTsKPiAtCWlmICghbWdyKQo+IC0JCXJldHVybiAtRU5PTUVNOwo+IC0KPiAgIAlzdGFydCA9 IEFNREdQVV9HVFRfTUFYX1RSQU5TRkVSX1NJWkUgKiBBTURHUFVfR1RUX05VTV9UUkFOU0ZFUl9X SU5ET1dTOwo+ICAgCXNpemUgPSAoYWRldi0+Z21jLmdhcnRfc2l6ZSA+PiBQQUdFX1NISUZUKSAt IHN0YXJ0Owo+ICAgCWRybV9tbV9pbml0KCZtZ3ItPm1tLCBzdGFydCwgc2l6ZSk7Cj4gICAJc3Bp bl9sb2NrX2luaXQoJm1nci0+bG9jayk7Cj4gICAJYXRvbWljNjRfc2V0KCZtZ3ItPmF2YWlsYWJs ZSwgZ3R0X3NpemUgPj4gUEFHRV9TSElGVCk7Cj4gLQltYW4tPnByaXYgPSBtZ3I7Cj4gICAKPiAg IAlyZXQgPSBkZXZpY2VfY3JlYXRlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfbWVtX2luZm9f Z3R0X3RvdGFsKTsKPiAgIAlpZiAocmV0KSB7Cj4gQEAgLTEyMSw2ICsxMjcsNyBAQCBpbnQgYW1k Z3B1X2d0dF9tZ3JfaW5pdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdWludDY0X3QgZ3R0 X3NpemUpCj4gICAJCXJldHVybiByZXQ7Cj4gICAJfQo+ICAgCj4gKwl0dG1fc2V0X2RyaXZlcl9t YW5hZ2VyKCZhZGV2LT5tbWFuLmJkZXYsIFRUTV9QTF9UVCwgJm1nci0+bWFuYWdlcik7Cj4gICAJ dHRtX2JvX3VzZV9tbShtYW4pOwo+ICAgCXJldHVybiAwOwo+ICAgfQo+IEBAIC0xMzYsNyArMTQz LDcgQEAgaW50IGFtZGdwdV9ndHRfbWdyX2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYs IHVpbnQ2NF90IGd0dF9zaXplKQo+ICAgdm9pZCBhbWRncHVfZ3R0X21ncl9maW5pKHN0cnVjdCBh bWRncHVfZGV2aWNlICphZGV2KQo+ICAgewo+ICAgCXN0cnVjdCB0dG1fbWVtX3R5cGVfbWFuYWdl ciAqbWFuID0gdHRtX21hbmFnZXJfdHlwZSgmYWRldi0+bW1hbi5iZGV2LCBUVE1fUExfVFQpOwo+ IC0Jc3RydWN0IGFtZGdwdV9ndHRfbWdyICptZ3IgPSBtYW4tPnByaXY7Cj4gKwlzdHJ1Y3QgYW1k Z3B1X2d0dF9tZ3IgKm1nciA9IHRvX2d0dF9tZ3IobWFuKTsKPiAgIAlpbnQgcmV0Owo+ICAgCj4g ICAJdHRtX2JvX2Rpc2FibGVfbW0obWFuKTsKPiBAQCAtMTQ4LDEzICsxNTUsMTMgQEAgdm9pZCBh bWRncHVfZ3R0X21ncl9maW5pKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQo+ICAgCXNwaW5f bG9jaygmbWdyLT5sb2NrKTsKPiAgIAlkcm1fbW1fdGFrZWRvd24oJm1nci0+bW0pOwo+ICAgCXNw aW5fdW5sb2NrKCZtZ3ItPmxvY2spOwo+IC0Ja2ZyZWUobWdyKTsKPiAtCW1hbi0+cHJpdiA9IE5V TEw7Cj4gICAKPiAgIAlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2X2F0dHJfbWVt X2luZm9fZ3R0X3RvdGFsKTsKPiAgIAlkZXZpY2VfcmVtb3ZlX2ZpbGUoYWRldi0+ZGV2LCAmZGV2 X2F0dHJfbWVtX2luZm9fZ3R0X3VzZWQpOwo+ICAgCj4gICAJdHRtX2JvX21hbl9jbGVhbnVwKG1h bik7Cj4gKwl0dG1fc2V0X2RyaXZlcl9tYW5hZ2VyKCZhZGV2LT5tbWFuLmJkZXYsIFRUTV9QTF9U VCwgTlVMTCk7Cj4gKwlrZnJlZShtZ3IpOwo+ICAgfQo+ICAgCj4gICAvKioKPiBAQCAtMTg0LDcg KzE5MSw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2d0dF9tZ3JfbmV3KHN0cnVjdCB0dG1fbWVtX3R5 cGVfbWFuYWdlciAqbWFuLAo+ICAgCQkJICAgICAgY29uc3Qgc3RydWN0IHR0bV9wbGFjZSAqcGxh Y2UsCj4gICAJCQkgICAgICBzdHJ1Y3QgdHRtX21lbV9yZWcgKm1lbSkKPiAgIHsKPiAtCXN0cnVj dCBhbWRncHVfZ3R0X21nciAqbWdyID0gbWFuLT5wcml2Owo+ICsJc3RydWN0IGFtZGdwdV9ndHRf bWdyICptZ3IgPSB0b19ndHRfbWdyKG1hbik7Cj4gICAJc3RydWN0IGFtZGdwdV9ndHRfbm9kZSAq bm9kZTsKPiAgIAlpbnQgcjsKPiAgIAo+IEBAIC0yNDUsNyArMjUyLDcgQEAgc3RhdGljIGludCBh bWRncHVfZ3R0X21ncl9uZXcoc3RydWN0IHR0bV9tZW1fdHlwZV9tYW5hZ2VyICptYW4sCj4gICBz dGF0aWMgdm9pZCBhbWRncHVfZ3R0X21ncl9kZWwoc3RydWN0IHR0bV9tZW1fdHlwZV9tYW5hZ2Vy ICptYW4sCj4gICAJCQkgICAgICAgc3RydWN0IHR0bV9tZW1fcmVnICptZW0pCj4gICB7Cj4gLQlz dHJ1Y3QgYW1kZ3B1X2d0dF9tZ3IgKm1nciA9IG1hbi0+cHJpdjsKPiArCXN0cnVjdCBhbWRncHVf Z3R0X21nciAqbWdyID0gdG9fZ3R0X21ncihtYW4pOwo+ICAgCXN0cnVjdCBhbWRncHVfZ3R0X25v ZGUgKm5vZGUgPSBtZW0tPm1tX25vZGU7Cj4gICAKPiAgIAlpZiAobm9kZSkgewo+IEBAIC0yNjcs NyArMjc0LDcgQEAgc3RhdGljIHZvaWQgYW1kZ3B1X2d0dF9tZ3JfZGVsKHN0cnVjdCB0dG1fbWVt X3R5cGVfbWFuYWdlciAqbWFuLAo+ICAgICovCj4gICB1aW50NjRfdCBhbWRncHVfZ3R0X21ncl91 c2FnZShzdHJ1Y3QgdHRtX21lbV90eXBlX21hbmFnZXIgKm1hbikKPiAgIHsKPiAtCXN0cnVjdCBh bWRncHVfZ3R0X21nciAqbWdyID0gbWFuLT5wcml2Owo+ICsJc3RydWN0IGFtZGdwdV9ndHRfbWdy ICptZ3IgPSB0b19ndHRfbWdyKG1hbik7Cj4gICAJczY0IHJlc3VsdCA9IG1hbi0+c2l6ZSAtIGF0 b21pYzY0X3JlYWQoJm1nci0+YXZhaWxhYmxlKTsKPiAgIAo+ICAgCXJldHVybiAocmVzdWx0ID4g MCA/IHJlc3VsdCA6IDApICogUEFHRV9TSVpFOwo+IEBAIC0yNzUsNyArMjgyLDcgQEAgdWludDY0 X3QgYW1kZ3B1X2d0dF9tZ3JfdXNhZ2Uoc3RydWN0IHR0bV9tZW1fdHlwZV9tYW5hZ2VyICptYW4p Cj4gICAKPiAgIGludCBhbWRncHVfZ3R0X21ncl9yZWNvdmVyKHN0cnVjdCB0dG1fbWVtX3R5cGVf bWFuYWdlciAqbWFuKQo+ICAgewo+IC0Jc3RydWN0IGFtZGdwdV9ndHRfbWdyICptZ3IgPSBtYW4t PnByaXY7Cj4gKwlzdHJ1Y3QgYW1kZ3B1X2d0dF9tZ3IgKm1nciA9IHRvX2d0dF9tZ3IobWFuKTsK PiAgIAlzdHJ1Y3QgYW1kZ3B1X2d0dF9ub2RlICpub2RlOwo+ICAgCXN0cnVjdCBkcm1fbW1fbm9k ZSAqbW1fbm9kZTsKPiAgIAlpbnQgciA9IDA7Cj4gQEAgLTMwMyw3ICszMTAsNyBAQCBpbnQgYW1k Z3B1X2d0dF9tZ3JfcmVjb3ZlcihzdHJ1Y3QgdHRtX21lbV90eXBlX21hbmFnZXIgKm1hbikKPiAg IHN0YXRpYyB2b2lkIGFtZGdwdV9ndHRfbWdyX2RlYnVnKHN0cnVjdCB0dG1fbWVtX3R5cGVfbWFu YWdlciAqbWFuLAo+ICAgCQkJCSBzdHJ1Y3QgZHJtX3ByaW50ZXIgKnByaW50ZXIpCj4gICB7Cj4g LQlzdHJ1Y3QgYW1kZ3B1X2d0dF9tZ3IgKm1nciA9IG1hbi0+cHJpdjsKPiArCXN0cnVjdCBhbWRn cHVfZ3R0X21nciAqbWdyID0gdG9fZ3R0X21ncihtYW4pOwo+ICAgCj4gICAJc3Bpbl9sb2NrKCZt Z3ItPmxvY2spOwo+ICAgCWRybV9tbV9wcmludCgmbWdyLT5tbSwgcHJpbnRlcik7Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92cmFtX21nci5jIGIvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZyYW1fbWdyLmMKPiBpbmRleCBkMzNhNzUw ZTA3YTguLjlkNGExMzkyNmI4YyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfdnJhbV9tZ3IuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdV92cmFtX21nci5jCj4gQEAgLTI5LDEyICsyOSwxOCBAQAo+ICAgI2luY2x1ZGUgImF0 b20uaCIKPiAgIAo+ICAgc3RydWN0IGFtZGdwdV92cmFtX21nciB7Cj4gKwlzdHJ1Y3QgdHRtX21l bV90eXBlX21hbmFnZXIgbWFuYWdlcjsKPiAgIAlzdHJ1Y3QgZHJtX21tIG1tOwo+ICAgCXNwaW5s b2NrX3QgbG9jazsKPiAgIAlhdG9taWM2NF90IHVzYWdlOwo+ICAgCWF0b21pYzY0X3QgdmlzX3Vz YWdlOwo+ICAgfTsKPiAgIAo+ICtzdGF0aWMgaW5saW5lIHN0cnVjdCBhbWRncHVfdnJhbV9tZ3Ig KnRvX3ZyYW1fbWdyKHN0cnVjdCB0dG1fbWVtX3R5cGVfbWFuYWdlciAqbWFuKQo+ICt7Cj4gKwly ZXR1cm4gY29udGFpbmVyX29mKG1hbiwgc3RydWN0IGFtZGdwdV92cmFtX21nciwgbWFuYWdlcik7 Cj4gK30KPiArCj4gICAvKioKPiAgICAqIERPQzogbWVtX2luZm9fdnJhbV90b3RhbAo+ICAgICoK PiBAQCAtMTcwLDI5ICsxNzYsMzIgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCB0dG1fbWVtX3R5cGVf bWFuYWdlcl9mdW5jIGFtZGdwdV92cmFtX21ncl9mdW5jOwo+ICAgICovCj4gICBpbnQgYW1kZ3B1 X3ZyYW1fbWdyX2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCj4gICB7Cj4gLQlzdHJ1 Y3QgdHRtX21lbV90eXBlX21hbmFnZXIgKm1hbiA9IHR0bV9tYW5hZ2VyX3R5cGUoJmFkZXYtPm1t YW4uYmRldiwgVFRNX1BMX1ZSQU0pOwo+ICsJc3RydWN0IHR0bV9tZW1fdHlwZV9tYW5hZ2VyICpt YW47Cj4gICAJc3RydWN0IGFtZGdwdV92cmFtX21nciAqbWdyOwo+ICAgCWludCByZXQ7Cj4gICAK PiArCW1nciA9IGt6YWxsb2Moc2l6ZW9mKCptZ3IpLCBHRlBfS0VSTkVMKTsKPiArCWlmICghbWdy KQo+ICsJCXJldHVybiAtRU5PTUVNOwo+ICsKPiArCW1hbiA9ICZtZ3ItPm1hbmFnZXI7Cj4gKwo+ ICAgCW1hbi0+YXZhaWxhYmxlX2NhY2hpbmcgPSBUVE1fUExfRkxBR19VTkNBQ0hFRCB8IFRUTV9Q TF9GTEFHX1dDOwo+ICAgCW1hbi0+ZGVmYXVsdF9jYWNoaW5nID0gVFRNX1BMX0ZMQUdfV0M7Cj4g ICAKPiAgIAl0dG1fYm9faW5pdF9tbV9iYXNlKCZhZGV2LT5tbWFuLmJkZXYsIG1hbiwgYWRldi0+ Z21jLnJlYWxfdnJhbV9zaXplID4+IFBBR0VfU0hJRlQpOwo+ICAgCj4gICAJbWFuLT5mdW5jID0g JmFtZGdwdV92cmFtX21ncl9mdW5jOwo+IC0JbWdyID0ga3phbGxvYyhzaXplb2YoKm1nciksIEdG UF9LRVJORUwpOwo+IC0JaWYgKCFtZ3IpCj4gLQkJcmV0dXJuIC1FTk9NRU07Cj4gICAKPiAgIAlk cm1fbW1faW5pdCgmbWdyLT5tbSwgMCwgbWFuLT5zaXplKTsKPiAgIAlzcGluX2xvY2tfaW5pdCgm bWdyLT5sb2NrKTsKPiAtCW1hbi0+cHJpdiA9IG1ncjsKPiAgIAo+ICAgCS8qIEFkZCB0aGUgdHdv IFZSQU0tcmVsYXRlZCBzeXNmcyBmaWxlcyAqLwo+ICAgCXJldCA9IHN5c2ZzX2NyZWF0ZV9maWxl cygmYWRldi0+ZGV2LT5rb2JqLCBhbWRncHVfdnJhbV9tZ3JfYXR0cmlidXRlcyk7Cj4gICAJaWYg KHJldCkKPiAgIAkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gcmVnaXN0ZXIgc3lzZnNcbiIpOwo+ICAg Cj4gKwl0dG1fc2V0X2RyaXZlcl9tYW5hZ2VyKCZhZGV2LT5tbWFuLmJkZXYsIFRUTV9QTF9WUkFN LCAmbWdyLT5tYW5hZ2VyKTsKPiAgIAl0dG1fYm9fdXNlX21tKG1hbik7Cj4gICAJcmV0dXJuIDA7 Cj4gICB9Cj4gQEAgLTIwOCw3ICsyMTcsNyBAQCBpbnQgYW1kZ3B1X3ZyYW1fbWdyX2luaXQoc3Ry dWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCj4gICB2b2lkIGFtZGdwdV92cmFtX21ncl9maW5pKHN0 cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQo+ICAgewo+ICAgCXN0cnVjdCB0dG1fbWVtX3R5cGVf bWFuYWdlciAqbWFuID0gdHRtX21hbmFnZXJfdHlwZSgmYWRldi0+bW1hbi5iZGV2LCBUVE1fUExf VlJBTSk7Cj4gLQlzdHJ1Y3QgYW1kZ3B1X3ZyYW1fbWdyICptZ3IgPSBtYW4tPnByaXY7Cj4gKwlz dHJ1Y3QgYW1kZ3B1X3ZyYW1fbWdyICptZ3IgPSB0b192cmFtX21ncihtYW4pOwo+ICAgCWludCBy ZXQ7Cj4gICAKPiAgIAl0dG1fYm9fZGlzYWJsZV9tbShtYW4pOwo+IEBAIC0yMjAsMTEgKzIyOSwx MiBAQCB2b2lkIGFtZGdwdV92cmFtX21ncl9maW5pKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2 KQo+ICAgCXNwaW5fbG9jaygmbWdyLT5sb2NrKTsKPiAgIAlkcm1fbW1fdGFrZWRvd24oJm1nci0+ bW0pOwo+ICAgCXNwaW5fdW5sb2NrKCZtZ3ItPmxvY2spOwo+IC0Ja2ZyZWUobWdyKTsKPiAtCW1h bi0+cHJpdiA9IE5VTEw7Cj4gKwo+ICAgCXN5c2ZzX3JlbW92ZV9maWxlcygmYWRldi0+ZGV2LT5r b2JqLCBhbWRncHVfdnJhbV9tZ3JfYXR0cmlidXRlcyk7Cj4gICAKPiAgIAl0dG1fYm9fbWFuX2Ns ZWFudXAobWFuKTsKPiArCXR0bV9zZXRfZHJpdmVyX21hbmFnZXIoJmFkZXYtPm1tYW4uYmRldiwg VFRNX1BMX1ZSQU0sIE5VTEwpOwo+ICsJa2ZyZWUobWdyKTsKPiAgIH0KPiAgIAo+ICAgLyoqCj4g QEAgLTMxNCw3ICszMjQsNyBAQCBzdGF0aWMgaW50IGFtZGdwdV92cmFtX21ncl9uZXcoc3RydWN0 IHR0bV9tZW1fdHlwZV9tYW5hZ2VyICptYW4sCj4gICAJCQkgICAgICAgc3RydWN0IHR0bV9tZW1f cmVnICptZW0pCj4gICB7Cj4gICAJc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSBhbWRncHVf dHRtX2FkZXYobWFuLT5iZGV2KTsKPiAtCXN0cnVjdCBhbWRncHVfdnJhbV9tZ3IgKm1nciA9IG1h bi0+cHJpdjsKPiArCXN0cnVjdCBhbWRncHVfdnJhbV9tZ3IgKm1nciA9IHRvX3ZyYW1fbWdyKG1h bik7Cj4gICAJc3RydWN0IGRybV9tbSAqbW0gPSAmbWdyLT5tbTsKPiAgIAlzdHJ1Y3QgZHJtX21t X25vZGUgKm5vZGVzOwo+ICAgCWVudW0gZHJtX21tX2luc2VydF9tb2RlIG1vZGU7Cj4gQEAgLTQz MCw3ICs0NDAsNyBAQCBzdGF0aWMgdm9pZCBhbWRncHVfdnJhbV9tZ3JfZGVsKHN0cnVjdCB0dG1f bWVtX3R5cGVfbWFuYWdlciAqbWFuLAo+ICAgCQkJCXN0cnVjdCB0dG1fbWVtX3JlZyAqbWVtKQo+ ICAgewo+ICAgCXN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2ID0gYW1kZ3B1X3R0bV9hZGV2KG1h bi0+YmRldik7Cj4gLQlzdHJ1Y3QgYW1kZ3B1X3ZyYW1fbWdyICptZ3IgPSBtYW4tPnByaXY7Cj4g KwlzdHJ1Y3QgYW1kZ3B1X3ZyYW1fbWdyICptZ3IgPSB0b192cmFtX21ncihtYW4pOwo+ICAgCXN0 cnVjdCBkcm1fbW1fbm9kZSAqbm9kZXMgPSBtZW0tPm1tX25vZGU7Cj4gICAJdWludDY0X3QgdXNh Z2UgPSAwLCB2aXNfdXNhZ2UgPSAwOwo+ICAgCXVuc2lnbmVkIHBhZ2VzID0gbWVtLT5udW1fcGFn ZXM7Cj4gQEAgLTU2Miw3ICs1NzIsNyBAQCB2b2lkIGFtZGdwdV92cmFtX21ncl9mcmVlX3NndChz dHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKPiAgICAqLwo+ICAgdWludDY0X3QgYW1kZ3B1X3Zy YW1fbWdyX3VzYWdlKHN0cnVjdCB0dG1fbWVtX3R5cGVfbWFuYWdlciAqbWFuKQo+ICAgewo+IC0J c3RydWN0IGFtZGdwdV92cmFtX21nciAqbWdyID0gbWFuLT5wcml2Owo+ICsJc3RydWN0IGFtZGdw dV92cmFtX21nciAqbWdyID0gdG9fdnJhbV9tZ3IobWFuKTsKPiAgIAo+ICAgCXJldHVybiBhdG9t aWM2NF9yZWFkKCZtZ3ItPnVzYWdlKTsKPiAgIH0KPiBAQCAtNTc2LDcgKzU4Niw3IEBAIHVpbnQ2 NF90IGFtZGdwdV92cmFtX21ncl91c2FnZShzdHJ1Y3QgdHRtX21lbV90eXBlX21hbmFnZXIgKm1h bikKPiAgICAqLwo+ICAgdWludDY0X3QgYW1kZ3B1X3ZyYW1fbWdyX3Zpc191c2FnZShzdHJ1Y3Qg dHRtX21lbV90eXBlX21hbmFnZXIgKm1hbikKPiAgIHsKPiAtCXN0cnVjdCBhbWRncHVfdnJhbV9t Z3IgKm1nciA9IG1hbi0+cHJpdjsKPiArCXN0cnVjdCBhbWRncHVfdnJhbV9tZ3IgKm1nciA9IHRv X3ZyYW1fbWdyKG1hbik7Cj4gICAKPiAgIAlyZXR1cm4gYXRvbWljNjRfcmVhZCgmbWdyLT52aXNf dXNhZ2UpOwo+ICAgfQo+IEBAIC01OTIsNyArNjAyLDcgQEAgdWludDY0X3QgYW1kZ3B1X3ZyYW1f bWdyX3Zpc191c2FnZShzdHJ1Y3QgdHRtX21lbV90eXBlX21hbmFnZXIgKm1hbikKPiAgIHN0YXRp YyB2b2lkIGFtZGdwdV92cmFtX21ncl9kZWJ1ZyhzdHJ1Y3QgdHRtX21lbV90eXBlX21hbmFnZXIg Km1hbiwKPiAgIAkJCQkgIHN0cnVjdCBkcm1fcHJpbnRlciAqcHJpbnRlcikKPiAgIHsKPiAtCXN0 cnVjdCBhbWRncHVfdnJhbV9tZ3IgKm1nciA9IG1hbi0+cHJpdjsKPiArCXN0cnVjdCBhbWRncHVf dnJhbV9tZ3IgKm1nciA9IHRvX3ZyYW1fbWdyKG1hbik7Cj4gICAKPiAgIAlzcGluX2xvY2soJm1n ci0+bG9jayk7Cj4gICAJZHJtX21tX3ByaW50KCZtZ3ItPm1tLCBwcmludGVyKTsKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5n IGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=