DragonFlyBSD Finalizes Its Ryzen Workaround

Written by Michael Larabel in BSD on 12 August 2017 at 06:17 AM EDT. 12 Comments
BSD
Separate from the AMD Ryzen performance marginality problem affecting Linux users, BSD users have been working on a workaround for their kernels to address problems with how their user stacks are mapped.

A link circulating earlier this month was this FreeBSD commit to work around a guard page issue. Issues (funky behavior) can occur if code is running at the top of the user memory address space, so the workaround is to increase the guard page size. Linux has already had a large guard page while the BSDs have not, but they are now being increased for Ryzen.

DragonFlyBSD's Matthew Dillon has been leading that investigation on the BSD side. Prior to that FreeBSD commit he made a temporary workaround back in March of this year. This week he's now firmed up his workaround.

Per this commit, he's now lowered the maximum user address by 2MB to ensure the top 2MB of the user address space is unmappable. Those interested in more of the technical details can find it via the commit message on that link.

So both the latest DragonFlyBSD and FreeBSD development code should now be playing happy with Ryzen. I'm still waiting to receive Threadripper and EPYC, but when finally getting my hands on them, will likely be doing an interesting Linux vs. BSD benchmark comparison.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week