From owner-svn-src-all@freebsd.org Mon Dec 5 19:11:01 2016 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CC805C67BC5; Mon, 5 Dec 2016 19:11:01 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from mail.baldwin.cx (bigwig.baldwin.cx [96.47.65.170]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9D0A615AC; Mon, 5 Dec 2016 19:11:01 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from ralph.baldwin.cx (c-73-231-226-104.hsd1.ca.comcast.net [73.231.226.104]) by mail.baldwin.cx (Postfix) with ESMTPSA id 8B01510A998; Mon, 5 Dec 2016 14:11:00 -0500 (EST) From: John Baldwin To: Ian Lepore Cc: Michal Meloun , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r309531 - head/sys/arm/include Date: Mon, 05 Dec 2016 08:38:43 -0800 Message-ID: <1919253.AMxT3OP8Q2@ralph.baldwin.cx> User-Agent: KMail/4.14.10 (FreeBSD/11.0-PRERELEASE; KDE/4.14.10; amd64; ; ) In-Reply-To: <1480892114.1889.243.camel@freebsd.org> References: <201612041527.uB4FRduc064051@repo.freebsd.org> <1605461.LLfnXX4YB2@ralph.baldwin.cx> <1480892114.1889.243.camel@freebsd.org> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (mail.baldwin.cx); Mon, 05 Dec 2016 14:11:00 -0500 (EST) X-Virus-Scanned: clamav-milter 0.99.2 at mail.baldwin.cx X-Virus-Status: Clean X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Dec 2016 19:11:01 -0000 On Sunday, December 04, 2016 03:55:14 PM Ian Lepore wrote: > On Sun, 2016-12-04 at 13:43 -0800, John Baldwin wrote: > > On Sunday, December 04, 2016 03:27:39 PM Michal Meloun wrote: > > > > > > Author: mmel > > > Date: Sun Dec 4 15:27:39 2016 > > > New Revision: 309531 > > > URL: https://svnweb.freebsd.org/changeset/base/309531 > > > > > > Log: > > > Implement fake pmap_mapdev_attr() for ARMv6. > > > This function is referenced, but never called from DRM2 code. > > > Also, > > > real behavior of pmap_mapdev_attr() in ARM world is unclear as we > > > don't > > > have any additional attribute for a device memory type. > > You have VM_MEMATTR constants on ARM though. Some devices might want > > a > > WB mapping (e.g. for a prefetchable memory BAR) rather than UC. > > > > On ARM, 'DEVICE' memory is its own type/attribute and it can't usefully > be changed (if you were to change it, it would no longer be device > memory, it would be some other type). If this function is being used > to map main memory just because that memory happens to be used in some > device driver, then that's a usage model that just doesn't map usefully > to arm memory semantics. Ah, no. It is used for things like BARs, etc. It is fine if devices are always mapped uncacheable. The requests for write-combining are performance hints, but devices should still function correctly. For example, on i386 without PAT we will map WC requests to UC. -- John Baldwin