Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753033AbdLERCB (ORCPT ); Tue, 5 Dec 2017 12:02:01 -0500 Received: from mail-by2nam01on0069.outbound.protection.outlook.com ([104.47.34.69]:16445 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752998AbdLERBz (ORCPT ); Tue, 5 Dec 2017 12:01:55 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Harry.Wentland@amd.com; Subject: Re: [PATCH] drm: amd: dc: don't use FP math when Kcov is enabled To: Arnd Bergmann Cc: Alex Deucher , =?UTF-8?Q?Christian_K=c3=b6nig?= , David Airlie , Jordan Lazare , Roman Li , Shirish S , amd-gfx@lists.freedesktop.org, dri-devel , Linux Kernel Mailing List References: <20171204131031.1418828-1-arnd@arndb.de> <7a8f0af3-89cf-81d2-cedc-3d80905b9458@amd.com> From: Harry Wentland Message-ID: Date: Tue, 5 Dec 2017 12:01:47 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 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: [165.204.55.251] X-ClientProxiedBy: MWHPR19CA0016.namprd19.prod.outlook.com (10.173.246.154) To DM5PR1201MB2472.namprd12.prod.outlook.com (10.172.86.151) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a8d66ecf-e00e-4743-6509-08d53c01e267 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(5600026)(4604075)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(48565401081)(2017052603286);SRVR:DM5PR1201MB2472; X-Microsoft-Exchange-Diagnostics: 1;DM5PR1201MB2472;3:VulTV1C/NSoegSjnlwJEPE8k56TZgncgKFUwP0OoQbJcH2uph6CNztmT/G/nL7RKnbBakKG7nPtGKfDTamhsTqD5TSIXg1yppqCwNkFFAPDzn4jktiTAjDQJinPbbhtvRpgTeUDgKEFgiegeKNIYWBDRSOv+8w8ZQ46/Et2G1oDqJ0x3V0wNyQzRRpPZnIIBPgGTJFvVtTCXDGZlx6u5B0W5qt3kFw95wPcSO5TJdZWvJ1JAbzMEsjIxtgU7j33I;25:aoc6d7HbwLuXw2drD9RD1mjz2yKHyp/Afj5/Kea3rTCzHK8poATwiok3ZIQmbFbDS6EhypfdzFJtFnBoTvfSP5MPd1FduAXuC9gilG2gQluFZtp9H/4RUKPbhXBc4Be/Nskq62JQyngFttibPM+ORpPIpw3fSBo+XEL36vvu8FRFDNUIja6Etz+TWyNIPJ5aa+ZOdIL7+XAtMYUIVxM65dnYf0j3sNQJijSNVHZTxi9LGAUuycRNQ/4FciuVA8bzI7jOWi5i2d/dzymop1r2Fp0UUzVQbEq/MdnMxPqchJrBvEWp5qLpjwDXaV/QPElKMZBgFefv/S41c+I/6Akusw==;31:GGiKv62EGXPl4WZeoLlwUc08XsGQySNCuo/O//pF4wMcbjDHXpibtpiwb8q7j4v3iayjjN0LIy90Fly9xqnFg4rwiK1ch5GSfp52WkD+lqnUgo+Jd1zH6gwp84JqMDb2/sksv8WMS+4hP/4fXEtwTLaguWc1Lh+6WFsYtJU+Oo9sheSNYbIY9dYBvuxR/Q17bSzM52NWl37tVsr5z9dPi+L0jUQneq/YdZh5O0CQ/Ro= X-MS-TrafficTypeDiagnostic: DM5PR1201MB2472: X-Microsoft-Exchange-Diagnostics: 1;DM5PR1201MB2472;20:EtKU5CAU5pnjeQvoRazxVkZ4uJsjCSHNcAw4Iu8MCC8OfAOxhZ17ugCexZv6Gv+WQxSTT3WwtcT0od9yC+dVkE6fizTM+IcT3ldLhFZa01b3JaT5zFTkSmRx9wrX8J2lLYZ7kt6rSMZ/HaRz2WSoc0+EyMBC1XacxThvhq31ec3ffUFKag+h8n//3F25Z1oKou4Jn4bRcD15Vxt3tC58BVOzQ1ebOyGPcCcnA5Ox0+yoanLyWdblX+zAxE0tJO62JMpScT5iRQIwzY0hY1kYHxKMJ0lOmU6TciDYzq+bZM0lGqRD1v3X5ztlpNt3IBwhkUUaLF1aspANrXhOHfKd0cmtyV8thDxBiH43jCSUDLJ6bpQzc6NcY2rxFCFGsyBY3gltK+PIyOD78g9qyJh7pxRg+ut62cgcFS4JyLIjBKp6EOYUVdKh8DBj/V60SLs36Al/ZofxeIwbJBdanhbRaEzUEtzk3be87QGGQMzOa/ugD/WN5GKAKBd4gj4u9GoP;4:ifmP/f3FBXd6MamocpdtH4+K2mPOi3nfvSMSIba1OYJB9mfIUwuqYssVVizElkthPAe4/7WMw1Z6X8yqAMKTWyTu0Izr1P522HRVQs8HXem1TG9pkpT+uNOUV128R+6A930w01YUG6ue7Jecx5RH3GuJUBvI5DcP+2n5mMuB0HXc0Snd5up/uruGUpU3czvYXzF30a9IbkGgDTgdYfLzL9sK6e2eLXskVRPI5edQ7KnVwOEztEubdIvDkLb/1y/GxmtwHICfJ4whvRGGW7YBCJ6+t4J/Qhmy9g9wRxYxwc4uyGwnme0DEQ0CkIx+3u3P X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(2401047)(8121501046)(5005006)(10201501046)(3231022)(93006095)(93001095)(3002001)(6055026)(6041248)(20161123562025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123560025)(20161123564025)(6072148)(201708071742011);SRVR:DM5PR1201MB2472;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:DM5PR1201MB2472; X-Forefront-PRVS: 0512CC5201 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6049001)(376002)(366004)(39860400002)(346002)(24454002)(377424004)(189003)(199004)(68736007)(16576012)(6916009)(54906003)(2950100002)(2906002)(33646002)(58126008)(97736004)(106356001)(6666003)(230700001)(64126003)(8936002)(105586002)(101416001)(50466002)(7736002)(47776003)(316002)(65826007)(65956001)(65806001)(66066001)(5660300001)(3846002)(6116002)(6486002)(229853002)(36756003)(77096006)(6246003)(52116002)(53936002)(31686004)(76176011)(4326008)(90366009)(53546010)(8676002)(81156014)(81166006)(23676004)(16526018)(52146003)(2486003)(31696002)(83506002)(478600001)(86362001)(305945005)(72206003)(25786009);DIR:OUT;SFP:1101;SCL:1;SRVR:DM5PR1201MB2472;H:[10.60.233.33];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtETTVQUjEyMDFNQjI0NzI7MjM6R2QrUTF1RWU2Q3RUQjM5ZnMrNlBicjFk?= =?utf-8?B?YVN5S2tHWnhLaTU4Q1pBd2E5Q3RrM0xOT1VrZHhoa1RhdzUzbkhYSTVCUmpo?= =?utf-8?B?MnNLcHExbmF4cjZ0b2VVQ0xjdjRFTkxmSko5N2pZenhoM055YklsT1JjcGRn?= =?utf-8?B?TkM0UU9vOVVUdjJMRTV4UmJzVnNqQU0vQWRSUXIwMnNXZHNLc1JTdG9TNWk0?= =?utf-8?B?NnlLajZrdjhpcnJaaCtyNlpRZmpUNDBpbXZCYWhJcjJrT01oU3RtRkI2ZEJl?= =?utf-8?B?VjF4Q2h2SXpZRUhYd2FqZERpbUQ3SmpIdkxEL1Z0R1pBSGdrdEw3QnB0TGJk?= =?utf-8?B?MDUrVzlvK0ZkMTkzcm9YYTYyenJmRHVNSFRYQW9EOVpjWExaV0RyanZFb2Nq?= =?utf-8?B?S1JPd0NnUlY2WmZXbWVjWE0rT1JZa0RWWkpacjZKSWxySDU2NW5OcE9JLzhm?= =?utf-8?B?NlV5a0Z0NWNXa1E2ckJ0NEhBbWlCQXVSeG8wL2pEeURoTXBnSGJiQW9uZ3hv?= =?utf-8?B?a2p0cGh3OWdTUms0OGptRy9wVzJ4TGxJRWhhTjQwWlZKRlhkUWloclhsTHBZ?= =?utf-8?B?ckQ1MGlsRXVpbENSZTFoYm9FbWNOSWY0ZFoxd2hBdWVRZExtRGxoZHcvb3hq?= =?utf-8?B?UlhzMi9DbzhhdkFzeWlnaVJDUGdseDN1SUNiNmlLQ0NRSEJhUERZeWx5ZXY3?= =?utf-8?B?aWVlVmt6UmhZMlhBUkRJaTl4TnJtUXc2NVVzSmJCNGFyWjZUVHpzL0hyVUZx?= =?utf-8?B?eVQycFdleENVK2tQY0wzMmFidDhydVNuUXpmcDFoMjJmQmR2N3ZUTS9mVnRw?= =?utf-8?B?d1Fqd1V5UHJFTmlDMm84QVpzQlhsLzdWNjZVY2p3eVZzeXluVHAveS9JbkFG?= =?utf-8?B?ZFdzY1lISWx3Z1pRcExPZnhxaHNWdHBhSTczaVl1ZlJOWHdmcnV6K25uYS8x?= =?utf-8?B?R3liRGdUS0RLVnlpbktMTmwzQWp1bjZ4YkZHMHV0M3dnQnQ3dFl2dlc0Kytq?= =?utf-8?B?Q2hMNGtub3F3Yi9lL3V6U2R2aHhQaHJJcTVkdktUTjBOL0tvV0xod3Fkc3ow?= =?utf-8?B?WXFuSzRMQkY5ejJyTG5VcThTS3JzRzZyRk1pK1N3Q1ZKUU9JV2ZuN1ZxYm9L?= =?utf-8?B?M2dEY0xzd3VFR0psTXo2Z2J0T2IrQmM4eFNtYndWeDJodVltZXY4YkU4V3Nv?= =?utf-8?B?c2gzbmVFWjBvbDRvNUdZTWwzOUZJTXk2M2MySkNtTmZJSVBvKy9xaTJCdkx3?= =?utf-8?B?UjAwcTZjbXdpajR3MVRqTmZCYkltdk5ERm1yMURqaHdObFFNUDBBaHZjeSsw?= =?utf-8?B?NkdodEIyNTJDUW1tSWpNNnBSVEFYdW1oK015MVZ6T2x6Q0JLUTYwTW9pNDlN?= =?utf-8?B?NytkWmRHU1h1eWNCT09IemFPMGFMTUppalJHaWliZFRjWFlkWUdTTnFwbUxV?= =?utf-8?B?SmUwK3ExVnYyQlRmaEdDRGlGRE1ibTMwemJKZ0kveXc3TVlJMnBNRDhyS3c2?= =?utf-8?B?czZJOEhjY2tYNzUwdUdXS25DdzhNWE9OQzZGdmM4dE5UZHZwZW1IRUJPSHkr?= =?utf-8?B?anN4UHFFamEvcmpTclRENERYamltNGVIRnYzcTNkYVFjSG84ekRtTEtZU2FF?= =?utf-8?B?bmsybzVoY2FXdlloRlZiVFFPeHZweG13cWtnTktid1hyNkxFQ20zN25aR0F1?= =?utf-8?B?ejdKa2JSUXB0Y0RqMFk0d1Y5aS92MU5WV2JVSHluZ1FOWWx1SlhIVWo3ODlw?= =?utf-8?B?YlRidTBROGZiZHkramZ6WXoxNmpJWDRtR2VoNk1nalI1SUIwU1A5MVpMdUoy?= =?utf-8?B?dkkyOHRVUXZLV1NzOWE2SlZ3b1g1ajJUa2gyV28yVytNZ1loL1M4Y1JlT0NP?= =?utf-8?B?TmtzdGdtNE5JM3RsaWNrMVl3eVA0c2lZeU5GWndHdnVrOEZTNHJqREdza0hL?= =?utf-8?B?L3NzRUJJa2cxVmc9PQ==?= X-Microsoft-Exchange-Diagnostics: 1;DM5PR1201MB2472;6:NAbHiVE/6m3QEQrMvwtmTd8Ixxh0cyRoZ33wyXTjQ7BJxRdCmgYLch7UCb426NEfuo+2xZ66XEEU446MKylk/a0Dq08zYgh9AybXv763Mjs6qwRuTaEvIdSQNFQ3RfTULULt9RKJGUqm+mRhn1XJWYSXAiskx6JHPIRR/RAgIssPnl49Fo6tQQhVXtwqszRiRl62j0GPYaUxy6W4uGSEe4Q2jEWDB1shbf5ZyUFnyw908O72vZNABnQumEJQX+eP5lovvq99d6VULJHvOBBkaxfULY32vv98D+YYmHQZk1NmOnqfYlRxEX4cekfuCrSM8YY9c4I3KDpz1R/+7i8auJZ1sWWMqSBFhVAPvAhdq18=;5:7mx2nJOOHuXp0c1TPO+kNJvvE0Pwu9aTF4sqXah3FwuZ0gEQ+UdtH9+hVrC6SQT3+tRoZdlZOycnDSJLJaqoPdTLBzTaLfXfoFbqp7Dyjm9uR6b0KwHKo9rNxfqJn/4J7JSvc8lA+2odLCszPaTMqicI5YlMKfrhTA2xUichZ00=;24:G5OXhZKH0iQwawNmBOYVRGEAkB0jCOQg6/mOpGUGtyBzbfOOexVJRPhW8LFy+fkMMBz+RwZ2Qa07THp9pqvVLfxhdb/wQcOmWOj6KNuCeVc=;7:XMoZcdSc6M3uLCymoWsxl23SSKR/0pRY7BOkPqe2OTjGEOQl6k6tJr4zY/lm7LPzarbVlYNvKg5SsFa9gjjXKeAqsjezso/87oGZBAkjmd7TYZEMnNgf9tuNIqctqv/pUH6Rw3RFvT8/DJv5fuuydcD/KajSxfVYevlymjZlldReG7EsckESLL+rL4TPDU6f7akILWMtUrwIX67+JQJC2wxkyeqDmdTz5n7IC3I54okiHdvIeZRMpfjDtMAxLOPG SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DM5PR1201MB2472;20:K0uY3tqD4GSq7HBhk5Ii2ceeZAR4TYbGBl4OtyRfIVU32VdsR6TgPYbXU0xKpO3yZDVjacYY4fUbhhl1Ep3832Eo3bJCF1UqVIJlYOKoz8C/lFk1lkySkxP0WdUsPTTvP3Gh5qsnw0B0N2+7lj/5dNE4FUVAEApscD6za9KT/E7GYTcw51Mur0pHJT80a4hhPjGN/FBU08CwKWTkrhCrJMH1Czfw4wDvGFNQeqRozpD91I9rwGH74ucaA6FmKbrh X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Dec 2017 17:01:51.3228 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a8d66ecf-e00e-4743-6509-08d53c01e267 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR1201MB2472 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 8230 Lines: 113 On 2017-12-05 07:05 AM, Arnd Bergmann wrote: > On Mon, Dec 4, 2017 at 9:34 PM, Harry Wentland wrote: >> On 2017-12-04 08:08 AM, Arnd Bergmann wrote: >>> Building the DCN 1.0 Raven display driver with CONFIG_KCOV_INSTRUMENT_ALL=y >>> and CONFIG_KCOV_ENABLE_COMPARISONS=y results in warnings about many functions >>> that do a comparison of floating-point variables: >>> >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.o: In function `dcn_bw_calc_rq_dlg_ttu': >>> dcn_calcs.c:(.text+0x263): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.o: In function `hack_force_pipe_split': >>> dcn_calcs.c:(.text+0x155b): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.o: In function `dcn_find_dcfclk_suits_all': >>> dcn_calcs.c:(.text+0x190e): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.o: In function `dcn_validate_bandwidth': >>> dcn_calcs.c:(.text+0xe121): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_math.o: In function `dcn_bw_mod': >>> dcn_calc_math.c:(.text+0x22): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_math.o: In function `dcn_bw_min2': >>> dcn_calc_math.c:(.text+0xb2): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_math.o: In function `dcn_bw_ceil2': >>> dcn_calc_math.c:(.text+0x2a0): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_math.o: In function `dcn_bw_max3': >>> dcn_calc_math.c:(.text+0x325): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_math.o: In function `dcn_bw_max5': >>> dcn_calc_math.c:(.text+0x3c3): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_math.o: In function `dcn_bw_log': >>> dcn_calc_math.c:(.text+0x54e): undefined reference to `__sanitizer_cov_trace_cmpd' >>> dcn_calc_math.c:(.text+0x57c): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `scaler_settings_calculation': >>> dcn_calc_auto.c:(.text+0x5c5): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `mode_support_and_system_configuration': >>> dcn_calc_auto.c:(.text+0x137c): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `mode_support_and_system_configuration': >>> dcn_calc_auto.c:(.text+0x9233): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `mode_support_and_system_configuration': >>> dcn_calc_auto.c:(.text+0xb70f): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `mode_support_and_system_configuration': >>> dcn_calc_auto.c:(.text+0x121fd): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `display_pipe_configuration': >>> dcn_calc_auto.c:(.text+0x15a2f): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `dispclkdppclkdcfclk_deep_sleep_prefetch_parameters_watermarks_and_performance_calculation': >>> dcn_calc_auto.c:(.text+0x17c2d): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `dispclkdppclkdcfclk_deep_sleep_prefetch_parameters_watermarks_and_performance_calculation': >>> dcn_calc_auto.c:(.text+0x19362): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `dispclkdppclkdcfclk_deep_sleep_prefetch_parameters_watermarks_and_performance_calculation': >>> dcn_calc_auto.c:(.text+0x25575): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/calcs/dcn_calc_auto.o: In function `dispclkdppclkdcfclk_deep_sleep_prefetch_parameters_watermarks_and_performance_calculation': >>> dcn_calc_auto.c:(.text+0x27f33): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.o: In function `get_refcyc_per_delivery': >>> display_rq_dlg_calc.c:(.text+0xb5): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.o: In function `calculate_ttu_cursor.isra.1': >>> display_rq_dlg_calc.c:(.text+0x9f6): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_calc.o: In function `dml_rq_dlg_get_dlg_params': >>> display_rq_dlg_calc.c:(.text+0x82cc): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.o: In function `get_refcyc_per_delivery.isra.0': >>> dml1_display_rq_dlg_calc.c:(.text+0x6c4): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.o: In function `get_vratio_pre.isra.2': >>> dml1_display_rq_dlg_calc.c:(.text+0x957): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.o: In function `get_swath_need.isra.3': >>> dml1_display_rq_dlg_calc.c:(.text+0xc8e): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.o: In function `dml1_extract_rq_regs': >>> dml1_display_rq_dlg_calc.c:(.text+0x30a8): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.o: In function `dml1_rq_dlg_get_dlg_params': >>> dml1_display_rq_dlg_calc.c:(.text+0x41ee): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/dml/dml1_display_rq_dlg_calc.o: In function `dml1_rq_dlg_get_dlg_params': >>> dml1_display_rq_dlg_calc.c:(.text+0x8f95): undefined reference to `__sanitizer_cov_trace_cmpf' >>> drivers/gpu/drm/amd/display/dc/dml/dml_common_defs.o: In function `dml_round': >>> dml_common_defs.c:(.text+0x77): undefined reference to `__sanitizer_cov_trace_cmpd' >>> drivers/gpu/drm/amd/display/dc/dml/display_mode_vba.o: In function `adjust_ReturnBW': >>> display_mode_vba.c:(.text+0x4490): undefined reference to `__sanitizer_cov_trace_cmpd' >>> >> >> Is this with clang? I don't seem to get these with gcc. > > This was with gcc-8. I just tried other versions and found that gcc-7 > and earlier > (i.e. all released versions) don't support CONFIG_KCOV_ENABLE_COMPARISONS > and won't be affected by this. > > I've also tried building it with clang-5, but that rejects the > -mpreferred-stack-boundary=4 > argument and (once I fixed that) did not have the issue either. > Presumably, clang-6 > will do the same thing as gcc-8, but I haven't built a clang-6 snapshot yet. > >>> diff --git a/drivers/gpu/drm/amd/display/Kconfig b/drivers/gpu/drm/amd/display/Kconfig >>> index ec3285f65517..5cd5906c9bee 100644 >>> --- a/drivers/gpu/drm/amd/display/Kconfig >>> +++ b/drivers/gpu/drm/amd/display/Kconfig >>> @@ -30,6 +30,8 @@ config DRM_AMD_DC_FBC >>> config DRM_AMD_DC_DCN1_0 >>> bool "DCN 1.0 Raven family" >>> depends on DRM_AMD_DC && X86 >>> + # x86 floating point math here breaks with KCOV: >>> + depends on !(KCOV_INSTRUMENT_ALL && KCOV_ENABLE_COMPARISONS) || BROKEN >> >> I don't think it makes sense to make this depend on BROKEN as it works and is quite >> useful to people with Raven systems. > > Well, it's clearly broken when using with CONFIG_KCOV_ENABLE_COMPARISONS. > Fortunately that option doesn't do anything unless used with gcc-8, which won't > be released until next spring, so that leaves some time to change the code into > fixed-point arithmetic or find a different workaround. > Thanks, Arnd. This is what I was missing. I'll take another look. It would still work without KCOV, although I agree that's not ideal by any means. Harry > Arnd >