From: bugzilla-daemon@libre-riscv.org
To: libre-riscv-dev@lists.libre-riscv.org
Subject: [libre-riscv-dev] [Bug 264] ISA switch needs to be a privileged operation
Date: Mon, 23 Mar 2020 01:12:01 +0000
Message-ID: <bug-264-13-5iWZcd5aX5@http.bugs.libre-riscv.org/> (raw)
In-Reply-To: <bug-264-13@http.bugs.libre-riscv.org/>
http://bugs.libre-riscv.org/show_bug.cgi?id=264
--- Comment #3 from Jacob Lifshay <programmerjake@gmail.com> ---
(In reply to Luke Kenneth Casson Leighton from comment #2)
> (In reply to Jacob Lifshay from comment #1)
> > it's perfectly fine to not support particular pairs (such as if the second
> > one can trap and the first one can't just be run again -- allowing us to not
> > need to worry about what happens if we trap in the middle of a pair).
>
> hmm... we might have to. or, another way (indicating the extent of the
> awfulness), a bit in a SPR which is contextswitched tells us which of the 2
> C instructions are being executed.
That could work, but it will require additional modification to Linux as well
as userspace for things like changing the on-stack structures for asynchronous
signals.
>
> or... *shudder* we have the PC advance first by 4 bytes, then jump BACK 2
> bytes, then jump forward to...
That would be very messy and won't work if any instructions don't start on a
4-byte boundary (can happen with 48-bit instructions), since that would be
ambiguous between a misaligned 4-byte instruction and the second half of a
compressed instruction pair.
> ... no, my brain just melted thinking about that
> one.
Let's all join the melted brain club!!! :P
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
libre-riscv-dev mailing list
libre-riscv-dev@lists.libre-riscv.org
http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev
next prev parent reply index
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-22 23:19 [libre-riscv-dev] [Bug 264] New: " bugzilla-daemon
2020-03-23 0:01 ` [libre-riscv-dev] [Bug 264] " bugzilla-daemon
2020-03-23 0:26 ` bugzilla-daemon
2020-03-23 1:12 ` bugzilla-daemon [this message]
2020-03-23 7:54 ` bugzilla-daemon
2020-03-23 8:30 ` bugzilla-daemon
2020-03-23 8:37 ` bugzilla-daemon
2020-03-23 8:47 ` bugzilla-daemon
2020-03-23 8:54 ` bugzilla-daemon
2020-03-23 8:57 ` bugzilla-daemon
2020-03-23 10:24 ` bugzilla-daemon
2020-03-23 10:28 ` bugzilla-daemon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bug-264-13-5iWZcd5aX5@http.bugs.libre-riscv.org/ \
--to=bugzilla-daemon@libre-riscv.org \
--cc=libre-riscv-dev@lists.libre-riscv.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Libre RISC-V Mailing list Archives (accessible via public-inbox)
Archives are clonable: git clone --mirror https://inbox.libre-soc.org/libre-riscv-dev
Example config snippet for mirrors
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git