Date: Tue, 1 Apr 2014 14:38:14 +0300 From: Konstantin Belousov <kostikbel@gmail.com> To: Ryan Stone <rysto32@gmail.com> Cc: "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org> Subject: Re: [PATCH] Support PCIe Alternative RID Interpretation (ARI) Message-ID: <20140401113814.GL21331@kib.kiev.ua> In-Reply-To: <CAFMmRNyZpMXf9gOOufsojZV3coSoLSmyMKTE_i5Bern038EKsQ@mail.gmail.com> References: <CAFgRE9F632zLseG7MobxgV5CdvD0KyMn28CBSwYqVtZKuLBwRw@mail.gmail.com> <CAFMmRNwCGVhyn5cU29YpsVq44Q5i51C38GVsz33xGeqNyemx0Q@mail.gmail.com> <20140319140236.GM21331@kib.kiev.ua> <CAFMmRNxM1E2aNtZV588V3BGkz1aOaGgAXGbgktYrmzT9M3EyVw@mail.gmail.com> <20140325211355.GG21331@kib.kiev.ua> <CAFMmRNxQRJ2g9Ohu%2BXgj=tQ=tUrTdMQx1KSdd1k%2BjGMOtCZLEA@mail.gmail.com> <20140328133529.GV21331@kib.kiev.ua> <CAFMmRNyLMvTpejhCUov1rnGD4A3Amsz%2BWLbxdhpjHybW69WrKg@mail.gmail.com> <20140330142918.GF21331@kib.kiev.ua> <CAFMmRNyZpMXf9gOOufsojZV3coSoLSmyMKTE_i5Bern038EKsQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--ensexbfp9Ul6anXl Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Mar 30, 2014 at 03:43:23PM -0400, Ryan Stone wrote: > On Sun, Mar 30, 2014 at 10:29 AM, Konstantin Belousov > <kostikbel@gmail.com> wrote: > >> http://people.freebsd.org/~rstone/patches/ari/0002-Re-implement-the-DM= AR-I-O-MMU-code-in-terms-of-PCI-R.patch > > > > I like this patch. > > > > One, trivial note, you do not need () there: > > + ctxp +=3D (ctx->rid & 0xff); > > >=20 > Done. >=20 > Unfortunately I had to re-write it a bit to account for the changes in > r263306. Mostly it was trivial, but there's one thing that I wasn't > sure how best to handle. busdma_dmar.c currently calls > dmar_bus_dma_is_dev_disabled with the bus/slot/function provided by > dmar_get_requestor. That no longer works now that I've made the code > be based on RIDs. What the patch currently does is use the > bus/slot/function from the requester device. I think that's a little > cleaner anyway because in one case the current code fakes up a slot > and function. Using those values in the UI for forcing DMAR off for a > device feels wrong to me (and difficult to document). However, my > behaviour of forcing users to manually walk up the PCI tree to find > the PCIe-PCI bridge is not really all that much better. If you have > ideas here please let me know. I think that the current behaviour is just a bug, and your change is for better. When you need to disable specific device from using non-identity mapping, it means that you are already very much down the hole. The VT-d busdma is not enabled by default, only people who experimenting with it are potentially affected, so I see no problem. >=20 > The current version of the patch is in the same location. Fine with me. --ensexbfp9Ul6anXl Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iQIcBAEBAgAGBQJTOqUlAAoJEJDCuSvBvK1BgE4P/AxIYvlSfSf2yfG5ndC/EukB 6HaBDbqlUqNbK35QVWxxYk9nuWHryxygeNvJGtyTh1V1d+bOXWzfAoqV5TwBs0u9 aj+MpwXbaluuPbECyw3QxPOaYoh2aM2ejaWyZvIJBG8RycVrNNhesFvb+rHovA8V jMHPTXVVZOsHRGyfNOFftfTd6rR9t1hCHDLrlPoAAkeBXJBsllTO6DmqagLIfqVt tqfor7kL7mXQqxPynjGJC9bPlr58xoCIWcJNVS9w5Gfcm+6FEbvKlzETWaHXt2Sr e7QboO1T+H4NpN52bZ+6YaZ1KZsvlqWOq3V6sMDOBzBJpGBAYd352Gaf8Jfv4BCR pexEO+inqN2mAoeJnMB5EZaOm5byYZ5ZDM2mK8CREzih6tN43AxBa9Ulqu/r8Zz+ XszU7T5fCDj3xBtPcLs1a0IBFLXWJuwOjyLULka7TyHW2kC4AZGz81gmGVqArA8l Do241GBDtBSbTbQ4BBJvqOGj9AkY7LRqShC8NDNAqCgjZkGsyDu8ZJFAg+idbsL0 laKtovJ1kXzsQUBD0Y+QeszHpoXPxdUyORiJFxFxs7x3+j4cW0gsPEdeWZotY1rJ ptDv6SSwIVObzJqv68lmvgU3htjGRH51iF8uEGruk0L72FXG2cLsSXqltfQKUS7l 6AAlWuNP3fOGpTBYoKyg =0phw -----END PGP SIGNATURE----- --ensexbfp9Ul6anXl--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140401113814.GL21331>