Coda File System

Re: Coda Client Problem

From: Jan Harkes <jaharkes_at_cs.cmu.edu>
Date: Thu, 15 Mar 2007 13:37:30 -0400
On Thu, Mar 15, 2007 at 03:47:14PM +0800, naufal jamri wrote:
> I've renamed the for the "coda installers" to "coda_installers". The
> previous error was resolved but this new error come:

Right, 2.6.5 is pretty old (April 2004 I believe) and the in-kernel APIs
have changed a bit over 3 years that passed. It looks like most of my
compatiblity wrappers don't go back far enough as I only checked older
versions in the git repository, and not the old bitkeeper repository.

Here is a patch that should deal with the symlink rewrite.

Jan


diff --git a/linux2.6/cnode.c b/linux2.6/cnode.c
index 9798dbc..dab3f65 100644
--- a/linux2.6/cnode.c
+++ b/linux2.6/cnode.c
@@ -4,6 +4,7 @@
 
 #include <linux/coda_linux.h>
 #include <linux/coda_psdev.h>
+#include "compat.h"
 
 static inline int coda_fideq(struct CodaFid *fid1, struct CodaFid *fid2)
 {
@@ -11,9 +12,14 @@ static inline int coda_fideq(struct CodaFid *fid1, struct CodaFid *fid2)
 }
 
 static struct inode_operations coda_symlink_inode_operations = {
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 8) /* actually 2.6.8-rc2 */
+	.readlink	= page_readlink,
+	.follow_link	= page_follow_link,
+#else
 	.readlink	= generic_readlink,
 	.follow_link	= page_follow_link_light,
 	.put_link	= page_put_link,
+#endif
 	.setattr	= coda_setattr,
 };
 
Received on 2007-03-15 13:39:12