Received: by 10.213.65.68 with SMTP id h4csp673403imn; Fri, 6 Apr 2018 07:07:00 -0700 (PDT) X-Google-Smtp-Source: AIpwx49mAuOigzrZ7RE6tCHs5r0Aocuh6NqOlQtGZLB19hTJxTytW+VZwt0qWggHb5s9Bjo7BOHO X-Received: by 10.98.32.80 with SMTP id g77mr20590573pfg.216.1523023620863; Fri, 06 Apr 2018 07:07:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523023620; cv=none; d=google.com; s=arc-20160816; b=xJbxQlR8Fs0KSN5jIN3N76IROsdFsbkKvKlWUa5xaWVBsXg8rKEnR4EqaDE1w4GERl 44EOETE6N4u+OYisM04mE0aT79szssvcQa1BWUVFmfMDGCTc5YVlyDe/MlVTb/Ijywgj hOBFzdMt/T2Dw8qQjCIYk/gaa1GgXB7rkCKMdwNjmgMgt9RzGubxEI6WdY+4WfSkZemF YGrjdGjhSKu3/YO8OV1sLbhJK52pt89P00vE2PzDCe5GwlKpjpHtVk9/i5Olmx+yj2Pm lQC5sCQzvBImUBHj7tYs8EN1EdYololD6HmAjda2QnHkYS9B8tk3Z1brLPPrjPgxxja9 H5OQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=YHmnzCY3+6yoda0d74iXlBkTUE6ezSLkpUKXHbfDJtI=; b=GNCyIdG/jeh/+IBNojhRFPcXVWyLajyeQYmak5lkMfnWTHH+WpB7lkRQCyW4pIBTjF 4QG1JOVLdu0dUI+VhPEn5h+J1EoiTWSLThxYdAnFhsfMy/kCWEb0hWJj29lZ2ZzrDA9y f0qYYqNuhsCFge8aUQhpxqVIBT3aINi0dqrEvDKC3njwvpqUrDwYPLFPecwL24wRt++R sMi+/3Aagw+b2xdggbcWb/VVOpfi2iKT6YxMOOvXKxyMlCAM1lHP5zLT6krYGVEhyVZ0 Szjx9nmTIfXqvpLuO5yW86TMMwIwYYHt1/j6I6nhcwdQ+UuSECwowbkqbbOBtHy8xF8z fQNA== ARC-Authentication-Results: i=1; mx.google.com; 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 s85si8053300pfi.32.2018.04.06.07.06.46; Fri, 06 Apr 2018 07:07:00 -0700 (PDT) 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; 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 S932869AbeDFNlW (ORCPT + 99 others); Fri, 6 Apr 2018 09:41:22 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:36206 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752850AbeDFNlT (ORCPT ); Fri, 6 Apr 2018 09:41:19 -0400 Received: from localhost (LFbn-1-12247-202.w90-92.abo.wanadoo.fr [90.92.61.202]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id DBC96D96; Fri, 6 Apr 2018 13:41:18 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Stefan Roese , Takashi Iwai Subject: [PATCH 4.15 08/72] ALSA: pcm: Use dma_bytes as size parameter in dma_mmap_coherent() Date: Fri, 6 Apr 2018 15:23:43 +0200 Message-Id: <20180406084350.199553868@linuxfoundation.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180406084349.367583460@linuxfoundation.org> References: <20180406084349.367583460@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 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 4.15-stable review patch. If anyone has any objections, please let me know. ------------------ From: Stefan Roese commit 9066ae7ff5d89c0b5daa271e2d573540097a94fa upstream. When trying to use the driver (e.g. aplay *.wav), the 4MiB DMA buffer will get mmapp'ed in 16KiB chunks. But this fails with the 2nd 16KiB area, as the page offset is outside of the VMA range (size), which is currently used as size parameter in snd_pcm_lib_default_mmap(). By using the DMA buffer size (dma_bytes) instead, the complete DMA buffer can be mmapp'ed and the issue is fixed. This issue was detected on an ARM platform (TI AM57xx) using the RME HDSP MADI PCIe soundcard. Fixes: 657b1989dacf ("ALSA: pcm - Use dma_mmap_coherent() if available") Signed-off-by: Stefan Roese Cc: Signed-off-by: Takashi Iwai Signed-off-by: Greg Kroah-Hartman --- sound/core/pcm_native.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/sound/core/pcm_native.c +++ b/sound/core/pcm_native.c @@ -3422,7 +3422,7 @@ int snd_pcm_lib_default_mmap(struct snd_ area, substream->runtime->dma_area, substream->runtime->dma_addr, - area->vm_end - area->vm_start); + substream->runtime->dma_bytes); #endif /* CONFIG_X86 */ /* mmap with fault handler */ area->vm_ops = &snd_pcm_vm_ops_data_fault;