Paolo Bonzini <pbonz...@redhat.com> writes: > On 21/01/21 10:27, Max Reitz wrote: >> Sure, I can do that. >> I agree that there probably are better solutions than to wrap >> everything in a lock. OTOH, it looks to me like this lock is the >> most simple solution. If Daniel is right[1] and we should drop >> coroutine-sigaltstack altogether (at some point...), perhaps it is >> best to go for the most simple solution now. >> [1] >> https://lists.nongnu.org/archive/html/qemu-block/2021-01/msg00808.html > > Yes, between coroutine-ucontext and the upcoming coroutine-asm[1] > (which I have shelved because it was mostly a requirement for x86 CET; > but it will come back some day), sooner or later there will be no > reason to keep coroutine-sigaltstack. Porting coroutine-asm to a new > architecture is easy, I even managed to do it for s390. ;)
POSIX dropping ucontext without a replacement was shortsighted. Yes, ucontext is warty, but that's no excuse for letting your users fend for themselves. Standard building blocks for coroutines are clearly needed. Without them, everybody gets to build from scratch or with ill-suited blocks like sigaltstack. > Paolo > > [1] https://patchew.org/QEMU/20190504120528.6389-1-pbonz...@redhat.com/