corecode's projects
/
dragonfly.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
(parent:
590695b
)
dma: don't block when trying to aquire a queue file
dma
author
Simon Schubert <corecode@dragonflybsd.org>
Tue, 21 Jul 2009 23:21:44 +0000 (
01:21
+0200)
committer
Simon Schubert <corecode@dragonflybsd.org>
Tue, 21 Jul 2009 23:21:44 +0000 (
01:21
+0200)
We might race with some other process, so it is imperative to treat a
locked file as a soft error instead of blocking on the file until the
other process unlocks it.
libexec/dma/spool.c
patch
|
blob
|
blame
|
history
diff --git
a/libexec/dma/spool.c
b/libexec/dma/spool.c
index
d9d17e2
..
9a74620
100644
(file)
--- a/
libexec/dma/spool.c
+++ b/
libexec/dma/spool.c
@@
-308,7
+308,7
@@
aquirespool(struct qitem *it)
int queuefd;
if (it->queuef == NULL) {
- queuefd = open_locked(it->queuefn, O_RDWR);
+ queuefd = open_locked(it->queuefn, O_RDWR|O_NONBLOCK);
if (queuefd < 0)
goto fail;
it->queuef = fdopen(queuefd, "r+");