diff options
| author | John Baldwin <jhb@FreeBSD.org> | 2001-10-17 21:55:56 +0000 |
|---|---|---|
| committer | John Baldwin <jhb@FreeBSD.org> | 2001-10-17 21:55:56 +0000 |
| commit | c00693218691c53f2139e1c24b248cc4c787660f (patch) | |
| tree | 5249fd8c522d04f3194ea57b7345d59435afcf27 | |
| parent | c479a8493c594453b59cb09cdd1daa1fc3fe09f8 (diff) | |
Notes
| -rw-r--r-- | sys/alpha/alpha/trap.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/sys/alpha/alpha/trap.c b/sys/alpha/alpha/trap.c index 726615ab22d6..d82f45551898 100644 --- a/sys/alpha/alpha/trap.c +++ b/sys/alpha/alpha/trap.c @@ -311,11 +311,10 @@ trap(a0, a1, a2, entry, framep) */ if (user) { mtx_lock(&Giant); - if ((i = unaligned_fixup(a0, a1, a2, td)) == 0) { - mtx_unlock(&Giant); - goto out; - } + i = unaligned_fixup(a0, a1, a2, td); mtx_unlock(&Giant); + if (i == 0) + goto out; ucode = a0; /* VA */ break; } @@ -572,12 +571,10 @@ trap(a0, a1, a2, entry, framep) } else if (rv == KERN_PROTECTION_FAILURE) rv = KERN_INVALID_ADDRESS; } - if (rv == KERN_SUCCESS) { - mtx_unlock(&Giant); + mtx_unlock(&Giant); + if (rv == KERN_SUCCESS) goto out; - } - mtx_unlock(&Giant); if (!user) { /* Check for copyin/copyout fault */ if (td != NULL && |
