svn commit: r354095 - in head/sys: amd64/amd64 amd64/include kern
Antoine Brodin
antoine at freebsd.org
Sat Oct 26 06:24:22 UTC 2019
On Fri, Oct 25, 2019 at 10:09 PM Konstantin Belousov <kib at freebsd.org> wrote:
>
> Author: kib
> Date: Fri Oct 25 20:09:42 2019
> New Revision: 354095
> URL: https://svnweb.freebsd.org/changeset/base/354095
>
> Log:
> amd64: move pcb out of kstack to struct thread.
>
> This saves 320 bytes of the precious stack space.
>
> The only negative aspect of the change I can think of is that the
> struct thread increased by 320 bytes obviously, and that 320 bytes are
> not swapped out anymore. I believe the freed stack space is much more
> important than that. Also, current struct thread size is 1392 bytes
> on amd64, so UMA will allocate two thread structures per (4KB) slab,
> which leaves a space for pcb without increasing zone memory use.
>
> Reviewed by: alc, markj
> Tested by: pho
> Sponsored by: The FreeBSD Foundation
> MFC after: 2 weeks
> Differential revision: https://reviews.freebsd.org/D22138
Hi,
It seems that this breaks at least some versions of gcc:
In file included from /usr/include/sys/proc.h:75,
from /usr/include/sys/user.h:51,
from ./md-unwind-support.h:34,
from
/wrkdirs/usr/ports/lang/gcc10-devel/work/gcc-10-20191020/libgcc/unwind-dw2.c:412:
/usr/include/machine/proc.h:76:13: error: field 'md_pcb' has incomplete type
76 | struct pcb md_pcb;
| ^~~~~~
Antoine
More information about the svn-src-head
mailing list