On Thu, Jul 11, 2019 at 01:46:28AM +0300, Jarkko Sakkinen wrote: > On Wed, Jul 10, 2019 at 11:08:37AM -0700, Xing, Cedric wrote: > > > With these conclusions I think the current vDSO API is sufficient for > > > Linux. > > > > The new vDSO API is to support data exchange on stack. It has nothing to do > > with debugging. BTW, the community has closed on this. > > And how that is useful? > > > The CFI directives are for stack unwinding. They don't affect what the code > > does so you can just treat them as NOPs if you don't understand what they > > do. However, they are useful to not only debuggers but also exception > > handling code. libunwind also has a setjmp()/longjmp() implementation based > > on CFI directives. > > Of course I won't merge code of which usefulness I don't understand. I re-read the cover letter [1] because it usually is the place to "pitch" a feature. It fails to address two things: 1. How and in what circumstances is an untrusted stack is a better vessel for handling exceptions than the register based approach that we already have? 2. How is it simpler approach? There is a strong claim of simplicity and convenience without anything backing it. 3. Why we need both register and stack based approach co-exist? I'd go with one approach for a new API without any legacy whatsoever. This really needs a better pitch before we can consider doing anything to it. Also, in [2] there is talk about the next revision. Maybe the way go forward is to address the three issues I found in the cover letter and fix whatever needed to be fixed in the actual patches? [1] https://lkml.org/lkml/2019/4/24/84 [2] https://lkml.org/lkml/2019/4/25/1170 /Jarkko