Add 2017Q2 arm64 entry from andrew

This commit is contained in:
Benjamin Kaduk 2017-07-28 21:22:11 +00:00
parent 6ecdbd2f5d
commit 72a1bcfc28
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=50598

View file

@ -1699,4 +1699,59 @@
and <tt>net/coda_server</tt>).</task>
</help>
</project>
<project cat='arch'>
<title>&os;/arm64</title>
<contact>
<person>
<name>
<given>Andrew</given>
<common>Turner</common>
</name>
<email>andrew@FreeBSD.org</email>
</person>
</contact>
<links>
<url href="https://wiki.FreeBSD.org/arm64">&os; arm64 Wiki Page</url>
</links>
<body>
<p>Support for the Privilege Access Never (PAN) feature was
added. This stops the kernel from accessing userspace
memory, except through specific instructions. This helps
security by only allowing access to userspace via the
correct accessor functions. This is enabled on all
supported CPUs that implement ARMv8.1 or later.</p>
<p>The <tt>pmap</tt> code now supports the Unprivileged
execute-never (UXN) and Privileged execute-never (PXN) bits
in the page tables. These bits stop userspace and the
kernel, respectively, from executing instructions on any
marked page.</p>
<p>The performance of the pmap layer has been improved. Many
of the cache handling function calls have been removed.
Some were needed early on to work around other bugs that
have now been fixed. The removal of these calls has led to
a large performance improvement.</p>
<p>The kernel now uses <tt>crc32c</tt> instructions where
appropriate. These are an optional set of instructions to
perform <tt>crc32c</tt> quickly without using a lookup
table.c</p>
<p>The <tt>VM_MEMATTR_WRITE_THROUGH</tt> memory attribute is
now supported. This is used to allocate memory for the
framebuffer. Previously, the kernel would use cached
memory; however, this leads to visual artifacts. The
write-through flag fixes these by writing data out to
RAM.</p>
<p>The default linker on arm64 is now <tt>lld</tt>. This
means &os; is able to built itsself with just the components
in the base system, a big milestone!</p>
</body>
</project>
</report>