From: Michael Büsch Date: Thu, 7 Oct 2010 22:06:23 +0000 (+0000) Subject: batman: 2.6.36 compile fixes X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=543dfc90bd2c9eb5920bbecafc6c97d9999ed289;hp=f5088b0a4daeed5e4512a44d4f1fa0a12f09a85e batman: 2.6.36 compile fixes SVN-Revision: 23313 --- diff --git a/net/batman/patches/100-2.6.36.patch b/net/batman/patches/100-2.6.36.patch new file mode 100644 index 0000000000..566c23b66b --- /dev/null +++ b/net/batman/patches/100-2.6.36.patch @@ -0,0 +1,47 @@ +--- + batman/linux/modules/gateway.c | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +--- batmand-r1439.orig/batman/linux/modules/gateway.c ++++ batmand-r1439/batman/linux/modules/gateway.c +@@ -29,6 +29,7 @@ static struct class *batman_class; + static int batgat_open(struct inode *inode, struct file *filp); + static int batgat_release(struct inode *inode, struct file *file); + static int batgat_ioctl( struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg ); ++static long batgat_ioctl_unlocked(struct file *file, unsigned int cmd, unsigned long arg ); + + + static void udp_data_ready(struct sock *sk, int len); +@@ -53,7 +54,11 @@ static int proc_clients_read(char *buf, + static struct file_operations fops = { + .open = batgat_open, + .release = batgat_release, ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) ++ .unlocked_ioctl = batgat_ioctl_unlocked, ++#else + .ioctl = batgat_ioctl, ++#endif + }; + + +@@ -166,6 +171,20 @@ static int batgat_release(struct inode * + } + + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) ++#include ++static long batgat_ioctl_unlocked(struct file *file, unsigned int cmd, unsigned long arg ) ++{ ++ int ret; ++ ++ lock_kernel(); ++ ret = batgat_ioctl(file->f_path.dentry->d_inode, file, cmd, arg); ++ unlock_kernel(); ++ ++ return ret; ++} ++#endif ++ + static int batgat_ioctl( struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg ) + { + uint8_t tmp_ip[4];