Date: Thu, 27 Jul 2006 22:32:30 +0000 (UTC) From: John Baldwin <jhb@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/amd64/amd64 trap.c src/sys/amd64/ia32 ia32_syscall.c src/sys/arm/arm trap.c src/sys/conf files src/sys/i386/i386 trap.c src/sys/ia64/ia32 ia32_trap.c src/sys/ia64/ia64 trap.c src/sys/powerpc/powerpc trap.c ... Message-ID: <200607272232.k6RMWUq2034772@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jhb 2006-07-27 22:32:30 UTC
FreeBSD src repository
Modified files:
sys/amd64/amd64 trap.c
sys/amd64/ia32 ia32_syscall.c
sys/arm/arm trap.c
sys/conf files
sys/i386/i386 trap.c
sys/ia64/ia32 ia32_trap.c
sys/ia64/ia64 trap.c
sys/powerpc/powerpc trap.c
sys/sparc64/sparc64 trap.c
Log:
Unify the checking for lock misbehavior in the various syscall()
implementations and adjust some of the checks while I'm here:
- Add a new check to make sure we don't return from a syscall in a critical
section.
- Add a new explicit check before userret() to make sure we don't return
with any locks held. The advantage here is that we can include the
syscall number and name in syscall() whereas that info is not available
in userret().
- Drop the mtx_assert()'s of sched_lock and Giant. They are replaced by
the more general checks just added.
MFC after: 2 weeks
Revision Changes Path
1.305 +13 -7 src/sys/amd64/amd64/trap.c
1.14 +13 -5 src/sys/amd64/ia32/ia32_syscall.c
1.25 +12 -4 src/sys/arm/arm/trap.c
1.1134 +1 -1 src/sys/conf/files
1.293 +13 -7 src/sys/i386/i386/trap.c
1.10 +13 -7 src/sys/ia64/ia32/ia32_trap.c
1.121 +13 -7 src/sys/ia64/ia64/trap.c
1.59 +13 -5 src/sys/powerpc/powerpc/trap.c
1.83 +13 -5 src/sys/sparc64/sparc64/trap.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200607272232.k6RMWUq2034772>
