Date: Sun, 05 Nov 2000 23:50:15 -0800 From: Marcel Moolenaar <marcel@cup.hp.com> To: arch@FreeBSD.org Subject: Request for Review: ABI/arch dependent MINSIGSTKSZ Message-ID: <3A0662B7.9B1406A@cup.hp.com>
next in thread | raw e-mail | index | archive | help
Hi, With the different ABIs and architectures and thus different signal frames or stack requirements, having a single MINSIGSTKSZ is not really sufficient. I've put a patch on: http://people.FreeBSD.org/~marcel/minsigstksz.diff to allow for a more flexible or variable MINSIGSTKSZ. In general this is what's changing: o Add a sv_minsigstksz field to struct sysentvec, o Have sigaltstack use this field to compare the supplied stack size with the minimum required. o Move MINSIGSTKSZ from <sys/signal.h> to <machine/signal.h> to better have it match the requirements of the different architectures. Especially the ia64 ports needs enough stack. o Define a MINSIGSTKSZ for each "emulator" to the value defined by the "emulated" OS for improved compatibility. A note about the values of MINSIGSTKSZ used in the patch: o alpha & ia64: sizeof(struct sigframe) is rounded to the nearest multiple of 1024. A multiplication of 4 allows for recursion/nesting and is somewhat arbitrary. o i386: sizeof(struct sigframe) is rounded to the nearest multiple of 512. A multiplication of 4 allows for recursion/nesting and is somewhat arbitrary. o iBCS2: No real value known. Use 8192 to maintain current behaviour. o OSF1 & SVR4: Wait for maintainers to report real values before committing. o Linux: Values are equal to those used in a Linux kernel. Credit: The idea of a variable MINSIGSTKSZ is bde's, not mine. Your comments please, -- Marcel Moolenaar mail: marcel@cup.hp.com / marcel@FreeBSD.org tel: (408) 447-4222 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3A0662B7.9B1406A>
