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=-8.3 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,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 56AACC282DD for ; Tue, 7 Jan 2020 18:26:10 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 07F4B2072A for ; Tue, 7 Jan 2020 18:26:10 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=synopsys.com header.i=@synopsys.com header.b="RVuRlnsB"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=synopsys.onmicrosoft.com header.i=@synopsys.onmicrosoft.com header.b="hqFYZ/nk" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728506AbgAGS0J (ORCPT ); Tue, 7 Jan 2020 13:26:09 -0500 Received: from smtprelay-out1.synopsys.com ([149.117.73.133]:50466 "EHLO smtprelay-out1.synopsys.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727925AbgAGS0I (ORCPT ); Tue, 7 Jan 2020 13:26:08 -0500 Received: from mailhost.synopsys.com (badc-mailhost2.synopsys.com [10.192.0.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by smtprelay-out1.synopsys.com (Postfix) with ESMTPS id C8D93405A7; Tue, 7 Jan 2020 18:26:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synopsys.com; s=mail; t=1578421567; bh=l7ak5lpTxNseUMoUZlW0lhqnhAZWSqUSQrgCdp4z67s=; h=From:To:CC:Subject:Date:References:In-Reply-To:From; b=RVuRlnsBBHBJSmibENDCD/sPJLBuIKHEvOiF+ItxUXsuBLZdrCfe+ZyY13uhlowTx nVrtiSZKhEws4/k11sM51WFe4TBYGQCZIvjRrv1MWGtMqAQH1lZ5/XOIcMdOb5/TxI jgmNVxCq6U42nP167ifHcq8LA+WjCHEXNJQxIGkAyBiW+f2e6xDaHWKVQn3maRnDPE fcl3gc6DVMdD2nr+TL24WutheQBt5a0uxDGwzX8NNZ+lgbdfLl+vb3GKHF2uVlyzEl 26Dv80buHn1b/DP98xvj6OtoSc9v/TQZJMCJcP0aAh99NdnqGRcPaebHPHXg+o71M+ qCr2Pai9A3YLA== Received: from US01WEHTC3.internal.synopsys.com (us01wehtc3.internal.synopsys.com [10.15.84.232]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mailhost.synopsys.com (Postfix) with ESMTPS id 4D4DCA006A; Tue, 7 Jan 2020 18:26:02 +0000 (UTC) Received: from us01hybrid1.internal.synopsys.com (10.200.27.51) by US01WEHTC3.internal.synopsys.com (10.15.84.232) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 7 Jan 2020 10:25:59 -0800 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (10.202.3.67) by mrs.synopsys.com (10.200.27.51) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 7 Jan 2020 10:25:58 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LEjBqRPxCNsbUwRPsDRl/9g4MuS0ZLuPb/u6zE3Uauehsq54TDzNorvc5VTggQrwWAMGxrdu91xV/P3s+PdRi0osRvstNwpSqUUc23a9uycjBvkBTzsprEfwxN7ZpLZmlxPKq1w8ewneovY39sCwIGywSdZR5NBPhzjqlvf3mz13dssTok2K1mxxttkg6gsNrqfd0dB/bQolXHPCYM9KSeLhPz4GIkZcrvsEY/zvglnh/vA5RyJhKd/w75y5FPcaV4++KyDTQL4JPnHGircfzo/1LQfVVOO9DrGJnnKbZQcaSZtqvONVNLLitZcAa3Z/caDbrEIceOhi6xTx3i81BQ== 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=l7ak5lpTxNseUMoUZlW0lhqnhAZWSqUSQrgCdp4z67s=; b=IHnqVSHt4eYxWRkyMfmgSX8Uxjdg3TwvPj73VsRkp+kyM+4GukvWJNf3GQb2QItTbyoYkqvd+QXRU8klRAjsJsvm7OKHwx8MirujjbiT1TzQ2+ulRZiT/rnUoylqHhFNeY0Zrqvd3PBYlIwu1xWxFK6swi0lygWDjLLZNb2L4IPzSw192EMeETaaS6s2j+d5j7/0U3NsF1HMR+tAQBCoGAJufUZHLBOfL2IoS1K2/hH1VYdSzK6ZC7CjwhowmZZ4UgtPFUBDjATsAwnp8BNZhJWI5i7ZwdV2Kueb2kpix1JteLbMmfnZvIKHjt7+QB04F2O1u1n8otjjmOAn9dsEQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=synopsys.com; dmarc=pass action=none header.from=synopsys.com; dkim=pass header.d=synopsys.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=synopsys.onmicrosoft.com; s=selector2-synopsys-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l7ak5lpTxNseUMoUZlW0lhqnhAZWSqUSQrgCdp4z67s=; b=hqFYZ/nkt4+QAcAnVDiUPPkZjwl0LWMbwEMvi1LSxWrXVZEyCr1h5nDhxyRy89WnCCu513K2RsK5/uj6f9KQXXvWxWBestcc4HzAKvnh04d6GkdaPwxKw4bNBTIoccUvr8aJTOvfoeG9CH+E2g41QTj1P9/xTBK1acYU8a9LUIU= Received: from BYAPR12MB3592.namprd12.prod.outlook.com (20.178.54.89) by BYAPR12MB3240.namprd12.prod.outlook.com (20.179.93.28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2602.11; Tue, 7 Jan 2020 18:25:57 +0000 Received: from BYAPR12MB3592.namprd12.prod.outlook.com ([fe80::39a1:22ee:7030:8333]) by BYAPR12MB3592.namprd12.prod.outlook.com ([fe80::39a1:22ee:7030:8333%6]) with mapi id 15.20.2623.008; Tue, 7 Jan 2020 18:25:57 +0000 From: Vineet Gupta To: Eugeniy Paltsev , "linux-snps-arc@lists.infradead.org" CC: "linux-kernel@vger.kernel.org" , "Alexey Brodkin" Subject: Re: [PATCH 4/5] ARC: add support for DSP-enabled userspace applications Thread-Topic: [PATCH 4/5] ARC: add support for DSP-enabled userspace applications Thread-Index: AQHVvOAMSI6VRGHN00GBtEUk/fXvJafflg0A Date: Tue, 7 Jan 2020 18:25:57 +0000 Message-ID: References: <20191227180347.3579-1-Eugeniy.Paltsev@synopsys.com> <20191227180347.3579-5-Eugeniy.Paltsev@synopsys.com> In-Reply-To: <20191227180347.3579-5-Eugeniy.Paltsev@synopsys.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 authentication-results: spf=none (sender IP is ) smtp.mailfrom=vgupta@synopsys.com; x-originating-ip: [149.117.75.11] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 19a2a052-fd00-4c21-2a7d-08d7939f0a30 x-ms-traffictypediagnostic: BYAPR12MB3240: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-forefront-prvs: 027578BB13 x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(39860400002)(346002)(376002)(366004)(396003)(136003)(189003)(199004)(186003)(110136005)(26005)(316002)(5660300002)(2616005)(478600001)(6506007)(53546011)(54906003)(64756008)(66556008)(66476007)(76116006)(2906002)(66946007)(66446008)(31686004)(8936002)(71200400001)(6486002)(81166006)(81156014)(86362001)(8676002)(31696002)(4326008)(36756003)(107886003)(6512007);DIR:OUT;SFP:1102;SCL:1;SRVR:BYAPR12MB3240;H:BYAPR12MB3592.namprd12.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: synopsys.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: PbZHgRo5GVk6mmkhaFZ2cU1svyqO1t2xIbRa5VD0mJuEDg0EAXibJx4Rap2G6QDSSJGmFM1JpV7iUvzxZWvMysMjruR3m6Zqx10vC9SQ0KT3gEzQYHJymgDb9k/HSLNDt578/0Cqfu0MwZ6Q3dpcFzXEMKAiEiPIUbKyu9I7heSiC9i5CGiJOTROzV1JCfIdO53tn3ry+YrM/t8P7m27EAA24j+yI/3kGaGR62oGUnGQcJhdIvLoq67wcj7JJeV5aqEVC2AD23Lejz/m1M7oDBQeFEJq/SlPPjnX2+NaEv+BVET8ZqAG46HLwV7kkMCT5akI3SZfuWWDOMUuuUU5lAH+xGWL5dzZ1PtVZFxIcWNTaHN7KR9xlAiZ+YD1TYYLgO6DqU+eLNifEZlh2um40h05UB95sxsP9o9ZHsmRq5yh0lQQeX6N6bEM6N/g46rM Content-Type: text/plain; charset="utf-8" Content-ID: <99F0AE71FD7F8F4D966F73EBF37E17BC@namprd12.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 19a2a052-fd00-4c21-2a7d-08d7939f0a30 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jan 2020 18:25:57.4787 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: c33c9f88-1eb7-4099-9700-16013fd9e8aa X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 4zCdihzFHnuA4sZ1pwSYRk08uXswY4tHApuYRgJB+Pojd642yC3WSI25h5p+G0NI0QxI38ziFYeS6MRLNJLRmA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR12MB3240 X-OriginatorOrg: synopsys.com Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gMTIvMjcvMTkgMTA6MDMgQU0sIEV1Z2VuaXkgUGFsdHNldiB3cm90ZToNCj4gVG8gYmUgYWJs ZSB0byBydW4gRFNQLWVuYWJsZWQgdXNlcnNwYWNlIGFwcGxpY2F0aW9ucyB3ZSBuZWVkIHRvDQo+ IHNhdmUgYW5kIHJlc3RvcmUgZm9sbG93aW5nIERTUC1yZWxhdGVkIHJlZ2lzdGVyczoNCj4gQXQg SVJRL2V4Y2VwdGlvbiBlbnRyeS9leGl0Og0KPiAgKiBBQ0MwX0dMTywgQUNDMF9HSEksIERTUF9D VFJMDQo+ICAqIEFDQzBfTE8sIEFDQzBfSEkgKHdlIGFscmVhZHkgc2F2ZSB0aGVtIGFzIHI1OCwg cjU5IHBhaXIpDQo+IEF0IGNvbnRleHQgc3dpdGNoOg0KPiAgKiBEU1BfQkZMWTAsIERTUF9GRlRf Q1RSTA0KDQpHb29kIHN1bW1hcnk6IGJ1dCB0aGUgcXVlc3Rpb24gaXMgdGhpcyBtb3JlIHRoYW4g bmVlZGVkLg0KRm9yIGtlcm5lbCBwcm9wZXIsIHlvdSd2ZSBkaXNhYmxlZCBndWFyZCBiaXRzLCBz YXR1cmF0aW9uIGV0YyBhbHJlYWR5LiBBRkFJS1MgZ2NjDQp3b24ndCBnZW5lcmF0ZSBjb21wbGV4 L2ZyYWN0aW9uYWwgbWF0aCBmb3Iga2VybmVsIHNvIHlvdXIgYnVsbGV0ICMxIGNhbiBsaWtlbHkg YmUNCmNvbnNpZGVyZWQgdXNlciBzcGFjZSBvbmx5IGhlbmNlIGNhbiBnbyB0byBidWxsZXQgIzMu IERvIHlvdSBoYXZlIHJlYXNvbnMgdG8NCmJlbGlldmUgb3RoZXJ3aXNlID8NCg0KPiBTaWduZWQt b2ZmLWJ5OiBFdWdlbml5IFBhbHRzZXYgPEV1Z2VuaXkuUGFsdHNldkBzeW5vcHN5cy5jb20+DQo+ IC0tLQ0KPiAgYXJjaC9hcmMvS2NvbmZpZyAgICAgICAgICAgICAgICAgICB8ICA3ICsrKw0KPiAg YXJjaC9hcmMvaW5jbHVkZS9hc20vYXJjcmVncy5oICAgICB8ICAyICsNCj4gIGFyY2gvYXJjL2lu Y2x1ZGUvYXNtL2RzcC1pbXBsLmggICAgfCA3NSArKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0NCj4gIGFyY2gvYXJjL2luY2x1ZGUvYXNtL2RzcC5oICAgICAgICAgfCA0MiArKysrKysrKysr KysrKysrKw0KPiAgYXJjaC9hcmMvaW5jbHVkZS9hc20vZW50cnktYXJjdjIuaCB8ICAzICsrDQo+ ICBhcmNoL2FyYy9pbmNsdWRlL2FzbS9wcm9jZXNzb3IuaCAgIHwgIDQgKysNCj4gIGFyY2gvYXJj L2luY2x1ZGUvYXNtL3B0cmFjZS5oICAgICAgfCAgNCArKw0KPiAgYXJjaC9hcmMvaW5jbHVkZS9h c20vc3dpdGNoX3RvLmggICB8ICAyICsNCj4gIGFyY2gvYXJjL2tlcm5lbC9hc20tb2Zmc2V0cy5j ICAgICAgfCAgNyArKysNCj4gIGFyY2gvYXJjL2tlcm5lbC9zZXR1cC5jICAgICAgICAgICAgfCAg MiArLQ0KPiAgMTAgZmlsZXMgY2hhbmdlZCwgMTQ2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pDQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcmMvaW5jbHVkZS9hc20vZHNwLmgNCj4N Cj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJjL0tjb25maWcgYi9hcmNoL2FyYy9LY29uZmlnDQo+IGlu ZGV4IGI5Y2Q3Y2UzZjg3OC4uYzMyMTA3NTRhM2QyIDEwMDY0NA0KPiAtLS0gYS9hcmNoL2FyYy9L Y29uZmlnDQo+ICsrKyBiL2FyY2gvYXJjL0tjb25maWcNCj4gQEAgLTQzMiw2ICs0MzIsMTMgQEAg Y29uZmlnIEFSQ19EU1BfS0VSTkVMDQo+ICAJICBEU1AgZXh0ZW5zaW9uIHByZXNlbmNlIGluIEhX LCBubyBzdXBwb3J0IGZvciBEU1AtZW5hYmxlZCB1c2Vyc3BhY2UNCj4gIAkgIGFwcGxpY2F0aW9u cy4gV2UgZG9uJ3Qgc2F2ZSAvIHJlc3RvcmUgRFNQIHJlZ2lzdGVycyBhbmQgb25seSBkbw0KPiAg CSAgc29tZSBtaW5pbWFsIHByZXBhcmF0aW9ucyBzbyB1c2Vyc3BhY2Ugd29uJ3QgYmUgYWJsZSB0 byBicmVhayBrZXJuZWwNCj4gKw0KPiArY29uZmlnIEFSQ19EU1BfVVNFUlNQQUNFDQo+ICsJYm9v bCAiU3VwcG9ydCBEU1AgZm9yIHVzZXJzcGFjZSBhcHBzIg0KPiArCXNlbGVjdCBBUkNfSEFTX0FD Q0xfUkVHUw0KPiArCWhlbHANCj4gKwkgIERTUCBleHRlbnNpb24gcHJlc2VuY2UgaW4gSFcsIHN1 cHBvcnQgc2F2ZSAvIHJlc3RvcmUgRFNQIHJlZ2lzdGVycyB0bw0KPiArCSAgcnVuIERTUC1lbmFi bGVkIHVzZXJzcGFjZSBhcHBsaWNhdGlvbnMNCj4gIGVuZGNob2ljZQ0KPiAgDQo+ICBjb25maWcg QVJDX0lSUV9OT19BVVRPU0FWRQ0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcmMvaW5jbHVkZS9hc20v YXJjcmVncy5oIGIvYXJjaC9hcmMvaW5jbHVkZS9hc20vYXJjcmVncy5oDQo+IGluZGV4IDAwMDRi MWU5YjMyNS4uYTcxMzgxOWNhYjNjIDEwMDY0NA0KPiAtLS0gYS9hcmNoL2FyYy9pbmNsdWRlL2Fz bS9hcmNyZWdzLmgNCj4gKysrIGIvYXJjaC9hcmMvaW5jbHVkZS9hc20vYXJjcmVncy5oDQo+IEBA IC0xMTgsNiArMTE4LDggQEANCj4gIA0KPiAgLyoNCj4gICAqIERTUC1yZWxhdGVkIHJlZ2lzdGVy cw0KPiArICogUmVnaXN0ZXJzIG5hbWVzIG11c3QgY29ycmVzcG9uZCB0byBkc3BfY2FsbGVlX3Jl Z3Mgc3RydWN0dXJlIGZpZWxkcyBuYW1lcw0KPiArICogZm9yIGF1dG9tYXRpYyBvZmZzZXQgY2Fs Y3VsYXRpb24gaW4gRFNQX0FVWF9TQVZFX1JFU1RPUkUgbWFjcm9zLg0KDQpnb29kIGlkZWEgZm9y IHByZXZlbnRpbmcgY2FyYm9uIGVycm9ycy4NCg0KPiAgICovDQo+ICAjZGVmaW5lIEFSQ19BVVhf RFNQX0JVSUxECTB4N0ENCj4gICNkZWZpbmUgQVJDX0FVWF9BQ0MwX0xPCQkweDU4MA0KPiBkaWZm IC0tZ2l0IGEvYXJjaC9hcmMvaW5jbHVkZS9hc20vZHNwLWltcGwuaCBiL2FyY2gvYXJjL2luY2x1 ZGUvYXNtL2RzcC1pbXBsLmgNCj4gaW5kZXggNzg4MDkzY2JlNjg5Li43YjY0MGE2ODBkZmMgMTAw NjQ0DQo+IC0tLSBhL2FyY2gvYXJjL2luY2x1ZGUvYXNtL2RzcC1pbXBsLmgNCj4gKysrIGIvYXJj aC9hcmMvaW5jbHVkZS9hc20vZHNwLWltcGwuaA0KPiBAQCAtNyw2ICs3LDggQEANCj4gICNpZm5k ZWYgX19BU01fQVJDX0RTUF9JTVBMX0gNCj4gICNkZWZpbmUgX19BU01fQVJDX0RTUF9JTVBMX0gN Cj4gIA0KPiArI2luY2x1ZGUgPGFzbS9kc3AuaD4NCj4gKw0KPiAgI2RlZmluZSBEU1BfQ1RSTF9E SVNBQkxFRF9BTEwJCTANCj4gIA0KPiAgI2lmZGVmIF9fQVNTRU1CTFlfXw0KPiBAQCAtMjgsMTEg KzMwLDgyIEBADQo+ICAJICogYWJsZSB0byBicmVhayBrZXJuZWwgKi8NCj4gIAltb3YJcjU4LCBE U1BfQ1RSTF9ESVNBQkxFRF9BTEwNCj4gIAlzcglyNTgsIFtBUkNfQVVYX0RTUF9DVFJMXQ0KPiAt I2VuZGlmIC8qIEFSQ19EU1BfS0VSTkVMICovDQo+ICsNCj4gKyNlbGlmIGRlZmluZWQoQVJDX0RT UF9TQVZFX1JFU1RPUkVfUkVHUykNCj4gKwlscglyNTgsIFtBUkNfQVVYX0FDQzBfR0xPXQ0KPiAr CWxyCXI1OSwgW0FSQ19BVVhfQUNDMF9HSEldDQo+ICsJU1QyCXI1OCwgcjU5LCBQVF9BQ0MwX0dM Tw0KPiArDQo+ICsJbHIJcjU4LCBbQVJDX0FVWF9EU1BfQ1RSTF0NCj4gKwlzdAlyNTgsIFtzcCwg UFRfRFNQX0NUUkxdDQo+ICsNCj4gKyNlbmRpZg0KPiArLmVuZG0NCj4gKw0KPiArLyogY2xvYmJl cnMgcjU4LCByNTkgcmVnaXN0ZXJzIHBhaXIgKi8NCj4gKy5tYWNybyBEU1BfUkVTVE9SRV9SRUdG SUxFX0lSUQ0KPiArI2lmIGRlZmluZWQoQVJDX0RTUF9TQVZFX1JFU1RPUkVfUkVHUykNCj4gKwlM RDIJcjU4LCByNTksIFBUX0FDQzBfR0xPDQo+ICsJc3IJcjU4LCBbQVJDX0FVWF9BQ0MwX0dMT10N Cj4gKwlzcglyNTksIFtBUkNfQVVYX0FDQzBfR0hJXQ0KPiArDQo+ICsJbGQJcjU4LCBbc3AsIFBU X0RTUF9DVFJMXQ0KPiArCXNyCXI1OCwgW0FSQ19BVVhfRFNQX0NUUkxdDQo+ICsNCj4gKyNlbmRp Zg0KDQpBc3N1bWluZyB5b3Ugc3RpbGwgbmVlZCB0aGlzLCBjb25zaWRlciB1c2luZyBkaWZmZXJl bnQgc2NyYXRjaCByZWdpc3RlcnMgaWYNCnBvc3NpYmxlLiBJIHVuZGVyc3RhbmQgaXQgZ2V0cyB0 cmlja3kgaW4gcmVzdG9yZSBwYXRoIGJ1dCB0aGVyZSBldmVuIG1vcmUNCnJlZ2lzdGVycyBhcmUg YXZhaWxhYmxlIHRvIGNsb2JiZXIgYXMgdGhleSB3aWxsIGJlIHJlc3RvcmVkIGFmdGVyIHRoaXMg Y29kZS4NCg0KPiArI2lmZGVmIEFSQ19EU1BfU0FWRV9SRVNUT1JFX1JFR1MNCj4gKw0KPiArLyoN Cj4gKyAqIEFzIHdlIHNhdmUgbmV3IGFuZCByZXN0b3JlIG9sZCBBVVggcmVnaXN0ZXIgdmFsdWUg aW4gdGhlIHNhbWUgcGxhY2Ugd2UNCj4gKyAqIGNhbiBvcHRpbWl6ZSBhIGJpdCBhbmQgdXNlIEFF WCBpbnN0cnVjdGlvbiAoc3dhcCBjb250ZW50cyBvZiBhbiBhdXhpbGlhcnkNCj4gKyAqIHJlZ2lz dGVyIHdpdGggYSBjb3JlIHJlZ2lzdGVyKSBpbnN0ZWFkIG9mIExSICsgU1IgcGFpci4NCj4gKyAq Lw0KPiArI2RlZmluZSBBVVhfU0FWRV9SRVNUT1JFKF9zYXZldG8sIF9yZWFkZnJvbSwgX29mZnQs IF9hdXgsIF9zY3JhdGNoKQlcDQo+ICtkbyB7CQkJCQkJCQkJXA0KPiArCV9fYXNtX18gX192b2xh dGlsZV9fKAkJCQkJCVwNCj4gKwkJImxkCSUwLCBbJTIsICU0XQkJCVxuIgkJXA0KPiArCQkiYWV4 CSUwLCBbJTNdCQkJXG4iCQlcDQo+ICsJCSJzdAklMCwgWyUxLCAlNF0JCQlcbiIJCVwNCj4gKwkJ OgkJCQkJCQlcDQo+ICsJCSAgIj0mciIgKF9zY3JhdGNoKQkvKiBtdXN0IGJlIGVhcmx5IGNsb2Ji ZXIgKi8JXA0KDQpEZWZpbmUgdGhlIHNjcmF0Y2ggdmFyaWFibGUgbG9jYWxseSBmb3IgY2xhcml0 eSBhbmQgYmV0dGVyIGxpdmVuZXNzIHRyYWNraW5nIC0gZm9yDQpib3RoIGNvZGUgcmVhZGVyIGFu ZCBjb21waWxlciA6LSkNCkFsc28gYXZvaWRzIGhhdmluZyB0byBpbml0aWFsaXplIGl0Lg0KDQo+ ICsJCToJCQkJCQkJXA0KPiArCQkgICAiciIgKF9zYXZldG8pLAkJCQkJXA0KPiArCQkgICAiciIg KF9yZWFkZnJvbSksCQkJCQlcDQo+ICsJCSAgICJJIiAoX2F1eCksCQkJCQkJXA0KPiArCQkgICAi SSIgKF9vZmZ0KQkJCQkJCVwNCj4gKwkJOgkJCQkJCQlcDQoNCkFFWCB3aXRoICJJIiBjb25zdHJh aW50IHdpbGwgbGlrZWx5IGJlIGFuIDggYnl0ZSBpbnN0cnVjdGlvbnMgYWx3YXlzLiBCZXN0IHRv IGdpdmUNCmNvbXBpbGVyIHdpZ2dsZSByb29tIHdpdGggIklyIg0KDQo+ICsJCSAgIm1lbW9yeSIJ CQkJCQlcDQo+ICsJKTsJCQkJCQkJCVwNCj4gK30gd2hpbGUgKDApDQo+ICsNCj4gKyNkZWZpbmUg RFNQX0FVWF9TQVZFX1JFU1RPUkUoX3NhdmV0bywgX3JlYWRmcm9tLCBfYXV4LCBfc2NyYXRjaCkJ XA0KPiArCUFVWF9TQVZFX1JFU1RPUkUoX3NhdmV0bywgX3JlYWRmcm9tLAkJCQlcDQo+ICsJCW9m ZnNldG9mKHN0cnVjdCBkc3BfY2FsbGVlX3JlZ3MsIF9hdXgpLAkJCVwNCj4gKwkJQVJDX0FVWF8j I19hdXgsIF9zY3JhdGNoKQ0KPiArDQo+ICtzdGF0aWMgaW5saW5lIHZvaWQgYXJjX2RzcF9zYXZl X3Jlc3RvcmUoc3RydWN0IHRhc2tfc3RydWN0ICpwcmV2LA0KPiArCQkJCQlzdHJ1Y3QgdGFza19z dHJ1Y3QgKm5leHQpDQo+ICt7DQo+ICsJbG9uZyB1bnNpZ25lZCBpbnQgKnNhdmV0byA9ICZwcmV2 LT50aHJlYWQuZHNwLkRTUF9CRkxZMDsNCj4gKwlsb25nIHVuc2lnbmVkIGludCAqcmVhZGZyb20g PSAmbmV4dC0+dGhyZWFkLmRzcC5EU1BfQkZMWTA7DQo+ICsNCj4gKwlsb25nIHVuc2lnbmVkIGlu dCB6ZXJvID0gMDsNCg0KU2VlIGNvbW1lbnQgYWJvdXQgcHVzaGluZyBzY3JhdGNoIHRvIHRoZSBy ZWxldmFudCBjb2RlIGJsb2NrLg0KDQo+ICsNCj4gKwlEU1BfQVVYX1NBVkVfUkVTVE9SRShzYXZl dG8sIHJlYWRmcm9tLCBEU1BfQkZMWTAsIHplcm8pOw0KPiArCURTUF9BVVhfU0FWRV9SRVNUT1JF KHNhdmV0bywgcmVhZGZyb20sIERTUF9GRlRfQ1RSTCwgemVybyk7DQo+ICt9DQo+ICsNCg0KW3Nu aXBdDQoNCj4gKw0KPiArI2lmIGRlZmluZWQoQ09ORklHX0FSQ19EU1BfVVNFUlNQQUNFKQ0KPiAr I2RlZmluZSBBUkNfRFNQX1NBVkVfUkVTVE9SRV9SRUdTCTENCj4gKyNlbmRpZg0KDQpJIGNhbiBz ZWUgdSBhZGRlZCB0aGlzIGZvciBjb25zaXN0ZW5jeSB3aXRoIGJlbG93IHdoaWNoIGlzIGEgcmVh bGx5IGJhZCBpZGVhOiBzZWUNCmJlbG93Lg0KDQo+ICsNCj4gKyNpZm5kZWYgX19BU1NFTUJMWV9f DQo+ICsNCj4gKy8qIHNvbWUgZGVmaW5lcyB0byBzaW1wbGlmeSBjb25maWcgc2FuaXRpemUgaW4g a2VybmVsL3NldHVwLmMgKi8NCj4gKyNpZiBkZWZpbmVkKENPTkZJR19BUkNfRFNQX0tFUk5FTCkg CXx8IFwNCj4gKyAgICBkZWZpbmVkKENPTkZJR19BUkNfRFNQX1VTRVJTUEFDRSkNCj4gKyNkZWZp bmUgQVJDX0RTUF9IQU5ETEVECQkJMQ0KPiArI2Vsc2UNCj4gKyNkZWZpbmUgQVJDX0RTUF9IQU5E TEVECQkJMA0KPiArI2VuZGlmDQoNClRoaXMgaXMgYSByZWFsbHkgYmFkIGlkZWEgLSB1IHIgaW50 cm9kdWNpbmcgZXhwbGljaXQgaW5jbHVkZSBkZXBlbmRlbmNpZXMgd2hpY2gNCmNhbiBjaGFuZ2Ug ZXZlbiBvdXRzaWRlIG9mIGFyY2ggY2hhbmdlcyAhDQpXZSd2ZSBkZWFsdCB3aXRoIGVub3VnaCBv ZiB0aGVzZSBwcm9ibGVtcyB3aXRoIGN1cnJlbnQuaCwgc28gYmVzdCB0byBhdm9pZCwgZXZlbg0K aWYgdGhlcmUgaXMgc29tZSBjb2RlIGNsdXR0ZXIuDQoNCj4gKw0KPiArI2lmIGRlZmluZWQoQ09O RklHX0FSQ19EU1BfVVNFUlNQQUNFKQ0KPiArI2RlZmluZSBBUkNfRFNQX09QVF9OQU1FCQkiQ09O RklHX0FSQ19EU1BfVVNFUlNQQUNFIg0KPiArI2Vsc2UNCj4gKyNkZWZpbmUgQVJDX0RTUF9PUFRf TkFNRQkJIkNPTkZJR19BUkNfRFNQX0tFUk5FTCINCj4gKyNlbmRpZg0KPiArDQo+ICsvKg0KPiAr ICogRFNQLXJlbGF0ZWQgc2F2ZWQgcmVnaXN0ZXJzIC0gbmVlZCB0byBiZSBzYXZlZCBvbmx5IHdo ZW4geW91IGFyZQ0KPiArICogc2NoZWR1bGVkIG91dC4NCj4gKyAqIHN0cnVjdHVyZSBmaWVsZHMg bmFtZSBtdXN0IGNvcnJlc3BvbmQgdG8gYXV4IHJlZ2lzdGVyIGRlZmVuaXRpb25zIGZvcg0KPiAr ICogYXV0b21hdGljIG9mZnNldCBjYWxjdWxhdGlvbiBpbiBEU1BfQVVYX1NBVkVfUkVTVE9SRSBt YWNyb3MNCj4gKyAqLw0KPiArc3RydWN0IGRzcF9jYWxsZWVfcmVncyB7DQo+ICsJdW5zaWduZWQg bG9uZyBEU1BfQkZMWTAsIERTUF9GRlRfQ1RSTDsNCj4gK307DQo+ICsNCj4gKyNlbmRpZiAvKiAh X19BU1NFTUJMWV9fICovDQo+ICsNCj4gKyNlbmRpZiAvKiBfX0FTTV9BUkNfRFNQX0ggKi8NCj4g ZGlmZiAtLWdpdCBhL2FyY2gvYXJjL2luY2x1ZGUvYXNtL2VudHJ5LWFyY3YyLmggYi9hcmNoL2Fy Yy9pbmNsdWRlL2FzbS9lbnRyeS1hcmN2Mi5oDQo+IGluZGV4IGUzZjhiZDNlMmViYS4uNWQwNzlm MGI2MjQzIDEwMDY0NA0KPiAtLS0gYS9hcmNoL2FyYy9pbmNsdWRlL2FzbS9lbnRyeS1hcmN2Mi5o DQo+ICsrKyBiL2FyY2gvYXJjL2luY2x1ZGUvYXNtL2VudHJ5LWFyY3YyLmgNCj4gQEAgLTE5Miw2 ICsxOTIsOSBAQA0KPiAgCWxkCXIyNSwgW3NwLCBQVF91c2VyX3IyNV0NCj4gICNlbmRpZg0KPiAg DQo+ICsJLyogY2xvYmJlcnMgcjU4LCByNTkgcmVnaXN0ZXJzIHBhaXIsIHNvIG11c3QgYmUgYmVm b3JlIHI1OCwgcjU5IHJlc3RvcmUgKi8NCj4gKwlEU1BfUkVTVE9SRV9SRUdGSUxFX0lSUQ0KPiAr DQo+ICAjaWZkZWYgQ09ORklHX0FSQ19IQVNfQUNDTF9SRUdTDQo+ICAJTEQyCXI1OCwgcjU5LCBQ VF9yNTgNCj4gICNlbmRpZg0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcmMvaW5jbHVkZS9hc20vcHJv Y2Vzc29yLmggYi9hcmNoL2FyYy9pbmNsdWRlL2FzbS9wcm9jZXNzb3IuaA0KPiBpbmRleCA3MDZl ZGVhYTU1ODMuLjE3MTZkZjBmNDQ3MiAxMDA2NDQNCj4gLS0tIGEvYXJjaC9hcmMvaW5jbHVkZS9h c20vcHJvY2Vzc29yLmgNCj4gKysrIGIvYXJjaC9hcmMvaW5jbHVkZS9hc20vcHJvY2Vzc29yLmgN Cj4gQEAgLTE0LDYgKzE0LDcgQEANCj4gICNpZm5kZWYgX19BU1NFTUJMWV9fDQo+ICANCj4gICNp bmNsdWRlIDxhc20vcHRyYWNlLmg+DQo+ICsjaW5jbHVkZSA8YXNtL2RzcC5oPg0KPiAgDQo+ICAj aWZkZWYgQ09ORklHX0FSQ19GUFVfU0FWRV9SRVNUT1JFDQo+ICAvKiBUaGVzZSBEUEZQIHJlZ3Mg bmVlZCB0byBiZSBzYXZlZC9yZXN0b3JlZCBhY3Jvc3MgY3R4LXN3ICovDQo+IEBAIC0zOSw2ICs0 MCw5IEBAIHN0cnVjdCB0aHJlYWRfc3RydWN0IHsNCj4gIAl1bnNpZ25lZCBsb25nIGtzcDsJLyog a2VybmVsIG1vZGUgc3RhY2sgcG9pbnRlciAqLw0KPiAgCXVuc2lnbmVkIGxvbmcgY2FsbGVlX3Jl ZzsJLyogcG9pbnRlciB0byBjYWxsZWUgcmVncyAqLw0KPiAgCXVuc2lnbmVkIGxvbmcgZmF1bHRf YWRkcmVzczsJLyogZGJscyBhcyBicmtwdCBob2xkZXIgYXMgd2VsbCAqLw0KPiArI2lmZGVmIEFS Q19EU1BfU0FWRV9SRVNUT1JFX1JFR1MNCj4gKwlzdHJ1Y3QgZHNwX2NhbGxlZV9yZWdzIGRzcDsN Cj4gKyNlbmRpZg0KPiAgI2lmZGVmIENPTkZJR19BUkNfRlBVX1NBVkVfUkVTVE9SRQ0KPiAgCXN0 cnVjdCBhcmNfZnB1IGZwdTsNCj4gICNlbmRpZg0KPiBkaWZmIC0tZ2l0IGEvYXJjaC9hcmMvaW5j bHVkZS9hc20vcHRyYWNlLmggYi9hcmNoL2FyYy9pbmNsdWRlL2FzbS9wdHJhY2UuaA0KPiBpbmRl eCBiYTk4NTRlZjM5ZTguLmE1ODUxZWUxNDFkZSAxMDA2NDQNCj4gLS0tIGEvYXJjaC9hcmMvaW5j bHVkZS9hc20vcHRyYWNlLmgNCj4gKysrIGIvYXJjaC9hcmMvaW5jbHVkZS9hc20vcHRyYWNlLmgN Cj4gQEAgLTgsNiArOCw3IEBADQo+ICAjZGVmaW5lIF9fQVNNX0FSQ19QVFJBQ0VfSA0KPiAgDQo+ ICAjaW5jbHVkZSA8dWFwaS9hc20vcHRyYWNlLmg+DQo+ICsjaW5jbHVkZSA8YXNtL2RzcC5oPg0K PiAgDQo+ICAjaWZuZGVmIF9fQVNTRU1CTFlfXw0KPiAgDQo+IEBAIC05MSw2ICs5Miw5IEBAIHN0 cnVjdCBwdF9yZWdzIHsNCj4gICNpZmRlZiBDT05GSUdfQVJDX0hBU19BQ0NMX1JFR1MNCj4gIAl1 bnNpZ25lZCBsb25nIHI1OCwgcjU5OwkvKiBBQ0NML0FDQ0ggdXNlZCBieSBGUFUgLyBEU1AgTVBZ ICovDQo+ICAjZW5kaWYNCj4gKyNpZmRlZiBBUkNfRFNQX1NBVkVfUkVTVE9SRV9SRUdTDQoNClVz ZSB0aGUgS2NvbmZpZyBvcHRpb24gbmFtZSBkaXJlY3RseSBvciAhQ09ORklHX05PX0RTUCBldGMN Cg0KPiArCXVuc2lnbmVkIGxvbmcgQUNDMF9HTE8sIEFDQzBfR0hJLCBEU1BfQ1RSTDsNCj4gKyNl bmRpZg0KDQpzZWUgY29tbWVudHMgYXQgdG9wLg0KDQo+ICANCj4gIAkvKi0tLS0tLS0gQmVsb3cg bGlzdCBhdXRvIHNhdmVkIGJ5IGgvdyAtLS0tLS0tLS0tLSovDQo+ICAJdW5zaWduZWQgbG9uZyBy MCwgcjEsIHIyLCByMywgcjQsIHI1LCByNiwgcjcsIHI4LCByOSwgcjEwLCByMTE7DQoNCltzbmlw XQ0KDQo+ICB9DQo+IGRpZmYgLS1naXQgYS9hcmNoL2FyYy9rZXJuZWwvc2V0dXAuYyBiL2FyY2gv YXJjL2tlcm5lbC9zZXR1cC5jDQo+IGluZGV4IGIzOTk1ZGQ2NzNkOS4uMzBkMzE1NzljNTFkIDEw MDY0NA0KPiAtLS0gYS9hcmNoL2FyYy9rZXJuZWwvc2V0dXAuYw0KPiArKysgYi9hcmNoL2FyYy9r ZXJuZWwvc2V0dXAuYw0KPiBAQCAtNDQ3LDcgKzQ0Nyw3IEBAIHN0YXRpYyB2b2lkIGFyY19jaGtf Y29yZV9jb25maWcodm9pZCkNCj4gIAkJQ0hLX09QVF9TVFJJQ1QoQ09ORklHX0FSQ19IQVNfQUND TF9SRUdTLCBwcmVzZW50KTsNCj4gIA0KPiAgCQlwcmVzZW50ID0gZHNwX2V4aXN0KCk7DQo+IC0J CUNIS19PUFRfU1RSSUNUKENPTkZJR19BUkNfRFNQX0tFUk5FTCwgcHJlc2VudCk7DQo+ICsJCWNo a19vcHRfc3RyaWN0KEFSQ19EU1BfT1BUX05BTUUsIHByZXNlbnQsIEFSQ19EU1BfSEFORExFRCk7 DQoNClRoaXMgbmVlZHMgdG8gYmUgcmV3b3JrZWQgZ2l2ZW4gdGhlIGhlYWRlciBmdWRnZSBpcyBu b3QgYSBnb29kIGlkZWEuDQoNCg== 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=-8.3 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,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 91377C282DD for ; Tue, 7 Jan 2020 18:26:13 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 4A8E52072A for ; Tue, 7 Jan 2020 18:26:13 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="np57hgLZ"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=synopsys.com header.i=@synopsys.com header.b="RVuRlnsB"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=synopsys.onmicrosoft.com header.i=@synopsys.onmicrosoft.com header.b="hqFYZ/nk" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4A8E52072A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=synopsys.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-snps-arc-bounces+linux-snps-arc=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-ID:In-Reply-To: References:Message-ID:Date:Subject:To:From:Reply-To:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=NNHArfCILOBW4YwBqD4V/K/0gIIo+8+yEfA5waB0Rjk=; b=np57hgLZ+5quIt CBTjdtmiN0qD48v85RdMhVqlzmzDDFVB1nkCiVWbSWC8psyVNgr2su1OKsB4y6WAKghMIP+a18IUf oBenNQ36vWhOPSqeWXKfHjBiBYehWpu1hIIXFCx7O9/oW+pKHUHu7AK6l6Gl1TGe4zIZrGe22KlgE tqe6Ru12J5aiKh6dyyltbQS7WkTrlVQAgb/xiBpYD1l8w1AKh7VV9wIUBigf1cOniWxPa4fhaMIzT xPb8lOBcTbTu3cJ9EfuzesKj5VdD8yay6jqRUa8qp2OkmbssKk0uwJBN205GJUVTeACsq2rhGGH7j 4ikXL4SIbkv19nIsbp4Q==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1iotYS-0000Pb-2J; Tue, 07 Jan 2020 18:26:12 +0000 Received: from smtprelay-out1.synopsys.com ([149.117.73.133]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1iotYP-0000Ox-8S for linux-snps-arc@lists.infradead.org; Tue, 07 Jan 2020 18:26:11 +0000 Received: from mailhost.synopsys.com (badc-mailhost2.synopsys.com [10.192.0.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by smtprelay-out1.synopsys.com (Postfix) with ESMTPS id C8D93405A7; Tue, 7 Jan 2020 18:26:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synopsys.com; s=mail; t=1578421567; bh=l7ak5lpTxNseUMoUZlW0lhqnhAZWSqUSQrgCdp4z67s=; h=From:To:CC:Subject:Date:References:In-Reply-To:From; b=RVuRlnsBBHBJSmibENDCD/sPJLBuIKHEvOiF+ItxUXsuBLZdrCfe+ZyY13uhlowTx nVrtiSZKhEws4/k11sM51WFe4TBYGQCZIvjRrv1MWGtMqAQH1lZ5/XOIcMdOb5/TxI jgmNVxCq6U42nP167ifHcq8LA+WjCHEXNJQxIGkAyBiW+f2e6xDaHWKVQn3maRnDPE fcl3gc6DVMdD2nr+TL24WutheQBt5a0uxDGwzX8NNZ+lgbdfLl+vb3GKHF2uVlyzEl 26Dv80buHn1b/DP98xvj6OtoSc9v/TQZJMCJcP0aAh99NdnqGRcPaebHPHXg+o71M+ qCr2Pai9A3YLA== Received: from US01WEHTC3.internal.synopsys.com (us01wehtc3.internal.synopsys.com [10.15.84.232]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mailhost.synopsys.com (Postfix) with ESMTPS id 4D4DCA006A; Tue, 7 Jan 2020 18:26:02 +0000 (UTC) Received: from us01hybrid1.internal.synopsys.com (10.200.27.51) by US01WEHTC3.internal.synopsys.com (10.15.84.232) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 7 Jan 2020 10:25:59 -0800 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (10.202.3.67) by mrs.synopsys.com (10.200.27.51) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 7 Jan 2020 10:25:58 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LEjBqRPxCNsbUwRPsDRl/9g4MuS0ZLuPb/u6zE3Uauehsq54TDzNorvc5VTggQrwWAMGxrdu91xV/P3s+PdRi0osRvstNwpSqUUc23a9uycjBvkBTzsprEfwxN7ZpLZmlxPKq1w8ewneovY39sCwIGywSdZR5NBPhzjqlvf3mz13dssTok2K1mxxttkg6gsNrqfd0dB/bQolXHPCYM9KSeLhPz4GIkZcrvsEY/zvglnh/vA5RyJhKd/w75y5FPcaV4++KyDTQL4JPnHGircfzo/1LQfVVOO9DrGJnnKbZQcaSZtqvONVNLLitZcAa3Z/caDbrEIceOhi6xTx3i81BQ== 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=l7ak5lpTxNseUMoUZlW0lhqnhAZWSqUSQrgCdp4z67s=; b=IHnqVSHt4eYxWRkyMfmgSX8Uxjdg3TwvPj73VsRkp+kyM+4GukvWJNf3GQb2QItTbyoYkqvd+QXRU8klRAjsJsvm7OKHwx8MirujjbiT1TzQ2+ulRZiT/rnUoylqHhFNeY0Zrqvd3PBYlIwu1xWxFK6swi0lygWDjLLZNb2L4IPzSw192EMeETaaS6s2j+d5j7/0U3NsF1HMR+tAQBCoGAJufUZHLBOfL2IoS1K2/hH1VYdSzK6ZC7CjwhowmZZ4UgtPFUBDjATsAwnp8BNZhJWI5i7ZwdV2Kueb2kpix1JteLbMmfnZvIKHjt7+QB04F2O1u1n8otjjmOAn9dsEQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=synopsys.com; dmarc=pass action=none header.from=synopsys.com; dkim=pass header.d=synopsys.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=synopsys.onmicrosoft.com; s=selector2-synopsys-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l7ak5lpTxNseUMoUZlW0lhqnhAZWSqUSQrgCdp4z67s=; b=hqFYZ/nkt4+QAcAnVDiUPPkZjwl0LWMbwEMvi1LSxWrXVZEyCr1h5nDhxyRy89WnCCu513K2RsK5/uj6f9KQXXvWxWBestcc4HzAKvnh04d6GkdaPwxKw4bNBTIoccUvr8aJTOvfoeG9CH+E2g41QTj1P9/xTBK1acYU8a9LUIU= Received: from BYAPR12MB3592.namprd12.prod.outlook.com (20.178.54.89) by BYAPR12MB3240.namprd12.prod.outlook.com (20.179.93.28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2602.11; Tue, 7 Jan 2020 18:25:57 +0000 Received: from BYAPR12MB3592.namprd12.prod.outlook.com ([fe80::39a1:22ee:7030:8333]) by BYAPR12MB3592.namprd12.prod.outlook.com ([fe80::39a1:22ee:7030:8333%6]) with mapi id 15.20.2623.008; Tue, 7 Jan 2020 18:25:57 +0000 From: Vineet Gupta To: Eugeniy Paltsev , "linux-snps-arc@lists.infradead.org" Subject: Re: [PATCH 4/5] ARC: add support for DSP-enabled userspace applications Thread-Topic: [PATCH 4/5] ARC: add support for DSP-enabled userspace applications Thread-Index: AQHVvOAMSI6VRGHN00GBtEUk/fXvJafflg0A Date: Tue, 7 Jan 2020 18:25:57 +0000 Message-ID: References: <20191227180347.3579-1-Eugeniy.Paltsev@synopsys.com> <20191227180347.3579-5-Eugeniy.Paltsev@synopsys.com> In-Reply-To: <20191227180347.3579-5-Eugeniy.Paltsev@synopsys.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 authentication-results: spf=none (sender IP is ) smtp.mailfrom=vgupta@synopsys.com; x-originating-ip: [149.117.75.11] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 19a2a052-fd00-4c21-2a7d-08d7939f0a30 x-ms-traffictypediagnostic: BYAPR12MB3240: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-forefront-prvs: 027578BB13 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(346002)(376002)(366004)(396003)(136003)(189003)(199004)(186003)(110136005)(26005)(316002)(5660300002)(2616005)(478600001)(6506007)(53546011)(54906003)(64756008)(66556008)(66476007)(76116006)(2906002)(66946007)(66446008)(31686004)(8936002)(71200400001)(6486002)(81166006)(81156014)(86362001)(8676002)(31696002)(4326008)(36756003)(107886003)(6512007); DIR:OUT; SFP:1102; SCL:1; SRVR:BYAPR12MB3240; H:BYAPR12MB3592.namprd12.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: synopsys.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: PbZHgRo5GVk6mmkhaFZ2cU1svyqO1t2xIbRa5VD0mJuEDg0EAXibJx4Rap2G6QDSSJGmFM1JpV7iUvzxZWvMysMjruR3m6Zqx10vC9SQ0KT3gEzQYHJymgDb9k/HSLNDt578/0Cqfu0MwZ6Q3dpcFzXEMKAiEiPIUbKyu9I7heSiC9i5CGiJOTROzV1JCfIdO53tn3ry+YrM/t8P7m27EAA24j+yI/3kGaGR62oGUnGQcJhdIvLoq67wcj7JJeV5aqEVC2AD23Lejz/m1M7oDBQeFEJq/SlPPjnX2+NaEv+BVET8ZqAG46HLwV7kkMCT5akI3SZfuWWDOMUuuUU5lAH+xGWL5dzZ1PtVZFxIcWNTaHN7KR9xlAiZ+YD1TYYLgO6DqU+eLNifEZlh2um40h05UB95sxsP9o9ZHsmRq5yh0lQQeX6N6bEM6N/g46rM Content-ID: <99F0AE71FD7F8F4D966F73EBF37E17BC@namprd12.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 19a2a052-fd00-4c21-2a7d-08d7939f0a30 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jan 2020 18:25:57.4787 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: c33c9f88-1eb7-4099-9700-16013fd9e8aa X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 4zCdihzFHnuA4sZ1pwSYRk08uXswY4tHApuYRgJB+Pojd642yC3WSI25h5p+G0NI0QxI38ziFYeS6MRLNJLRmA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR12MB3240 X-OriginatorOrg: synopsys.com X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200107_102609_371589_EBE757A4 X-CRM114-Status: GOOD ( 24.55 ) X-BeenThere: linux-snps-arc@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on Synopsys ARC Processors List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Alexey Brodkin , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-snps-arc" Errors-To: linux-snps-arc-bounces+linux-snps-arc=archiver.kernel.org@lists.infradead.org On 12/27/19 10:03 AM, Eugeniy Paltsev wrote: > To be able to run DSP-enabled userspace applications we need to > save and restore following DSP-related registers: > At IRQ/exception entry/exit: > * ACC0_GLO, ACC0_GHI, DSP_CTRL > * ACC0_LO, ACC0_HI (we already save them as r58, r59 pair) > At context switch: > * DSP_BFLY0, DSP_FFT_CTRL Good summary: but the question is this more than needed. For kernel proper, you've disabled guard bits, saturation etc already. AFAIKS gcc won't generate complex/fractional math for kernel so your bullet #1 can likely be considered user space only hence can go to bullet #3. Do you have reasons to believe otherwise ? > Signed-off-by: Eugeniy Paltsev > --- > arch/arc/Kconfig | 7 +++ > arch/arc/include/asm/arcregs.h | 2 + > arch/arc/include/asm/dsp-impl.h | 75 +++++++++++++++++++++++++++++- > arch/arc/include/asm/dsp.h | 42 +++++++++++++++++ > arch/arc/include/asm/entry-arcv2.h | 3 ++ > arch/arc/include/asm/processor.h | 4 ++ > arch/arc/include/asm/ptrace.h | 4 ++ > arch/arc/include/asm/switch_to.h | 2 + > arch/arc/kernel/asm-offsets.c | 7 +++ > arch/arc/kernel/setup.c | 2 +- > 10 files changed, 146 insertions(+), 2 deletions(-) > create mode 100644 arch/arc/include/asm/dsp.h > > diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig > index b9cd7ce3f878..c3210754a3d2 100644 > --- a/arch/arc/Kconfig > +++ b/arch/arc/Kconfig > @@ -432,6 +432,13 @@ config ARC_DSP_KERNEL > DSP extension presence in HW, no support for DSP-enabled userspace > applications. We don't save / restore DSP registers and only do > some minimal preparations so userspace won't be able to break kernel > + > +config ARC_DSP_USERSPACE > + bool "Support DSP for userspace apps" > + select ARC_HAS_ACCL_REGS > + help > + DSP extension presence in HW, support save / restore DSP registers to > + run DSP-enabled userspace applications > endchoice > > config ARC_IRQ_NO_AUTOSAVE > diff --git a/arch/arc/include/asm/arcregs.h b/arch/arc/include/asm/arcregs.h > index 0004b1e9b325..a713819cab3c 100644 > --- a/arch/arc/include/asm/arcregs.h > +++ b/arch/arc/include/asm/arcregs.h > @@ -118,6 +118,8 @@ > > /* > * DSP-related registers > + * Registers names must correspond to dsp_callee_regs structure fields names > + * for automatic offset calculation in DSP_AUX_SAVE_RESTORE macros. good idea for preventing carbon errors. > */ > #define ARC_AUX_DSP_BUILD 0x7A > #define ARC_AUX_ACC0_LO 0x580 > diff --git a/arch/arc/include/asm/dsp-impl.h b/arch/arc/include/asm/dsp-impl.h > index 788093cbe689..7b640a680dfc 100644 > --- a/arch/arc/include/asm/dsp-impl.h > +++ b/arch/arc/include/asm/dsp-impl.h > @@ -7,6 +7,8 @@ > #ifndef __ASM_ARC_DSP_IMPL_H > #define __ASM_ARC_DSP_IMPL_H > > +#include > + > #define DSP_CTRL_DISABLED_ALL 0 > > #ifdef __ASSEMBLY__ > @@ -28,11 +30,82 @@ > * able to break kernel */ > mov r58, DSP_CTRL_DISABLED_ALL > sr r58, [ARC_AUX_DSP_CTRL] > -#endif /* ARC_DSP_KERNEL */ > + > +#elif defined(ARC_DSP_SAVE_RESTORE_REGS) > + lr r58, [ARC_AUX_ACC0_GLO] > + lr r59, [ARC_AUX_ACC0_GHI] > + ST2 r58, r59, PT_ACC0_GLO > + > + lr r58, [ARC_AUX_DSP_CTRL] > + st r58, [sp, PT_DSP_CTRL] > + > +#endif > +.endm > + > +/* clobbers r58, r59 registers pair */ > +.macro DSP_RESTORE_REGFILE_IRQ > +#if defined(ARC_DSP_SAVE_RESTORE_REGS) > + LD2 r58, r59, PT_ACC0_GLO > + sr r58, [ARC_AUX_ACC0_GLO] > + sr r59, [ARC_AUX_ACC0_GHI] > + > + ld r58, [sp, PT_DSP_CTRL] > + sr r58, [ARC_AUX_DSP_CTRL] > + > +#endif Assuming you still need this, consider using different scratch registers if possible. I understand it gets tricky in restore path but there even more registers are available to clobber as they will be restored after this code. > +#ifdef ARC_DSP_SAVE_RESTORE_REGS > + > +/* > + * As we save new and restore old AUX register value in the same place we > + * can optimize a bit and use AEX instruction (swap contents of an auxiliary > + * register with a core register) instead of LR + SR pair. > + */ > +#define AUX_SAVE_RESTORE(_saveto, _readfrom, _offt, _aux, _scratch) \ > +do { \ > + __asm__ __volatile__( \ > + "ld %0, [%2, %4] \n" \ > + "aex %0, [%3] \n" \ > + "st %0, [%1, %4] \n" \ > + : \ > + "=&r" (_scratch) /* must be early clobber */ \ Define the scratch variable locally for clarity and better liveness tracking - for both code reader and compiler :-) Also avoids having to initialize it. > + : \ > + "r" (_saveto), \ > + "r" (_readfrom), \ > + "I" (_aux), \ > + "I" (_offt) \ > + : \ AEX with "I" constraint will likely be an 8 byte instructions always. Best to give compiler wiggle room with "Ir" > + "memory" \ > + ); \ > +} while (0) > + > +#define DSP_AUX_SAVE_RESTORE(_saveto, _readfrom, _aux, _scratch) \ > + AUX_SAVE_RESTORE(_saveto, _readfrom, \ > + offsetof(struct dsp_callee_regs, _aux), \ > + ARC_AUX_##_aux, _scratch) > + > +static inline void arc_dsp_save_restore(struct task_struct *prev, > + struct task_struct *next) > +{ > + long unsigned int *saveto = &prev->thread.dsp.DSP_BFLY0; > + long unsigned int *readfrom = &next->thread.dsp.DSP_BFLY0; > + > + long unsigned int zero = 0; See comment about pushing scratch to the relevant code block. > + > + DSP_AUX_SAVE_RESTORE(saveto, readfrom, DSP_BFLY0, zero); > + DSP_AUX_SAVE_RESTORE(saveto, readfrom, DSP_FFT_CTRL, zero); > +} > + [snip] > + > +#if defined(CONFIG_ARC_DSP_USERSPACE) > +#define ARC_DSP_SAVE_RESTORE_REGS 1 > +#endif I can see u added this for consistency with below which is a really bad idea: see below. > + > +#ifndef __ASSEMBLY__ > + > +/* some defines to simplify config sanitize in kernel/setup.c */ > +#if defined(CONFIG_ARC_DSP_KERNEL) || \ > + defined(CONFIG_ARC_DSP_USERSPACE) > +#define ARC_DSP_HANDLED 1 > +#else > +#define ARC_DSP_HANDLED 0 > +#endif This is a really bad idea - u r introducing explicit include dependencies which can change even outside of arch changes ! We've dealt with enough of these problems with current.h, so best to avoid, even if there is some code clutter. > + > +#if defined(CONFIG_ARC_DSP_USERSPACE) > +#define ARC_DSP_OPT_NAME "CONFIG_ARC_DSP_USERSPACE" > +#else > +#define ARC_DSP_OPT_NAME "CONFIG_ARC_DSP_KERNEL" > +#endif > + > +/* > + * DSP-related saved registers - need to be saved only when you are > + * scheduled out. > + * structure fields name must correspond to aux register defenitions for > + * automatic offset calculation in DSP_AUX_SAVE_RESTORE macros > + */ > +struct dsp_callee_regs { > + unsigned long DSP_BFLY0, DSP_FFT_CTRL; > +}; > + > +#endif /* !__ASSEMBLY__ */ > + > +#endif /* __ASM_ARC_DSP_H */ > diff --git a/arch/arc/include/asm/entry-arcv2.h b/arch/arc/include/asm/entry-arcv2.h > index e3f8bd3e2eba..5d079f0b6243 100644 > --- a/arch/arc/include/asm/entry-arcv2.h > +++ b/arch/arc/include/asm/entry-arcv2.h > @@ -192,6 +192,9 @@ > ld r25, [sp, PT_user_r25] > #endif > > + /* clobbers r58, r59 registers pair, so must be before r58, r59 restore */ > + DSP_RESTORE_REGFILE_IRQ > + > #ifdef CONFIG_ARC_HAS_ACCL_REGS > LD2 r58, r59, PT_r58 > #endif > diff --git a/arch/arc/include/asm/processor.h b/arch/arc/include/asm/processor.h > index 706edeaa5583..1716df0f4472 100644 > --- a/arch/arc/include/asm/processor.h > +++ b/arch/arc/include/asm/processor.h > @@ -14,6 +14,7 @@ > #ifndef __ASSEMBLY__ > > #include > +#include > > #ifdef CONFIG_ARC_FPU_SAVE_RESTORE > /* These DPFP regs need to be saved/restored across ctx-sw */ > @@ -39,6 +40,9 @@ struct thread_struct { > unsigned long ksp; /* kernel mode stack pointer */ > unsigned long callee_reg; /* pointer to callee regs */ > unsigned long fault_address; /* dbls as brkpt holder as well */ > +#ifdef ARC_DSP_SAVE_RESTORE_REGS > + struct dsp_callee_regs dsp; > +#endif > #ifdef CONFIG_ARC_FPU_SAVE_RESTORE > struct arc_fpu fpu; > #endif > diff --git a/arch/arc/include/asm/ptrace.h b/arch/arc/include/asm/ptrace.h > index ba9854ef39e8..a5851ee141de 100644 > --- a/arch/arc/include/asm/ptrace.h > +++ b/arch/arc/include/asm/ptrace.h > @@ -8,6 +8,7 @@ > #define __ASM_ARC_PTRACE_H > > #include > +#include > > #ifndef __ASSEMBLY__ > > @@ -91,6 +92,9 @@ struct pt_regs { > #ifdef CONFIG_ARC_HAS_ACCL_REGS > unsigned long r58, r59; /* ACCL/ACCH used by FPU / DSP MPY */ > #endif > +#ifdef ARC_DSP_SAVE_RESTORE_REGS Use the Kconfig option name directly or !CONFIG_NO_DSP etc > + unsigned long ACC0_GLO, ACC0_GHI, DSP_CTRL; > +#endif see comments at top. > > /*------- Below list auto saved by h/w -----------*/ > unsigned long r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11; [snip] > } > diff --git a/arch/arc/kernel/setup.c b/arch/arc/kernel/setup.c > index b3995dd673d9..30d31579c51d 100644 > --- a/arch/arc/kernel/setup.c > +++ b/arch/arc/kernel/setup.c > @@ -447,7 +447,7 @@ static void arc_chk_core_config(void) > CHK_OPT_STRICT(CONFIG_ARC_HAS_ACCL_REGS, present); > > present = dsp_exist(); > - CHK_OPT_STRICT(CONFIG_ARC_DSP_KERNEL, present); > + chk_opt_strict(ARC_DSP_OPT_NAME, present, ARC_DSP_HANDLED); This needs to be reworked given the header fudge is not a good idea. _______________________________________________ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc