Received: by 10.223.176.5 with SMTP id f5csp4306799wra; Tue, 30 Jan 2018 05:26:46 -0800 (PST) X-Google-Smtp-Source: AH8x226ED5H51oxqFqoyq9wj1WlyXRFRmeOuf7jqG4O9lIAzOdOllW16TcQ1OmP+li3HzsKKu6LM X-Received: by 2002:a17:902:622:: with SMTP id 31-v6mr25076679plg.448.1517318806073; Tue, 30 Jan 2018 05:26:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517318806; cv=none; d=google.com; s=arc-20160816; b=xd2EYuwrHYnhYu+ypa26qi7xPjPMTb1+hAszYg8hi5dMEogOcsH7cgNrW54jpLb++D 2e+oLt/QaZvpf4fkJEd1JUVI6Rnyx2NKX3qz/5AEFn0qewt70ltE9vZcOxid+ECgET/a zdYzSimInXQwyqA1EDCQVTPehAB7WyWwFFuL4iL7+vMQdAjUtkKZiv929bFnXOPA5VMB GyOO85JN9Fba8kI+GJBlSmhaXxu5js1rxzhqmH+tKJCvw5PMd4KTLTdF0LtIMpggcqhi GE53nENcjz79HZ/NXvW952yHYx5JTL2k48nzex5IAAmPpc65f1yL/UHMp3YMpMp6S5BO OIPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=qDo1/R54YNPpiYi9HlBbkJ7icAyxAFSsRaHWGNJyjcU=; b=hCBWTLlIo5VP7mmwOQRD8Q7UfYuBBDjVO9Penmg38QtBNaCpFMKZCDKm9hMum+/yHE DX2b5Xkl7YiJM/gwFgQkSEAXTk4QhyUh9y9BkhJmqvEtYlfeq5W6UD3PYB8emMM9mxpe vgVW0gMO6cVj0mPfbm0xmCIalE/K3JdHr3ACmtIeeeh7GktxQKIFEUsedB4agCO9wq9L 2neXWjt/ZQsuLkiOA8IGfaZGbrAblQwO6X0ZzHlICn3oQLNDTkAanhISilUWgPtFktmk E6zPNi9QPc5IK18pf24bIcaucNv21MjgHU6vgCLtSj9I1QQ30H9Emd44T253MWzWqEZ2 W2Fg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=ZFm7mBdP; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g17si1713868pfa.245.2018.01.30.05.26.27; Tue, 30 Jan 2018 05:26:46 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=ZFm7mBdP; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752557AbeA3NZs (ORCPT + 99 others); Tue, 30 Jan 2018 08:25:48 -0500 Received: from mail-oi0-f66.google.com ([209.85.218.66]:39625 "EHLO mail-oi0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751727AbeA3NZq (ORCPT ); Tue, 30 Jan 2018 08:25:46 -0500 Received: by mail-oi0-f66.google.com with SMTP id j188so6368540oib.6; Tue, 30 Jan 2018 05:25:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=qDo1/R54YNPpiYi9HlBbkJ7icAyxAFSsRaHWGNJyjcU=; b=ZFm7mBdPU3JA+RIsb/g5YljF6DJXaAVFNmkqgYYykoMeju8BKbKMqBzIcyvAtWEZOP vZqsDU0KVjRnz/2chi4pre9NExYdBWBla7+p3MdEna6t2Tp1MKvrix5bKjo698YSotJ8 nl41RQThPyTGT6JQ3/FIA6CeehKvR10teMromRHtR3VYWDIYQ7WKFrFb2yaDmwXg1EzA RKwd8FYLgx4bP65Ge0su7pTFs4ZHUXTSINlWYzUJ/C+19XvsGd9HRjw358O8FNgC8Hcl Ky+6Pngx6ZjXyOFu736tdMRCdlGKPnv+yKCb6OhXOlBbn9s8dHif0c5O6bWe3Oe5mdKr pO5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=qDo1/R54YNPpiYi9HlBbkJ7icAyxAFSsRaHWGNJyjcU=; b=RX2np582Y6Tr2TgVt6i3xuYhh2k2LYosGZOExjmY8mci2XRQs6KbKvMLiEUqmScnXj fyTEGLf2P2jNtC3CDhxzdIEhD9oE7Akb5oMrzn4VrBo6a3i8nn9PjoPKFUTjFeNNbxzm LuGWMwRWWcaJ3WNuCtBNN1zShKBBiG52HBgKvSvCIqAjUSoMIpTCTBCoYw3+PgjeQKQ5 hjYimJgjPda7DeIzNNYBp8mSKub10MRA2rXHZaTsS0u/Og4zDw5FQwScIvi4DmtMT43H rWf1yFW0EGAKAEK/9uuiCGZ/Mv2VBw2Ej2UPbZ+yV+NDK9F0/YLB3bDIWWPXYE4yla8C EdzA== X-Gm-Message-State: AKwxyteynKNjXtn3Y3ziXYiaoRZjJ757gmYqhC9ozbZgBtLUpCmpjksI +CqC6LAKwC1Jit6qYsh2pHaggZk/aSnjZNCOwhM= X-Received: by 10.202.83.194 with SMTP id h185mr7903413oib.228.1517318745663; Tue, 30 Jan 2018 05:25:45 -0800 (PST) MIME-Version: 1.0 Received: by 10.157.68.33 with HTTP; Tue, 30 Jan 2018 05:25:45 -0800 (PST) In-Reply-To: References: From: Arnd Bergmann Date: Tue, 30 Jan 2018 14:25:45 +0100 X-Google-Sender-Auth: e-hE4AN6y6FZKBL2Hf3U4MD0ZUE Message-ID: Subject: =?UTF-8?Q?Re=3A_Compilation_error_report_for=3A_drivers=2Ffirmware=2Fq?= =?UTF-8?Q?com=5Fscm=2Ec=3A469=3A47=3A_error=3A_passing_argument_3_of_=E2=80=98dma=5Falloc=5F?= =?UTF-8?Q?coherent=E2=80=99_from_incompatible_pointer_type?= To: Benjamin GAIGNARD Cc: Arnaud POULIQUEN , "Andy Gross , David Brown" , "linux-arm-msm@vger.kernel.org" , "linux-soc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Benjamin Gaignard Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jan 30, 2018 at 11:11 AM, Benjamin GAIGNARD wrote: > > On 01/12/2018 05:11 PM, Arnaud Pouliquen wrote: >> Hello Andy,David, > + Arnd > > I have the same issue on drm-misc-next. > Does Arnaud's fix make sense or should we update/change the way of how > we compile the kernel ? We've hit a couple of bugs with qcom drivers confusing physical addresses and DMA addresses in the past, usually the drivers were buggy in some form, and tried to use dma_alloc_coherent() to get a buffer that gets passed into a firmware interface taking a physical address, which is of course completely wrong. >> diff --git a/drivers/firmware/qcom_scm.c b/drivers/firmware/qcom_scm.c >> index af4c752..8dfbe61 100644 >> --- a/drivers/firmware/qcom_scm.c >> +++ b/drivers/firmware/qcom_scm.c >> @@ -448,7 +448,7 @@ int qcom_scm_assign_mem(phys_addr_t mem_addr, size_t >> mem_sz, >> struct qcom_scm_mem_map_info *mem_to_map; >> phys_addr_t mem_to_map_phys; >> phys_addr_t dest_phys; >> - phys_addr_t ptr_phys; >> + dma_addr_t ptr_phys; >> size_t mem_to_map_sz; >> size_t dest_sz; >> size_t src_sz; This would be bad: you can basically never have a 'dma_addr_t ptr_phys': it can be exactly one of 'dma address', 'physical address' or a pointer, this claims that the struct member is all three of them. The proper fix here is to stop using dma_alloc_coherent. Arnd