Andy Chiu <andy.chiu@xxxxxxxxxx> writes:
Hey Björn,I think we might have different views here. A process has a pre-V, a and
On Tue, Feb 14, 2023 at 2:43 PM Björn Töpel <bjorn@xxxxxxxxxx> wrote:
So, two changes:This could potentially break old programs (non-V) that load new system
1. Disallow V-enablement if the existing altstack does not fit a V-sized
frame.
libraries (with V), If the program sets a small alt stack and takes
the fault in some libraries that use V. However, existing
implementation will also kill the process when the signal arrives,
finding insufficient stack frame in such cases. I'd choose the second
one if we only have these two options, because there is a chance that
the signal handler may not even run.
post-V state. Is allowing a process to enter V without the correct
preconditions a good idea? Allow to run with V turned on, but not able
to correctly handle a signal (the stack is too small)?
This was the same argument that the Intel folks had when enabling
AMX. Sure, AMX requires *explicit* enablement, but same rules should
apply, no?
2. Sanitize altstack changes when V is enabled.Yes, I'd like to have this. But it may be tricky when it comes to
deciding whether V is enabled, due to the first-use trap. If V is
commonly used in system libraries then it is likely that V will be
enabled before an user set an altstack. Sanitizing this case would be
easy and straightforward.
But what if the user sets an altstack before
enabling V in the first-use trap? This could happen on a statically
program that has hand-written V routines. This takes us to the 1st
question above, should we fail the user program immediately if the
altstack is set too small?
For me it's obvious to fail (always) "if the altstack is too small to
enable V", because it allows to execute V without proper preconditions.
Personally, I prefer a stricter model. Only enter V if you can, and
after entering it disallow changing the altstack.
Then again, this is *my* opinion and concern. What do other people
think? I don't want to stall the series.
Thank you for your hard work! It would be awesome to *finally* haveOther than the altstack handling, I think the series is a good state! ItThanks. I am reforming the v14 patch and hoping the same to happen soon too!
would great if we could see a v14 land in -next...
vector support in the kernel!