Neither lockd nor rpciod properly drop the BKL on exit.
Yes, the BKL is automatically relinquished on schedule but the failure
to drop the lock throws off the atomic accounting and results in a
preempt_count warning on exit.
This makes them play fair - it does not hurt.
Patch is against 2.5.32-bk. Please, apply.
Robert Love
diff -urN linux-2.5.32/fs/lockd/svc.c linux/fs/lockd/svc.c
--- linux-2.5.32/fs/lockd/svc.c Tue Aug 27 15:26:51 2002
+++ linux/fs/lockd/svc.c Wed Aug 28 17:42:50 2002
@@ -203,6 +203,7 @@
rpciod_down();
/* Release module */
+ unlock_kernel();
MOD_DEC_USE_COUNT;
}
diff -urN linux-2.5.32/net/sunrpc/sched.c linux/net/sunrpc/sched.c
--- linux-2.5.32/net/sunrpc/sched.c Tue Aug 27 15:26:43 2002
+++ linux/net/sunrpc/sched.c Wed Aug 28 17:42:50 2002
@@ -1030,6 +1030,7 @@
wake_up(assassin);
dprintk("RPC: rpciod exiting\n");
+ unlock_kernel();
MOD_DEC_USE_COUNT;
return 0;
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/