summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/fs/proc/prvnops.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/fs/proc/prvnops.c')
-rw-r--r--usr/src/uts/common/fs/proc/prvnops.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/usr/src/uts/common/fs/proc/prvnops.c b/usr/src/uts/common/fs/proc/prvnops.c
index e392ce4b14..b60f938c9b 100644
--- a/usr/src/uts/common/fs/proc/prvnops.c
+++ b/usr/src/uts/common/fs/proc/prvnops.c
@@ -5939,7 +5939,11 @@ prpoll(vnode_t *vp, short events, int anyyet, short *reventsp,
return (0);
}
- lockstate = pollunlock(); /* avoid deadlock with prnotify() */
+ /* avoid deadlock with prnotify() */
+ if (pollunlock(&lockstate) != 0) {
+ *reventsp = POLLNVAL;
+ return (0);
+ }
if ((error = prlock(pnp, ZNO)) != 0) {
pollrelock(lockstate);