summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/fs/proc/prioctl.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/fs/proc/prioctl.c')
-rw-r--r--usr/src/uts/common/fs/proc/prioctl.c22
1 files changed, 6 insertions, 16 deletions
diff --git a/usr/src/uts/common/fs/proc/prioctl.c b/usr/src/uts/common/fs/proc/prioctl.c
index 8202e49df0..630ab0b2e3 100644
--- a/usr/src/uts/common/fs/proc/prioctl.c
+++ b/usr/src/uts/common/fs/proc/prioctl.c
@@ -930,8 +930,7 @@ startover:
}
case PIOCGHOLD: /* get signal-hold mask */
- schedctl_finish_sigblock(t);
- sigktou(&t->t_hold, &un.holdmask);
+ prgethold(t, &un.holdmask);
prunlock(pnp);
if (copyout(&un.holdmask, cmaddr, sizeof (un.holdmask)))
error = EFAULT;
@@ -1395,8 +1394,7 @@ oprgetstatus32(kthread_t *t, prstatus32_t *sp, zone_t *zp)
sp->pr_cursig = lwp->lwp_cursig;
prassignset(&sp->pr_sigpend, &p->p_sig);
prassignset(&sp->pr_lwppend, &t->t_sig);
- schedctl_finish_sigblock(t);
- prassignset(&sp->pr_sighold, &t->t_hold);
+ prgethold(t, &sp->pr_sighold);
sp->pr_altstack.ss_sp =
(caddr32_t)(uintptr_t)lwp->lwp_sigaltstack.ss_sp;
sp->pr_altstack.ss_size = (size32_t)lwp->lwp_sigaltstack.ss_size;
@@ -1673,14 +1671,8 @@ oprgetpsinfo32(proc_t *p, prpsinfo32_t *psp, kthread_t *tp)
/*ARGSUSED*/
static int
-prioctl32(
- struct vnode *vp,
- int cmd,
- intptr_t arg,
- int flag,
- cred_t *cr,
- int *rvalp,
- caller_context_t *ct)
+prioctl32(struct vnode *vp, int cmd, intptr_t arg, int flag, cred_t *cr,
+ int *rvalp, caller_context_t *ct)
{
int nsig = PROC_IS_BRANDED(curproc)? BROP(curproc)->b_nsig : NSIG;
caddr_t cmaddr = (caddr_t)arg;
@@ -2557,8 +2549,7 @@ startover:
}
case PIOCGHOLD: /* get signal-hold mask */
- schedctl_finish_sigblock(t);
- sigktou(&t->t_hold, &un32.holdmask);
+ prgethold(t, &un32.holdmask);
prunlock(pnp);
if (copyout(&un32.holdmask, cmaddr, sizeof (un32.holdmask)))
error = EFAULT;
@@ -3235,8 +3226,7 @@ oprgetstatus(kthread_t *t, prstatus_t *sp, zone_t *zp)
sp->pr_cursig = lwp->lwp_cursig;
prassignset(&sp->pr_sigpend, &p->p_sig);
prassignset(&sp->pr_lwppend, &t->t_sig);
- schedctl_finish_sigblock(t);
- prassignset(&sp->pr_sighold, &t->t_hold);
+ prgethold(t, &sp->pr_sighold);
sp->pr_altstack = lwp->lwp_sigaltstack;
prgetaction(p, up, lwp->lwp_cursig, &sp->pr_action);
sp->pr_pid = p->p_pid;