<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/mips/include/proc.h, branch main</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=main</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2021-12-31T03:57:24Z</updated>
<entry>
<title>mips: Remove sys/mips</title>
<updated>2021-12-31T03:57:24Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2021-12-31T03:56:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c09981f1422ef0d44042dacc5d1265392fba39f1'/>
<id>urn:sha1:c09981f1422ef0d44042dacc5d1265392fba39f1</id>
<content type='text'>
Remove sys/mips as the next step of decomissioning mips from the tree.
Remove mips special cases from the kernel make files. Remove the mips
specific linker scripts.

Sponsored by:		Netflix
</content>
</entry>
<entry>
<title>Make struct syscall_args machine independent</title>
<updated>2021-12-08T18:45:33Z</updated>
<author>
<name>Brooks Davis</name>
<email>brooks@FreeBSD.org</email>
</author>
<published>2021-12-08T18:45:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=547566526f6ebdb7b78b6ab78d396b7ef2ec2a3b'/>
<id>urn:sha1:547566526f6ebdb7b78b6ab78d396b7ef2ec2a3b</id>
<content type='text'>
After a round of cleanups in late 2020, all definitions are
functionally identical.

This removes a rotted __aligned(8) on arm. It was added in
b7112ead32bc50ef9744099bdbb1cfbd6e906b2a and was intended to align the
args member so that 64-bit types (off_t, etc) could be safely read on
armeb compiled with clang. With the removal of armev, this is no
longer needed (armv7 requires that 32-bit aligned reads of 64-bit
values be supported and we enable such support on armv6).  As further
evidence this is unnecessary, cleanups to struct syscall_args have
resulted in args being 32-bit aligned on 32-bit systems.  The sole
effect is to bloat the struct by 4 bytes.

Reviewed by:	kib, jhb, imp
Differential Revision:	https://reviews.freebsd.org/D33308
</content>
</entry>
<entry>
<title>Implement GET_STACK_USAGE on remaining archs</title>
<updated>2021-11-30T15:15:56Z</updated>
<author>
<name>Mitchell Horne</name>
<email>mhorne@FreeBSD.org</email>
</author>
<published>2021-11-25T16:01:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0d2224733e970aaa67a4e1af7b340044adda92f6'/>
<id>urn:sha1:0d2224733e970aaa67a4e1af7b340044adda92f6</id>
<content type='text'>
This definition enables callers to estimate remaining space on the
kstack, and take action on it. Notably, it enables optimizations in the
GEOM and netgraph subsystems to directly dispatch work items when there
is sufficient stack space, rather than queuing them for a worker thread.

Implement it for riscv, arm, and mips. Remove the #ifdefs, so it will
not go unimplemented elsewhere.

PR:		259157
Reviewed by:	mav, kib, markj (previous version)
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D32580
</content>
</entry>
<entry>
<title>Pass the syscall number to capsicum permission-denied signals</title>
<updated>2021-07-16T17:06:44Z</updated>
<author>
<name>David Chisnall</name>
<email>theraven@FreeBSD.org</email>
</author>
<published>2021-07-10T16:19:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=cf98bc28d39d6df5386ac57375af1b60af5d6bb3'/>
<id>urn:sha1:cf98bc28d39d6df5386ac57375af1b60af5d6bb3</id>
<content type='text'>
The syscall number is stored in the same register as the syscall return
on amd64 (and possibly other architectures) and so it is impossible to
recover in the signal handler after the call has returned.  This small
tweak delivers it in the `si_value` field of the signal, which is
sufficient to catch capability violations and emulate them with a call
to a more-privileged process in the signal handler.

This reapplies 3a522ba1bc852c3d4660a4fa32e4a94999d09a47 with a fix for
the static assertion failure on i386.

Approved by:	markj (mentor)

Reviewed by:	kib, bcr (manpages)

