Import ncpfs 2.0.11
This commit is contained in:
BIN
.downloads/ncpfs-2.0.11.tgz
Normal file
BIN
.downloads/ncpfs-2.0.11.tgz
Normal file
Binary file not shown.
5
BUGS
5
BUGS
@@ -13,9 +13,8 @@ down the complete ipx subsystem by deleting all ipx interfaces,
|
||||
unmounting all ncpfs volumes (in this order!) and restarting all
|
||||
again.
|
||||
|
||||
For the kernel hackers who want to look at the problem: The routine
|
||||
ipx_sendmsg in net/ipx/af_ipx.c sometimes locks forever if called with
|
||||
nonblock=0. I DO NOT KNOW WHY!!! HELP ME, PLEASE!
|
||||
This problem has been solved by Martin Stover (THANKS!!)
|
||||
See patches/lockup-2.0.30.diff for the fix.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
|
||||
4
Changes
4
Changes
@@ -1,6 +1,10 @@
|
||||
I only began this file with ncpfs-0.12. If you're interested in older
|
||||
versions, you can find them on ftp.gwdg.de:/pub/linux/misc/ncpfs/old.
|
||||
|
||||
ncpfs-2.0.10 -> ncpfs-2.0.11
|
||||
- Added Martin's patch to Linux 2.0.30 to get rid of the lockups.
|
||||
MANY thanks to Martin Stover!
|
||||
|
||||
ncpfs-2.0.9 -> ncpfs-2.0.10
|
||||
- Made nwtrustee hopefully work ;-)
|
||||
- Made the manpages a little bit prettier
|
||||
|
||||
2
Makefile
2
Makefile
@@ -2,7 +2,7 @@
|
||||
# Makefile for the linux ncp-filesystem routines.
|
||||
#
|
||||
|
||||
VERSION = 2.0.10
|
||||
VERSION = 2.0.11
|
||||
|
||||
# If you are using kerneld to autoload ncp support,
|
||||
# uncomment this (kerneld is in linux since about 1.3.57):
|
||||
|
||||
@@ -1,19 +1,17 @@
|
||||
Begin3
|
||||
Title: ncpfs
|
||||
Version: 2.0.10
|
||||
Entered-date: 23. February 1997
|
||||
Version: 2.0.11
|
||||
Entered-date: July 14, 1997
|
||||
Description: With ncpfs you can mount volumes of your netware
|
||||
server under Linux. You can also print to netware
|
||||
print queues and spool netware print queues to the
|
||||
Linux printing system. You need kernel 1.2.x or
|
||||
1.3.71 and above. ncpfs does NOT work with any 1.3.x
|
||||
kernel below 1.3.71.
|
||||
Linux printing system.
|
||||
Keywords: filesystem ncp novell netware printing
|
||||
Author: lendecke@namu01.Num.Math.Uni-Goettingen.de (Volker Lendecke)
|
||||
Maintained-by: lendecke@namu01.Num.Math.Uni-Goettingen.de (Volker Lendecke)
|
||||
Author: lendecke@Math.Uni-Goettingen.de (Volker Lendecke)
|
||||
Maintained-by: lendecke@Math.Uni-Goettingen.de (Volker Lendecke)
|
||||
Primary-site: ftp.gwdg.de:/pub/linux/misc/ncpfs
|
||||
Alternate-site: sunsite.unc.edu:/pub/Linux/system/Filesystems/ncpfs
|
||||
~158k ncpfs-2.0.10.tgz
|
||||
~ 1k ncpfs-2.0.10.lsm
|
||||
~158k ncpfs-2.0.11.tgz
|
||||
~ 1k ncpfs-2.0.11.lsm
|
||||
Copying-policy: GPL
|
||||
End
|
||||
@@ -4,10 +4,9 @@ and do:
|
||||
patch -p1 < patch-file
|
||||
|
||||
|
||||
lockup-2.0.28.diff:
|
||||
An *extremely* dirty fix to the lockup bug mentioned in the BUGS
|
||||
file. Please only apply it if you experience the problem. Should apply
|
||||
to 2.0.28 and above in the 2.0.x series. NOT TESTED with 2.1.x.
|
||||
lockup-2.0.30.diff:
|
||||
Please apply this patch to your 2.0.30 kernel to get rid of the ncpfs
|
||||
lockups. See ../BUGS for the symptoms.
|
||||
|
||||
linux-2.1.26.diff:
|
||||
Little fix to make ncpfs work with 2.1.26. Sent to Linus.
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
diff -urN 2.0.11/fs/ncpfs/sock.c linux/fs/ncpfs/sock.c
|
||||
--- 2.0.28/fs/ncpfs/sock.c Fri Jul 12 08:14:53 1996
|
||||
+++ linux/fs/ncpfs/sock.c Thu Aug 8 19:27:26 1996
|
||||
@@ -55,7 +55,8 @@
|
||||
{
|
||||
struct iovec iov;
|
||||
struct msghdr msg;
|
||||
-
|
||||
+ int result;
|
||||
+
|
||||
iov.iov_base = (void *)buff;
|
||||
iov.iov_len = len;
|
||||
|
||||
@@ -65,7 +66,29 @@
|
||||
msg.msg_iov = &iov;
|
||||
msg.msg_iovlen = 1;
|
||||
|
||||
- return sock->ops->sendmsg(sock, &msg, len, nonblock, flags);
|
||||
+ result = sock->ops->sendmsg(sock, &msg, len, 1, flags);
|
||||
+
|
||||
+ if ((result != -EAGAIN) || (nonblock != 0))
|
||||
+ {
|
||||
+ return result;
|
||||
+ }
|
||||
+
|
||||
+ /* The following is probably one of the worst sins you can do
|
||||
+ to a multitasking kernel: active polling. But when you call
|
||||
+ ipx_sendmsg with nonblock==0, then it will block forever
|
||||
+ from time to time. I really do not know why. To work around
|
||||
+ this, I try to send the packet with nonblock=1 and retry
|
||||
+ it. */
|
||||
+
|
||||
+ do {
|
||||
+ /* Before retrying, give others a chance */
|
||||
+ current->state = TASK_INTERRUPTIBLE;
|
||||
+ current->timeout = jiffies + HZ/10;
|
||||
+ schedule();
|
||||
+ result = sock->ops->sendmsg(sock, &msg, len, 1, flags);
|
||||
+ } while (result == -EAGAIN);
|
||||
+
|
||||
+ return result;
|
||||
}
|
||||
|
||||
|
||||
12
patches/lockup-2.0.30.diff
Normal file
12
patches/lockup-2.0.30.diff
Normal file
@@ -0,0 +1,12 @@
|
||||
diff -u -urN 2.0.30/net/ipx/af_ipx.c 2.0.30-patched/net/ipx/af_ipx.c
|
||||
--- 2.0.30/net/ipx/af_ipx.c Wed Nov 27 08:44:21 1996
|
||||
+++ 2.0.30-patched/net/ipx/af_ipx.c Mon Jul 14 17:25:12 1997
|
||||
@@ -1723,6 +1723,7 @@
|
||||
}
|
||||
sk->rcvbuf=SK_RMEM_MAX;
|
||||
sk->sndbuf=SK_WMEM_MAX;
|
||||
+ sk->allocation=GFP_KERNEL;
|
||||
sk->prot=NULL; /* So we use default free mechanisms */
|
||||
skb_queue_head_init(&sk->receive_queue);
|
||||
skb_queue_head_init(&sk->write_queue);
|
||||
|
||||
Reference in New Issue
Block a user