|
Форум cronyx.ru (архив)
OK | yesin  :: 2011-12-01 08:52 |
Исправил... патч для версии http://www.cronyx.ru/pub/cronyx/adapters/custom/linux-k2.6.32-d2.3.0.1.tar.bz2
diff -Naur old/linux/binder.c new/linux/binder.c --- old/linux/binder.c 2009-09-09 11:54:56.000000000 +0000 +++ new/linux/binder.c 2011-12-01 14:46:23.000000000 +0000 @@ -47,8 +47,8 @@ } binder_node_t; may_static binder_node_t binder_root; -may_static DECLARE_MUTEX (binder_sema); -may_static DECLARE_MUTEX (binder_topology); +may_static DEFINE_SEMAPHORE (binder_sema); +may_static DEFINE_SEMAPHORE (binder_topology); may_static struct task_struct *binder_locker, *binder_deffered_task; may_static int binder_lockdepth; may_static binder_node_t *minor2item[CRONYX_MINOR_MAX] = { &binder_root }; @@ -1166,8 +1166,9 @@ return error; } -may_static int binder_ioctl (struct inode *inode, struct file *file, unsigned cmd, unsigned long arg) +may_static long binder_ioctl (struct file *file, unsigned int cmd, unsigned long arg) { + struct inode *inode = file->f_dentry->d_inode; cronyx_binder_item_t *h; struct cronyx_ctl_t *ctl; binder_node_t *node; @@ -1445,7 +1446,7 @@ .read = binder_read, .write = binder_write, .poll = binder_poll, - .ioctl = binder_ioctl, + .unlocked_ioctl = binder_ioctl, .open = binder_open, .release = binder_release, .fasync = binder_fasync diff -Naur old/linux/module.h new/linux/module.h --- old/linux/module.h 2009-10-29 13:44:03.000000000 +0000 +++ new/linux/module.h 2011-12-01 14:55:07.000000000 +0000 @@ -292,13 +292,6 @@ #endif } -#ifndef HAVE_NETDEV_PRIV -static inline void *netdev_priv (const struct net_device *dev) -{ - return dev->priv; -} -#endif /* HAVE_NETDEV_PRIV */ - #if LINUX_VERSION_CODE < 0x02041D || (LINUX_VERSION_CODE > 0x020500 && LINUX_VERSION_CODE < 0x020607) static inline unsigned int jiffies_to_msecs (const unsigned long j) { diff -Naur old/linux/rbrg.c new/linux/rbrg.c --- old/linux/rbrg.c 2010-06-02 09:15:02.000000000 +0000 +++ new/linux/rbrg.c 2011-12-01 15:36:57.000000000 +0000 @@ -193,7 +193,7 @@ p->stats.rx_bytes += skb->len; p->stats.rx_packets++; p->dev->last_rx = jiffies; - netif_rx (skb); + netif_rx_ni (skb); } static void rbridge_receive_error (cronyx_binder_item_t * h, int errcode)
|