From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753020AbdGFGSO (ORCPT ); Thu, 6 Jul 2017 02:18:14 -0400 Received: from mail-eopbgr10119.outbound.protection.outlook.com ([40.107.1.119]:21120 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752949AbdGFGSL (ORCPT ); Thu, 6 Jul 2017 02:18:11 -0400 Authentication-Results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=axentia.se; Subject: Re: [PATCH v3 05/16] drm/fb-helper: do a generic fb_setcmap helper in terms of crtc .gamma_set To: Daniel Vetter Cc: Linux Kernel Mailing List , Boris Brezillon , dri-devel , Daniel Vetter References: <1499164632-5582-1-git-send-email-peda@axentia.se> <1499164632-5582-6-git-send-email-peda@axentia.se> <20170705062144.bdyngsas4uc5dj2d@phenom.ffwll.local> <3cbc02dc-e535-7d66-923b-c9a4d0f14f13@axentia.se> From: Peter Rosin Organization: Axentia Technologies AB Message-ID: <65772742-c18d-7e8b-93f5-74236409d46b@axentia.se> Date: Thu, 6 Jul 2017 08:18:02 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [81.224.171.159] X-ClientProxiedBy: HE1P18901CA0011.EURP189.PROD.OUTLOOK.COM (2603:10a6:3:8b::21) To VI1PR0202MB2557.eurprd02.prod.outlook.com (2603:10a6:801:6::8) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 3ad806fe-a180-41eb-7fbd-08d4c436c452 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(201703131423075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:VI1PR0202MB2557; X-Microsoft-Exchange-Diagnostics: 1;VI1PR0202MB2557;3:qA/gJE8wV3yLC6sfywbIdvVCQjN26RhUFx2FBfzplHw3XIjQ4hOIGESANf3Ntl2ByNq0sBUb+NNOedXPkTX6w/VG3Ljya3xUG6Q57abMktKhmN1ZaO2VJweXvdkEim9NBMBR0L67lSsjU/SNhnBdfprdlkrbe57Y19bZ8IQKP87d2TmbHfb3E8S8B7L9uctciJXmiTA2YrJxjojNOVl5tEZU5tYs7Snf6yMfNidalK6wIChh0TXRW0AU7bwVy+3jRxLcecxsjeJOyFYGOQJBe+s6S8uw2siMNokXqRdaeUSgvga8H4hlzpVVQJ2G4/5Dh2BMH/W99ZidNl3TcBZBni0jhtqvuwZLKUh6W714bz8HY3B39d/u04C5Yo47nLRtAe27Fx6q7YvOlT9i6+9AJVh/njI3kjwcViGL7hO33tDwlixcHaiS51tXr/eYqKTH8BV32/teDobVsTYZkv1MO79NXjWazdtimPwp1OGRKiL5H1s5b+2TWvihSZ1m3sUFdGeibUT6akHxvHTt+G4q2nMfPnrLwUKyNCEA8qBlfWwKKGlR3xGnb1hshHee2hDsMwXyxXaAmy/ueeQpDQ9P+/Dyw261DyLzInuqI0Zk0Yyolh7oKbOmeyipESr3quK5nv/lYb2QAMngSq7nhkGbIVhvI2JonAiX6EtsyijlZ24XjHZ6tpFlj3vcZUMy9MMtH/rlt7nVAxGiJq2ZfSJqNA== X-MS-TrafficTypeDiagnostic: VI1PR0202MB2557: X-Microsoft-Exchange-Diagnostics: 1;VI1PR0202MB2557;25:qKqCHTcRlo2l0QcpHYvnuj8hv3MsXqjVT8qvLBbstCtwtDf71qzDIVSdhzfKkvfZwYhssJcR7WXwFXsSZrt+iIRtGVIdO6MsqZ4Az9LjACstGizv5X1F4MaU0uHXikTAoKi+MSp0jJ6ko5X+nzuAt65gJ/3eI5luP3yM0s4ACuojFZgWifbXXEZB1DgZJBuf6+dXbjBGb+adlLRweG15MD7iDcRJ1idTzMcj2CvSO/nazX6KXR5ks5fU/OKVQ5UZrmIv8WZg215pWhMobql7vpfX9EcO5gxYACXrZ678qgpW0KdteX1Cnxt1wYrNQ5f5fwZ4n+gga3mMcC4gdA2qwjvcuaOUcH92zLNt1wLw9V6a42ASa1wNbrG2GGd51YfYz3Ob/CIveTb7MA1wzZPFnQixyrJaSn4r1KpTbGRpWOSPUzP2M7CUAIDu5Mb0jJt1KieICxWuuPW8u8VFbAabvUVHys5kkaXousFuuK/aFDB8/aDIgDtlrqbjXA2GNWt1mGa8bQPLmf9oPCUzZkwt1s84vH2Bs5h01WidBe0h+YYWRpi82Sji/uR9/0HPMdBPT1b2dRXMh0vepnSk7AOQm0V62KKYboWXz/hsO6viuaYlBfK7lKVNH20WmoghjEGVEUhMaRSy0T/DTtPcS4WcQoyytgDxDf1ds+EsNiyXcrnj19DVn+oAddEF9kNHEF4V50ZCZM/hidzoE87lCxEYetqvNxSAbCV/7LGNB28Owr6aOE/wFBJ4FWEYpkPH+y6Hefeq1PE/IJo3vOygId2EijnYaW1aD9qUWw90gDPXapJ3/TK4eFWxA3SYTZZWyy0eCXu3pPF8xiTh0/0fxUcCf1HELh+/VqZ0XPqAgFEE0gmrAV3V/KvOJfPhafceXafsim4rwju+ZKPAXOyZ3CA+A71sNUsLDFD27/wlbZUs//E= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0202MB2557;31:ecG0ziXIS4vJnznTDCHIKsr7rMTcMAZeVQJujfyj6tHYCqApLHPweh3S/EPrv3qNLX/z7DotpnQxYJpURLct0C6ueHs+ZOj+cOxxe6I3byQJkpCqo4FsMRaaIr+1qc7xXZCJJVpHFgguvhBueryPOE88ZS1ldsQLwfjGDhKEigSoGBq8nFf5xABrPp0WDgWXcjIvNAZIUfN2T3pnvXdEkXUInrorGKlJdkDAwkHkiLybif0VZke2BQTEx+JA//KBB9ayqVKMgcMSHWnWVZTPGHmdEqiyzEqziw6+gQ7EHxVcDYFflgwaqIclFKZKSr/AZVmlIzbNFBg7ALf9jeyBCuT/n+ddoBt7YQ9tvzysRYvcDgWeYh/IiEn+a9XpCc7qU2PUd881+EGkV+oxFrnWnMYJlUPVh37THEuEJsImyWWP+ra1waYjh3PiS8OVYw/+/FH5cIHiiFZJJJQI0vY1ZQxJNhldcNyhzW88jIT5ekJd/9c2CyRoG0L45KRgkkml4uuouOP0Y8n55Z+8C7xB9KTZCbO6iinF3+6N2GlPQkpDa2Hwg8ETRqr5WYvxsrkNniuPT5HagmUhK6jCHJNIMvCzkc5T6ginVMx6M/9ZXMMswxmW8mSt9ouZGb9FEQBbd/GMWv9DQE5n0oF/I2+dZ5vw9fR8zygTkz+vXfZYwj+QctsxqEMZiz1Im3eINNOC X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(236129657087228)(48057245064654); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(3002001)(6041248)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(2016111802025)(6072148)(6043046)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:VI1PR0202MB2557;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:VI1PR0202MB2557; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtWSTFQUjAyMDJNQjI1NTc7NDoySTdTWEd1Z2x1YWlvaHlYRllCM2JCTU5o?= =?utf-8?B?U2lwblpXdXBWbzJBd1BGUU1qWm1xbEZTYzhqTWlremowMnE3NU5XNHh4OFUy?= =?utf-8?B?LzlraDlEOFp4b3J5YWF2V2hJK242OGNaVVJUak5JUjh2VmlhaU5TMS9SZ24x?= =?utf-8?B?OWkzWG5pd1Mzd1l0L3FXR1hZQWNNV25FQ3N5MHpEZS9lbWRnZHFTck1xV0Z6?= =?utf-8?B?WjRSaHFJUWMvK3ZGdzJubnJBOXBiVGt0QVlhZkFwallHTmFUdmx6QXI0b3RG?= =?utf-8?B?blpNMlpSRkg2Q2NPQzZNbGQya09sVytYc09vMGhkR2JiOWgwT0RiSWtza0tn?= =?utf-8?B?RlBHSnZyam9tTVVLQzhPUzFuTy9SbDRqcFY5SlliSHV2NGZlcFFBSHBxWFll?= =?utf-8?B?TlFURU04SlBLY3dIYmVQb2thS1N2a2NzR2RyU0ZDTGVHQWxLalE5aUlEcTJ5?= =?utf-8?B?QjZhVTZxL29STk0wZTNaYlc5dEN0MjByY1RadzU0bGhOdytmdngxNHlxVHpB?= =?utf-8?B?N2pLb3BZOVBIajRRVUNGWWwwOGRWcFZnUGNQNHlZWVlMcmJGYW5RZGc0OGlY?= =?utf-8?B?UnNhVnpoVzQzMUoxQXhESDIxSW8xOTYxakkwQVVPOHRUTzRKOU93ZUtwUWh6?= =?utf-8?B?MTBqRnFmL2N1M24rM29BMWQ3NmgvaWkrQTVzQ2pMb0U5N210ZEl1TFgzOHdm?= =?utf-8?B?bFFnL20wUGJDMUdJL3A2Zm8wWXRVRFhqRThxTEZ2cVAvaS9sLzh0Vk90WG5Z?= =?utf-8?B?aGxjQmh3SHk3ekRZSTRkazZTeDlwckM2RFVMTlE0bWU4VVVEbzI5WExsSXF5?= =?utf-8?B?c3JJNkplNkJHc05MWmlGYnJoRiswdktIcnFLMXgrY05SL0lMWVlIWjIwN1k5?= =?utf-8?B?bmtVOER3RzFUQjRZNWREREpJWHFPWlZ6b0R0ZDhxMCt5WFhHYTVxNDRFNGMr?= =?utf-8?B?SFFlWTVpc2kyWitTYUxlYTR1bXg5QThweGpvQzljd20xa3lJaHM0R05maGNE?= =?utf-8?B?WnljQ3pUd3RGd3M0VEVTejNGZ0FuaXRoU0thSjdHZkRWeDVneVd5VkN3ZnZV?= =?utf-8?B?a1h6aCsrTlJtazlHYTJ0R05MMHlLYlFXWHQ4bmNJUkVBM2haNk9WWGNDTzNj?= =?utf-8?B?c3hCWk8zRkZDMkJ2emtTWjdtVlVsd2d3aXNIdHRWWGNSSGFHM3d1a2lTU3F2?= =?utf-8?B?bGMvMkd4cXh4SzhLYmRhb1hDdXNmWFBjblJJQXBKZmRlbDBxV2Y5NExDVHBH?= =?utf-8?B?TXZRWHV4eENCZ0JlY0Z2YlRrMTlXVUtMZzVIZlB0VktBYnhMakN5b0NBaS9E?= =?utf-8?B?Mmo4OFBobFU2SURKd3h0UVI4N1dTRWNOOEZJbVgyWkdLTU5weC9jSkxmUTln?= =?utf-8?B?MExKYTNxZmRreUtOUlVvRmJzaVMvNDNMeDdBZmF6dURpRjRwWWVZTzVyL090?= =?utf-8?B?YUo2L2FNdXpFTzBsb05NMWtmdy9ZRzdQK1IvMHYyMkNqNlR0a0doODU3T21y?= =?utf-8?B?OElKQzNCdWdEdFVzeWwyZkI1UEhGR0VmelQ0RDg0YXcxeTB5RXFRRDhDOSsy?= =?utf-8?B?ZlVSa1hhM1VJbVR6NEhaSGhON2RMd0Z3V1kwTlBIalZEbjhwS29FQ0JpVVlR?= =?utf-8?B?RUY5ZVF1bnozcUQ5aGpvdTZrdlZscDZwWis4anNkcmltQzBUUmliSERzRnRn?= =?utf-8?Q?4wd08Kaeq4cyxJ9FflRKMsVp+6OGmB7Qi5TF9rxf?= X-Forefront-PRVS: 03607C04F0 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(6049001)(39450400003)(39830400002)(39400400002)(39410400002)(377424004)(377454003)(24454002)(117156002)(64126003)(53936002)(305945005)(6666003)(7736002)(36756003)(54906002)(74482002)(6916009)(93886004)(2950100002)(6246003)(23676002)(53546010)(2906002)(4001350100001)(229853002)(50986999)(8676002)(81166006)(54356999)(966005)(50466002)(83506001)(478600001)(6306002)(33646002)(189998001)(86362001)(31696002)(6486002)(66066001)(77096006)(76176999)(3846002)(6116002)(47776003)(25786009)(65956001)(4326008)(3260700006)(110136004)(31686004)(230700001)(42186005)(38730400002)(5660300001)(142923001)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:VI1PR0202MB2557;H:[192.168.0.125];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtWSTFQUjAyMDJNQjI1NTc7MjM6WW5FbXNzdXJ6UUIza01WbEFCN1lOWVlW?= =?utf-8?B?alEzdllNVWtGNU9DRFllTDQ1SThmYXpwRE1VT284Z3dIeVJ6TFk4VU1KZHdj?= =?utf-8?B?TFpQeXQrN0ZRS0pGUnY4eXZnTDhqZmRUelczWjVneFpmb0J6WS9XN05GWGZU?= =?utf-8?B?SklGSk91NEk3a09nTVk3SmxaTFA4MHlKTVBxN09nUXBJWlZHSDRjc1ZMbmUr?= =?utf-8?B?U0YyNkY0NGwvQndCejR1Nkh6aTErcW5NM0lrU3FBNThodlVwZDN5OXlNVG5P?= =?utf-8?B?YlBNd0l4YklRYjkvSmpSamFncnB4elJFaHlwUU5KMlNoNlBtWTNKSW5mM3Ey?= =?utf-8?B?bTViQzc2Z01LL1FnbXh6bWZFRlVuejRnbjRtMUt4K3VDTG9HcDduU0VlNzly?= =?utf-8?B?b3A2RDJCR3dPRzVRWVIzZjhqRXVnYi84aWppdnVnNGVXakN1ZEVMQ0R5Q0w1?= =?utf-8?B?c2NMMGhYZ1RuOVhJOXBOeW12VUVOZkF3VHk5aVFsWHFjOTlOam9EUVE2dUxs?= =?utf-8?B?WXpmWUM4Q29ablNkR2IvQWVXTmN5d2NQRHNPVldNQ0I3clhLTUszVmJlS3Bu?= =?utf-8?B?MzhHenlpM1RwVFdlLytsY0xaOGhKZUZNVUg4VW5OZkJNbGl6ekh0UmVObTBM?= =?utf-8?B?TWtwM3ZNYjg4amJsanQ4bU9zUzFOUlBMd0cwRWZoVXRCQTNpSkk0STZaU2Jx?= =?utf-8?B?eXYxai9zNW9wMnd5UnEvL28xS2Y4bmpXY1JwVmY3eGM0ZDhUSnlDeHJHZXpn?= =?utf-8?B?WHplc2RTWGhTcENKUU8vUDVxSEF3UHhSd3lLOUJoQmVranRFMnhMR3hqVWdz?= =?utf-8?B?c29DMjcwaC9FQlJOazNnMWZlcjU4VE9MSlNZdkRza3VXbGVjT0ZDcThNQUJF?= =?utf-8?B?NWtJcGNSSkMvcU0rTmdnWWEzUjlKNU9iNFRpMy9ySE1pUm5tYTI3b04ra0wr?= =?utf-8?B?a0xXSXpPalRvQ3JGOGlWeEc1aXNlY0M3N25rSVVZY0VOY0ZiU0lrYzlzdW0y?= =?utf-8?B?a09KTlcrM1RjZU9BL2U0dzl0UFNIMGdQZmh4dDBNS0ZCK25OcnQvRE5GY0dh?= =?utf-8?B?SC90MUZZZXlYMlVTTjZ6aGs2d1FRQWYrTDhIWm9TdllnQUtvTnRyR05BQ1Qr?= =?utf-8?B?djl5c25aZE1BYkFRZ3EzVk5TUlFYRUNPdUtSQW9oU21uZ2wrQnkxbTZRcmJJ?= =?utf-8?B?WDJscXJFQ3J4K1k5Qkdpd0wyN056bUxPbXgxK3d5bUcrSW54cWJtRXdaTzc0?= =?utf-8?B?ZVVVQnd1TG9TVzlUM21RR2lrdU5GMDFrbkVXL0d2WkNWbkFRcE5leDBGL2lt?= =?utf-8?B?T09qc2xOU21sRkxxM3BLTVFPTFlkUHAzdDRUYnZEK1dHMHlEWXpLOE1tL1pD?= =?utf-8?B?Y3hkRjZtSkQ1aFI1UCszTmx2TS9OWGIzaFNtRVp6dGtKc3ZKM08rVGVaTXdY?= =?utf-8?B?ZXRhd0txWmlzdnZyS0p6TWNLaVZDa2xpbVN1eEFqWTVLUDYzOEZKaW9UTFBS?= =?utf-8?B?Rmc3dUt0S01GT0xXcHd5N2I5MTZIU0VMTWNGcWlwWllUcEM1dDk5L3hDeUZC?= =?utf-8?B?MVNsQUpCRkVNTFJwN0xtSng2MS8venFEbENNTmNZcVYxY3VXbzRSekRhNTlI?= =?utf-8?B?SkM4QkFmcFNNdDgxK1h1SmJXVC9WS2V3bnAyL3ZrY0U3anZJSHlNdkY0UmFm?= =?utf-8?B?ZUE3dXlBSjNjb3FKU0xGUjZHZjZ0NUxvNHJGMTFPM1F4L0lxc0J4Z3JsckU0?= =?utf-8?B?MHREenJmc01rL3NNS0crSmlGYzBDZWJTeFVtTzBncC83UXRDTlN4WVcreTNZ?= =?utf-8?B?L3JGczlYY0ZHaldwelBCUnQ2ZDJqaEZXbXlUcnBYSktPNDF2UlpSaEtJY2Za?= =?utf-8?B?d1N2NFQ3VGpldWtZMFltemlFSTdJaEdidEROS1drdE84dmkvQ3hHNmZzclZJ?= =?utf-8?Q?stEEO4aFaD/UUAeoOMoyyVL/24HaghRg=3D?= X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtWSTFQUjAyMDJNQjI1NTc7NjpmN1lZVm5jYmFmWXBERnJscE1LMUR0cXF2?= =?utf-8?B?dTdVc0dIUnBrRng4ZHoyOHdUeWNwM0FJYVdSNy9FTnpyaUlxWlFoMDZmRXdu?= =?utf-8?B?NGxsdlhtYnRiQTNDMC80Ujk2UkN0NXo5cDk0YlhaZ0FkV1ZEU0x6RUFFUTMr?= =?utf-8?B?NHF0ODFpU2RlUWtkaWNQdmU2VGdQSmhka0RGcUkzaHUzclIyanRvN1YwSTBE?= =?utf-8?B?WW50M1lVY1h6UDN2WXVGYjByaG15OE54TEVUZjN4WDJ5NWN3OHFsOGIyRU9F?= =?utf-8?B?VytTSFNqSEZjSkw0cCtaM3doRnJzUzViL2JOWUJkKzBzS0JtOWtIREx0T1BG?= =?utf-8?B?eFJybVpjQVh0blVzdjZnQkJTQUlSdTR1YjNvckI4bnNMSThrOTdVNWNwZjFW?= =?utf-8?B?eWlTN0l0aGFxYWJBSlVGQ0x0VXRVTCtqa1JiZTJiQ1E3QlE2cko1dXlSa3k3?= =?utf-8?B?dGFHZjlqeFRqbVduVWZIdXpIWjVOakpycmsxelVLZ0xtZFIranc1N2pDTVdJ?= =?utf-8?B?dXk2V3huVGRSdlJIU0JoT1BmNXZPR2VlMWRpYmdkUGtGQ0xKVHdURDhqbVFM?= =?utf-8?B?SFN2SWhrNTdxVEN0V1BWcloxUGVxdFUxbVBza1d0TjJYLys3UFB2WUphZ3kr?= =?utf-8?B?d1dJT1lGTXkvMEI1VUQrQW1mMExhdlJ6WG1BT0dCS090NEhtY1QrUWt2MFBU?= =?utf-8?B?bktGcU5lbnVha3FKWXZnSXQzK2VYRlpBMVlzU3M5NExsZUFVNllET0VONjdB?= =?utf-8?B?QlNleUxOMFBTUzZKdnJYNWtJbENvZ0FtQXV5Z1BpeWtBd2JnRXoya1B6RjZV?= =?utf-8?B?Y0k5RlF6ZHBwRE1HK20vK3hhZ3A1T1AzOHRsdGtiMmMraUJtb1l1VDU3Q0Rv?= =?utf-8?B?WFprZW1zK01xUm5CMHF1MUw1c1paS0JzMDhtYmFuUVNtNFlQY0RZU3UrcnFi?= =?utf-8?B?K01kQTFNM1p6dDcrR285bDVCV2lDWW9JMUF6OExWaVVVenBtSndCd2szSWhy?= =?utf-8?B?OERBUkhCVDNqbUd5dW9vYkVrbXBMOUY0TE5LWDAyRXYwVVNoTHBVUE9iNmZK?= =?utf-8?B?aXlRc3ljRUVyUk9PUkhuYisveUlEV0s1eE1hZWtVTlVoSlc3bEwvWTU3NnBG?= =?utf-8?B?NzNmRHloTm1wL1B5UHM4dmpYV1FMWENXL0RPNXBLZS9sMlh6R3p0NVROSGFl?= =?utf-8?B?UncwdnJWUUhYS055OEF2c1h1T1M0TGRtdy9WSmtDd3FIeDVLWjhOazNTZlVI?= =?utf-8?B?MkNjWFluNHBQUUlJdVd5TEU4SVBXTWc3SGpIZHhLSExCYzZtY2tXL2YxR1RT?= =?utf-8?Q?7w4G/lujeLTUlvPULjiCRmJQyW1PVKIdk=3D?= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0202MB2557;5:hPW5XkL1EEEdosYVcZJaHY/ZxtZN+NiKNhv4yi1vcZndXtBpv29PAl5PHplhcq4Ng50binT7IhIYAacjlPFZymsgQyhKYEG2glU5MXTl4FDkxbQuAa2ujySLjybHccuggZ/c0Chl6QLKB4d5y+qnnXHcL5snmvHHB/UGD1DNelcINnbeo443flg7H7vd4+pZYGGLQtMKDQcjB829sCjY3RJ2O0RLHnxO4q3tC3BpjtxSVLkhq8DzbwVjTo1H24B3Nmpf+33rY5SfNv7rZCRrwvrDvLKb7olZRxIRZ+E4tVg2jWo5TO7RW7OXNI+GOZinqIiMdPqExVQRFFU+8tl3pkkvxLZfV9mHo2JDy1cTQ28KrC5qLua4012dAXBb+eeEyIbmXlVHGQDcRTL2kHj9Y+uDb1xILh2Jhg/CHNHn2VM33bIcAdKca3iaRyElgLSVAIx0k8ppHd6Ot/ql8aX+xXC9xWdBbX7Vzd8+ERg81JHFVfC6obYoZEzRmsAUeM/F;24:b/U73pUFAJLqdJcRzjMJKicQnXBaqMAfrMh4zko2aJ16re1/qhtL1HiEXiV6u3yQTBK5y0WRxgOL5GMbmUn9JxcHQK8zCs/FJiGwresv2E4= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;VI1PR0202MB2557;7:5uj4n2tZzEmsRNQZSUUq8e8VLEsMjVvsNNOdw0LbC5ma/4408X7yVjGrjLGApwydBiy3R06q7LzFE/VhmcDbUs4ey1OQiF0jPOp/s2YxIU5Op2VVHZ2GZWEFXToBAkzo0zWqsnoVBcU7QLc8KfDwg+rceQfTTt2xPs+S4ZLEJ2xldyCJ0lGtMLWSIIY92fj9IKkVD8upe09Qv4BYCbofVHdQ9VClBJjeVrzvMmlhftqtSMeYzrK+6fbLxGI9xgHDVNtQwWAgkeOF4D1aQjGHuTn3o9T13rNVzchfSETik0T+MZHzzqwPDsrc3J+b/dUlvmmFQvtSIlMQIPaT5J6u3no63S3nfrbKqJjVaX6vMLG405qwPkmi1Fz3QPElbKht6cCCnzMEdDEoWctZVk4JiERwM8AjNW10KPC/abVkYT4fhgXSG2vH9saZIqayUNVA/lHr63FvNupKIwUNs1czsRjKAPqCfxUa+JbfhqYgs7ezZTxcHO96XHOE8eIsVO0v3Pct76a2bK3d/A7G/2PWHl0d+R5emScvbBPb/bCw3JpOolpax4dWJlCB3kq6QVJx0gALSCCCA/+cJpHyw3zE0ir8GTLVY/KQfT3RLVKeXpXJtyxRxSgiQKFVjjrJ2j+4qiLqEgceDHNUdfqaY/URycuFCi4LIJR64NKOlf16xTbcqRxPf3GGuFtWPuNtqfvoJtq7+W8Bfrx/jCUrsD3YZeYc9IqvO+lfhz3EbtfZrcBGkLf8v5fx4Gb49eU672gqaSA05Wgksl2q7vSRPY+tdefP6mdYU2yfYxngZuxKtc0= X-OriginatorOrg: axentia.se X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jul 2017 06:18:05.9914 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0202MB2557 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2017-07-06 07:55, Daniel Vetter wrote: > On Wed, Jul 5, 2017 at 7:50 PM, Peter Rosin wrote: >>>> +retry: >>>> + ret = drm_modeset_lock_all_ctx(dev, &ctx); >>> >>> With atomic you don't need to grab locks, this is done behind the scenes >>> (as long as you handle the retry/backoff correctly). See the kerneldoc for >>> the various drm_atomic_get_*_state functions. >> >> It doesn't work if I remove it. What is the disconnect? > > Good question, Duh, for symmetry I also removed the dropping of the locks. So the next call of course had no chance of getting access. How silly of me... > didn't spot this at first, but your backoff/retry logic > is proken. When typing drm_modeset_lock locking code please make sure > you've enabled both CONFIG_PROVE_LOCKING and > CONFIG_DEBUG_WW_MUTEX_SLOWPATH. Without these two it's really easy to > get this wrong. Please also read > https://dri.freedesktop.org/docs/drm/gpu/drm-kms.html#kms-locking > carefully plus all the kernel-doc of the various hooks. This stuff is > a really tricky locking scheme, it takes a while to understand it and > implement it correctly. Which is why all the locking magic is in > shared code and for normal drivers no need think about it. For the > fundamental algorithm, you can also check out the docs for w/w mutexes > at https://www.kernel.org/doc/Documentation/locking/ww-mutex-design.txt > > Might also help to read a bunch of the other locking paths again, with > my patches there's a few just in drm_fbdev_helper.c. I'll leave you > with these snippets here since I think this is fun to learn, but when > you're stuck I'm happy to help learn. I'll take a long look at this before I send a cleaned up v4. Thanks for the pointers... Cheers, peda