Differential Revision: https://reviews.freebsd.org/D29185
</content>
</entry>
<entry>
<title>Revert "Pass the syscall number to capsicum permission-denied signals"</title>
<updated>2021-07-10T19:26:01Z</updated>
<author>
<name>David Chisnall</name>
<email>theraven@FreeBSD.org</email>
</author>
<published>2021-07-10T19:25:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=d2b558281aadc266807e42ffb27d2108d308de46'/>
<id>urn:sha1:d2b558281aadc266807e42ffb27d2108d308de46</id>
<content type='text'>
This broke the i386 build.

This reverts commit 3a522ba1bc852c3d4660a4fa32e4a94999d09a47.
</content>
</entry>
<entry>
<title>Pass the syscall number to capsicum permission-denied signals</title>
<updated>2021-07-10T16:19:52Z</updated>
<author>
<name>David Chisnall</name>
<email>theraven@FreeBSD.org</email>
</author>
<published>2021-07-10T16:19:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3a522ba1bc852c3d4660a4fa32e4a94999d09a47'/>
<id>urn:sha1:3a522ba1bc852c3d4660a4fa32e4a94999d09a47</id>
<content type='text'>
The syscall number is stored in the same register as the syscall return
on amd64 (and possibly other architectures) and so it is impossible to
recover in the signal handler after the call has returned.  This small
tweak delivers it in the `si_value` field of the signal, which is
sufficient to catch capability violations and emulate them with a call
to a more-privileged process in the signal handler.

Approved by:	markj (mentor)

Reviewed by:	kib, bcr (manpages)

Differential Revision: https://reviews.freebsd.org/D29185
</content>
</entry>
<entry>
<title>Remove 'struct trapframe' pointer from mips64's 'struct syscall_args'.</title>
<updated>2020-11-06T19:19:51Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2020-11-06T19:19:51Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=24adaab477dca6fe334057a5f75c7a6b372b244a'/>
<id>urn:sha1:24adaab477dca6fe334057a5f75c7a6b372b244a</id>
<content type='text'>
While here, use MAXARGS.  This brings its 'struct syscall_args' in sync
with most other architectures.

Reviewed by:	arichardson, brooks
MFC after:	2 weeks
Sponsored by:	EPSRC
Differential Revision:	https://reviews.freebsd.org/D26619
</content>
</entry>
<entry>
<title>Get rid of sa-&gt;narg.  It serves no purpose; use sa-&gt;callp-&gt;sy_narg instead.</title>
<updated>2020-09-27T18:47:06Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2020-09-27T18:47:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1e2521ffaef4fd0950686f1302283a92ccf9c978'/>
<id>urn:sha1:1e2521ffaef4fd0950686f1302283a92ccf9c978</id>
<content type='text'>
Reviewed by:	kib
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D26458
</content>
</entry>
<entry>
<title>Various fixes to TLS for MIPS.</title>
<updated>2020-06-12T21:21:18Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2020-06-12T21:21:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=822d2d6ac94fd32049de39edfe9ac7d596b4a09b'/>
<id>urn:sha1:822d2d6ac94fd32049de39edfe9ac7d596b4a09b</id>
<content type='text'>
- Clear the current thread's TLS pointer on exec. Previously the TLS
  pointer (and register) remain unchanged.

- Explicitly clear the TLS pointer when new threads are created.

- Make md_tls_tcb_offset per-process instead of per-thread.

  The layout of the TLS and TCB are identical for all threads in a
  process, it is only the TLS pointer values themselves that vary by
  thread.  This also makes setting md_tls_tcb_offset in
  cpu_set_user_tls() redundant with the setting in exec_setregs(), so
  only set it in exec_setregs().

Submitted by:	Alfredo Mazzinghi (1)
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D24957
</content>
</entry>
<entry>
<title>mips: avoid empty mdproc struct</title>
<updated>2019-08-19T18:15:17Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2019-08-19T18:15:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=7d7fb3dc010d317b4aebfeaf5248078673f28846'/>
<id>urn:sha1:7d7fb3dc010d317b4aebfeaf5248078673f28846</id>
<content type='text'>
Compiling with a more modern toolchain than GCC 4.2 in base warns about the
empty struct. Take a hint and comment from r350902+r350953 by luporl@.
</content>
</entry>
</feed>
