Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Feb 2017 22:39:34 +0100
From:      Oliver Pinter <oliver.pinter@hardenedbsd.org>
To:        Mark Millard <markmi@dsl-only.net>
Cc:        Andrew Turner <andrew@fubar.geek.nz>, svn-src-head@freebsd.org
Subject:   Re: svn commit: r313772 - head/sys/arm64/arm64
Message-ID:  <CAPQ4ffvNczu9g3QLMKgbdYw-LDJXQiyafQSqSjC5AFRNH36RoQ@mail.gmail.com>
In-Reply-To: <62A5F129-EFD3-496B-854C-9D8623EFFD38@dsl-only.net>
References:  <62A5F129-EFD3-496B-854C-9D8623EFFD38@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2/15/17, Mark Millard <markmi@dsl-only.net> wrote:
>> Author: andrew
>> Date: Wed Feb 15 14:56:47 2017
>> New Revision: 313772
>> URL:
>> https://svnweb.freebsd.org/changeset/base/313772
>>
>> Log:
>>   Load the new sp_el0 with interrupts disabled in fork_trampoline. If an
>>   interrupt arrives in fork_trampoline after sp_el0 was written we may
>> then
>>   switch to a new thread, enter userland so change this stack pointer,
>> then
>>   return to this code with the wrong value. This fixes this case by
>> moving
>>   the load of sp_el0 until after interrupts have been disabled.
>
> https://svnweb.freebsd.org/base/stable/11/sys/arm64/arm64/swtch.S?revision=302408&view=markup
>
> shows stable/11 has the same issue.
>
> Is this to be MFC'd at some point?
>
>
> stable/10 seems to have a different code structure:
>
> https://svnweb.freebsd.org/base/stable/10/sys/amd64/amd64/

This is x86-64 aka amd64 in FreeBSD, in 10-STABLE only 32 bit ARM
support exists, so there isn't arm64.

>
> does not list swtch.S . So I'm unsure about its status for
> fork returning to the child process and its handling of the
> stack pointer to be restored.
>
> ===
> Mark Millard
> markmi at dsl-only.net
>
> _______________________________________________
> svn-src-head@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/svn-src-head
> To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAPQ4ffvNczu9g3QLMKgbdYw-LDJXQiyafQSqSjC5AFRNH36RoQ>