aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Petter Selasky <hselasky@FreeBSD.org>2017-05-31 21:05:24 +0000
committerHans Petter Selasky <hselasky@FreeBSD.org>2017-05-31 21:05:24 +0000
commit9a83b0971e6fc935a65feee3b0e2407a89ccc4bd (patch)
tree663d41ab120e17749679710f7b588123a657ce41
parent6166fdcebcfd4c62bb91ad81bf486a07041e94b9 (diff)
downloadsrc-9a83b0971e6fc935a65feee3b0e2407a89ccc4bd.tar.gz
src-9a83b0971e6fc935a65feee3b0e2407a89ccc4bd.zip
Minor code optimisation.
Avoid locking the global CUSE lock when the polling flags are zero. MFC after: 1 week
Notes
Notes: svn path=/head/; revision=319355
-rw-r--r--sys/fs/cuse/cuse.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/fs/cuse/cuse.c b/sys/fs/cuse/cuse.c
index 33d36c586e2b..79a2d1b2d020 100644
--- a/sys/fs/cuse/cuse.c
+++ b/sys/fs/cuse/cuse.c
@@ -1507,8 +1507,8 @@ cuse_client_kqfilter_poll(struct cdev *dev, struct cuse_client *pcc)
/* get the latest polling state from the server */
temp = cuse_client_poll(dev, POLLIN | POLLOUT, NULL);
- cuse_lock();
if (temp & (POLLIN | POLLOUT)) {
+ cuse_lock();
if (temp & POLLIN)
pcc->cflags |= CUSE_CLI_KNOTE_NEED_READ;
if (temp & POLLOUT)
@@ -1516,8 +1516,8 @@ cuse_client_kqfilter_poll(struct cdev *dev, struct cuse_client *pcc)
/* make sure the "knote" gets woken up */
cuse_server_wakeup_locked(pcc->server);
+ cuse_unlock();
}
- cuse_unlock();
}
}