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 ...

John Baldwin jhb at FreeBSD.org
Thu Jul 27 22:32:30 UTC 2006


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


More information about the cvs-src mailing list