Received: by 10.223.176.5 with SMTP id f5csp4371411wra; Tue, 30 Jan 2018 06:24:23 -0800 (PST) X-Google-Smtp-Source: AH8x225mRcxtxfO8PAJV9/rRy52osr+R76oPVMpZ5RWlS7jHkkaIteYB88AqPKUs04mUWdKCX9cL X-Received: by 10.99.182.6 with SMTP id j6mr24298197pgf.221.1517322263266; Tue, 30 Jan 2018 06:24:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517322263; cv=none; d=google.com; s=arc-20160816; b=UIIpsvQkHRqsfCKG7qyeCd6cw7JzNxRTncgTC8FQ3HbnMYd2GpE/zjjrJrpoXO+kUc IQTeGJeuilSrs9MduKw4UXCn0GJWG8s+cg1QqmxfqXyB2NF9MSk8qJSDZeiFdtvS7PwX pwE/V21inC42YG8I29gA6MKLyjL4SDbLHBi4Yy4PkcJsgLN6w9b0y0g6vwzabXyxMVR/ Xf+UnhCxM65QBs8dvV/HoWRT9si5SJlNSOPxqKN5SqcjtDPcAUoA/Wi5FwIHYGau5h6B NX0wwrLVYaNhsLtKbKG30SeOoOHIiCrFFh2+b75706oCnaFTNytUNZJxBNuSKj+/XkdI khxg== 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=xwI15nkIzGUBCPffsRGL1tqPzHMZ7RNoxb7rGcbf+GM=; b=JgqlrolLrniiX2OAzFNdZZzfRiV9bKsGHQFpIKBQst6IzbYghJG3ZJ175o5btsczQk ooJACGe0yvrmmlzdo1NtwLVQ63Njsqq9EMbrCuGHBh537nHhyERWJmNuaI+HoC3ozKH1 Xgv5EE1+K0mXDEiI++Z1nuwGG+frLyeETQFu0CrrNW4yl7tgPK3iQFJyu6F8AnmRG798 R4JNvnn/rQWGhL2/wKbOYgif6Itq0UT1otOYaTqdOAL8nsfGMdbfSqCd5SePC/A00sQh Y63y9dfiDUlw4RTGtj222Z7lnxz1EdsQDYNbcymIIgZGr4qnwUbUPeg5pfzQXLt3GFZF B0xw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Ja/tUX/J; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z33-v6si3874051plb.663.2018.01.30.06.24.08; Tue, 30 Jan 2018 06:24:23 -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=pass header.i=@linaro.org header.s=google header.b=Ja/tUX/J; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752814AbeA3OA4 (ORCPT + 99 others); Tue, 30 Jan 2018 09:00:56 -0500 Received: from mail-qk0-f180.google.com ([209.85.220.180]:36884 "EHLO mail-qk0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751786AbeA3OAy (ORCPT ); Tue, 30 Jan 2018 09:00:54 -0500 Received: by mail-qk0-f180.google.com with SMTP id y80so10177170qkb.4 for ; Tue, 30 Jan 2018 06:00:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=xwI15nkIzGUBCPffsRGL1tqPzHMZ7RNoxb7rGcbf+GM=; b=Ja/tUX/JS9tYM0sfzaHHdLs7NHQgFyig+W+075kjcq94r/U9K8NnAZ3BGGiINdHRyQ YB2jrySgRjYc6pe/GhRGjdfEhLE/2LifCqq6a0SiQFJtaL8euA6qE7j2WP4C75pQIkgJ 7SkVvaFifXx+XbOd/q6MJr8GkSwitAq/VFJxk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=xwI15nkIzGUBCPffsRGL1tqPzHMZ7RNoxb7rGcbf+GM=; b=ikOMjSpqJ96o11iHj6w21b0sBC6akuClkR2PVXLmwqJODAmOsotcEMFXPLI6n6VBbe MLUGia/6M1LjqwnSenbvcVIQ/Xr2x6LXlCfxYHpbt8/7TxuFIMMwCuJDHNY1PC6CJirK cleF9grHmGW62KY1eZMM1GoFqikIFj0Nx0ytMF5y3kBtCejXlYwVYNnMbLGbNxF54x4T KWkOETP2LVobJj5CmVPtQj853mYaqjOdA5calt/WjeTkNR0ncCEwDR7ciBIMyPBaKNo7 8WNa3d0CK+OYCUABC4JZVt4dsbJBlahb+jVyN7QkLPvaYWJXeID+Sb+yGGBlbRK7gL0g U7Eg== X-Gm-Message-State: AKwxytdJJp6K18Q61aCCd5aWv/99FXnGW5pOiZsdF324bj69g3y8hxz4 bfsc5ScEHx4PW/f7JreaFRLzldqGYGrmAGwhDLnr2w== X-Received: by 10.55.161.21 with SMTP id k21mr42502747qke.260.1517320851930; Tue, 30 Jan 2018 06:00:51 -0800 (PST) MIME-Version: 1.0 Received: by 10.140.82.178 with HTTP; Tue, 30 Jan 2018 06:00:51 -0800 (PST) In-Reply-To: References: From: Benjamin Gaignard Date: Tue, 30 Jan 2018 15:00:51 +0100 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: Arnd Bergmann Cc: Benjamin GAIGNARD , Arnaud POULIQUEN , "Andy Gross , David Brown" , "linux-arm-msm@vger.kernel.org" , "linux-soc@vger.kernel.org" , "linux-kernel@vger.kernel.org" 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 2018-01-30 14:25 GMT+01:00 Arnd Bergmann : > 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. Okay but that doesn't explain why we are the only ones to get an issue while the parameter doesn't match function prototype > > Arnd