Matt> I've added a little cleanup to this patch. Viren, please try this
Matt> patch.
I compiled a kernel with it, and no panic!! Here's what I get instead:
[vshah@jabberwock] ~> rm index.html
rm: index.html: No such file or directory
2220 [6:41pm]
[vshah@jabberwock] ~> ln -s public_html/index.html ./index.html
ln: ./index.html: RPC struct is bad
2221 [6:41pm]
[vshah@jabberwock] ~> ls -la index.html
lrwxr-xr-x 1 vshah staff 22 Nov 29 18:41 index.html@ -> public_html/index.html
Does that do what it is suppossed to? Why the "RPC struct is bad"?
Matt> -Matt
Matt> Index: nfs_vnops.c
Matt> ===================================================================
Matt> RCS file: /FreeBSD/FreeBSD-CVS/src/sys/nfs/nfs_vnops.c,v
Matt> retrieving revision 1.146
Matt> diff -u -r1.146 nfs_vnops.c
Matt> --- nfs_vnops.c 1999/11/27 18:14:41 1.146
Matt> +++ nfs_vnops.c 1999/11/29 23:23:05
Matt> @@ -1806,11 +1806,10 @@
Matt> txdr_nfsv2time(&vap->va_mtime, &sp->sa_mtime);
Matt> }
Matt> nfsm_request(dvp, NFSPROC_SYMLINK, cnp->cn_proc, cnp->cn_cred);
Matt> - if (v3) {
Matt> - if (!error)
Matt> - nfsm_mtofh(dvp, newvp, v3, gotvp);
Matt> + if (!error)
Matt> + nfsm_mtofh(dvp, newvp, v3, gotvp);
Matt> + if (v3)
Matt> nfsm_wcc_data(dvp, wccflag);
Matt> - }
Matt> nfsm_reqdone;
Matt> /*
Matt> * Kludge: Map EEXIST => 0 assuming that it is a reply to a retry.
Matt> @@ -1821,8 +1820,9 @@
Matt> if (error) {
Matt> if (newvp)
Matt> vput(newvp);
Matt> - } else
Matt> + } else {
Matt> *ap->a_vpp = newvp;
Matt> + }
Matt> VTONFS(dvp)->n_flag |= NMODIFIED;
Matt> if (!wccflag)
Matt> VTONFS(dvp)->n_attrstamp = 0;
Viren
--
Viren Shah | "You can't trust code that you did not totally
Research Associate, RST Inc. | create yourself. (Especially code from
[EMAIL PROTECTED] | companies that employ people like me.)"
http://www.rstcorp.com/~vshah | - Ken Thompson "Reflections on Trusting Trust"
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message