Print this page
patch as-lock-macro-simplification
@@ -1750,22 +1750,22 @@
* All other lwps have already stopped and are in an orderly state.
*/
ASSERT(p == ttoproc(curthread));
prstop(0, 0);
- AS_LOCK_ENTER(as, &as->a_lock, RW_WRITER);
+ AS_LOCK_ENTER(as, RW_WRITER);
nphdrs = prnsegs(as, 0) + 2; /* two CORE note sections */
/*
* Count the number of section headers we're going to need.
*/
nshdrs = 0;
if (content & (CC_CONTENT_CTF | CC_CONTENT_SYMTAB)) {
(void) process_scns(content, p, credp, NULL, NULL, NULL, 0,
NULL, &nshdrs);
}
- AS_LOCK_EXIT(as, &as->a_lock);
+ AS_LOCK_EXIT(as);
ASSERT(nshdrs == 0 || nshdrs > 1);
/*
* The core file contents may required zero section headers, but if
@@ -1877,11 +1877,11 @@
stkbase = p->p_usrstack - p->p_stksize;
stksize = p->p_stksize;
mutex_exit(&p->p_lock);
- AS_LOCK_ENTER(as, &as->a_lock, RW_WRITER);
+ AS_LOCK_ENTER(as, RW_WRITER);
i = 2;
for (seg = AS_SEGFIRST(as); seg != NULL; seg = AS_SEGNEXT(as, seg)) {
caddr_t eaddr = seg->s_base + pr_getsegsize(seg, 0);
caddr_t saddr, naddr;
void *tmp = NULL;
@@ -1977,11 +1977,11 @@
exclude:
i++;
}
ASSERT(tmp == NULL);
}
- AS_LOCK_EXIT(as, &as->a_lock);
+ AS_LOCK_EXIT(as);
if (overflow || i != nphdrs) {
if (ntries++ == 0) {
kmem_free(bigwad, bigsize);
overflow = 0;
@@ -2126,18 +2126,18 @@
if (nphdrs >= PN_XNUM)
bigwad->shdr[0].sh_info = nphdrs;
if (nshdrs > 1) {
- AS_LOCK_ENTER(as, &as->a_lock, RW_WRITER);
+ AS_LOCK_ENTER(as, RW_WRITER);
if ((error = process_scns(content, p, credp, vp,
&bigwad->shdr[0], nshdrs, rlimit, &doffset,
NULL)) != 0) {
- AS_LOCK_EXIT(as, &as->a_lock);
+ AS_LOCK_EXIT(as);
goto done;
}
- AS_LOCK_EXIT(as, &as->a_lock);
+ AS_LOCK_EXIT(as);
}
if ((error = core_write(vp, UIO_SYSSPACE, soffset,
&bigwad->shdr[0], shdrsz, rlimit, credp)) != 0)
goto done;