Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/netsmb smb_rq_enqueue(): use classic plain interruptible...
details: https://anonhg.NetBSD.org/src/rev/5df401d39ebf
branches: trunk
changeset: 543280:5df401d39ebf
user: jdolecek <jdolecek%NetBSD.org@localhost>
date: Fri Feb 21 19:52:58 2003 +0000
description:
smb_rq_enqueue(): use classic plain interruptible sleep instead
of noniterruptible sleep + smb_proc_intr()
diffstat:
sys/netsmb/smb_rq.c | 17 +++++++----------
1 files changed, 7 insertions(+), 10 deletions(-)
diffs (31 lines):
diff -r d6786cf50da4 -r 5df401d39ebf sys/netsmb/smb_rq.c
--- a/sys/netsmb/smb_rq.c Fri Feb 21 19:07:36 2003 +0000
+++ b/sys/netsmb/smb_rq.c Fri Feb 21 19:52:58 2003 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: smb_rq.c,v 1.6 2003/02/18 11:21:01 jdolecek Exp $ */
+/* $NetBSD: smb_rq.c,v 1.7 2003/02/21 19:52:58 jdolecek Exp $ */
/*
* Copyright (c) 2000-2001, Boris Popov
@@ -182,15 +182,12 @@
for (;;) {
SMBS_ST_LOCK(ssp);
if (ssp->ss_flags & SMBS_RECONNECTING) {
-#ifdef __NetBSD__
- ltsleep(&ssp->ss_vcgenid, PWAIT | PNORELOCK, "90trcn",
- hz, SMBS_ST_LOCKPTR(ssp));
-#else
- msleep(&ssp->ss_vcgenid, SMBS_ST_LOCKPTR(ssp),
- PWAIT | PDROP, "90trcn", hz);
-#endif
- if (smb_proc_intr(rqp->sr_cred->scr_p))
- return EINTR;
+ SMBS_ST_UNLOCK(ssp);
+ error = ltsleep(&ssp->ss_vcgenid,
+ PWAIT | PCATCH | PNORELOCK,
+ "90trcn", hz, SMBS_ST_LOCKPTR(ssp));
+ if (error && error != EWOULDBLOCK)
+ return (error);
continue;
}
if (smb_share_valid(ssp) || (ssp->ss_flags & SMBS_CONNECTED) == 0) {
Home |
Main Index |
Thread Index |
Old Index