Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752146AbdCAIni (ORCPT ); Wed, 1 Mar 2017 03:43:38 -0500 Received: from mail-wm0-f65.google.com ([74.125.82.65]:35665 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751099AbdCAIng (ORCPT ); Wed, 1 Mar 2017 03:43:36 -0500 Date: Wed, 1 Mar 2017 09:43:26 +0100 From: Daniel Vetter To: Lorenzo Stoakes Cc: Al Viro , Linux Kernel Mailing List , dri-devel@lists.freedesktop.org, linux-mm Subject: Re: [PATCH RESEND] drm/via: use get_user_pages_unlocked() Message-ID: <20170301084326.tdz32zvjg62znclq@phenom.ffwll.local> Mail-Followup-To: Lorenzo Stoakes , Al Viro , Linux Kernel Mailing List , dri-devel@lists.freedesktop.org, linux-mm References: <20170227215008.21457-1-lstoakes@gmail.com> <20170228090110.m4pxtjlbgaft7oet@phenom.ffwll.local> <20170228193539.GT29622@ZenIV.linux.org.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Operating-System: Linux phenom 4.8.0-1-amd64 User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1706 Lines: 38 On Tue, Feb 28, 2017 at 08:28:08PM +0000, Lorenzo Stoakes wrote: > On 28 February 2017 at 19:35, Al Viro wrote: > > On Tue, Feb 28, 2017 at 10:01:10AM +0100, Daniel Vetter wrote: > > > >> > + ret = get_user_pages_unlocked((unsigned long)xfer->mem_addr, > >> > + vsg->num_pages, vsg->pages, > >> > + (vsg->direction == DMA_FROM_DEVICE) ? FOLL_WRITE : 0); > > > > Umm... Why not > > ret = get_user_pages_fast((unsigned long)xfer->mem_addr, > > vsg->num_pages, > > vsg->direction == DMA_FROM_DEVICE, > > vsg->pages); > > > > IOW, do you really need a warranty that ->mmap_sem will be grabbed and > > released? > > Daniel will be better placed to answer in this specific case, but more > generally is there any reason why we can't just use > get_user_pages_fast() in all such cases? These patches were simply a > mechanical/cautious replacement for code that is more or less exactly > equivalent but if this would make sense perhaps it'd be worth using > gup_fast() where possible? I have no idea. drm/via is unmaintained, it's a dri1 racy driver with problems probably everywhere, and I'm not sure we even have someone left who cares (there's an out-of-tree kms conversion of via, but it's stuck since years). In short, it's the drm dungeons and the only reason I merge patches is to give people an easy target for test driving the patch submission process to dri-devel. And to avoid drm being a blocker for tree-wide refactorings. Otherwise 0 reasons to change anything here. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch