⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1017.ieee1394.patch

📁 sm86xx内核源包括补丁( GPL )的
💻 PATCH
字号:
diff -Naur --exclude=CVS --exclude='*.o' --exclude='*.a' --exclude='*.so' --exclude='*.elf' --exclude=System.map --exclude=Makefile.d --exclude='*log' --exclude='*log2' --exclude='*~' --exclude='.*~' --exclude='.#*' --exclude='*.bak' --exclude='*.orig' --exclude='*.rej' --exclude='core.[0-9]*' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=vmlinux --exclude=vmlinux.bin --exclude=yamon-02.06-SIGMADESIGNS-01_el.bin linuxmips-2.4.30.ref/drivers/ieee1394/eth1394.c linuxmips-2.4.30/drivers/ieee1394/eth1394.c--- linuxmips-2.4.30.ref/drivers/ieee1394/eth1394.c	2004-11-18 16:28:38.000000000 -0800+++ linuxmips-2.4.30/drivers/ieee1394/eth1394.c	2005-03-29 18:36:46.000000000 -0800@@ -149,20 +149,6 @@ 		 "(default = 25)."); static int max_partial_datagrams = 25; -static inline void purge_partial_datagram(struct list_head *old)-{-	struct partial_datagram *pd = list_entry(old, struct partial_datagram, list);-	struct list_head *lh, *n;--	list_for_each_safe(lh, n, &pd->frag_info) {-		struct fragment_info *fi = list_entry(lh, struct fragment_info, list);-		list_del(lh);-		kfree(fi);-	}-	list_del(old);-	kfree_skb(pd->skb);-	kfree(pd);-}  static int ether1394_header(struct sk_buff *skb, struct net_device *dev, 			    unsigned short type, void *daddr, void *saddr,@@ -899,6 +885,21 @@ 	return 0; } +static inline void purge_partial_datagram(struct list_head *old)+{+	struct partial_datagram *pd = list_entry(old, struct partial_datagram, list);+	struct list_head *lh, *n;++	list_for_each_safe(lh, n, &pd->frag_info) {+		struct fragment_info *fi = list_entry(lh, struct fragment_info, list);+		list_del(lh);+		kfree(fi);+	}+	list_del(old);+	kfree_skb(pd->skb);+	kfree(pd);+}+ static inline int is_datagram_complete(struct list_head *lh, int dg_size) { 	struct partial_datagram *pd = list_entry(lh, struct partial_datagram, list);diff -Naur --exclude=CVS --exclude='*.o' --exclude='*.a' --exclude='*.so' --exclude='*.elf' --exclude=System.map --exclude=Makefile.d --exclude='*log' --exclude='*log2' --exclude='*~' --exclude='.*~' --exclude='.#*' --exclude='*.bak' --exclude='*.orig' --exclude='*.rej' --exclude='core.[0-9]*' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=vmlinux --exclude=vmlinux.bin --exclude=yamon-02.06-SIGMADESIGNS-01_el.bin linuxmips-2.4.30.ref/drivers/ieee1394/pcilynx.c linuxmips-2.4.30/drivers/ieee1394/pcilynx.c--- linuxmips-2.4.30.ref/drivers/ieee1394/pcilynx.c	2004-08-14 11:38:50.000000000 -0700+++ linuxmips-2.4.30/drivers/ieee1394/pcilynx.c	2005-03-29 18:36:46.000000000 -0800@@ -1065,15 +1065,12 @@         ssize_t retval;         void *membase; -	if (!count)-		return 0;-	if (off < 0)-		return -EINVAL;-	if (off > PCILYNX_MAX_MEMORY)+        if ((off + count) > PCILYNX_MAX_MEMORY+1) {+                count = PCILYNX_MAX_MEMORY+1 - off;+        }+        if (count == 0 || off > PCILYNX_MAX_MEMORY) {                 return -ENOSPC;--	if (count > PCILYNX_MAX_MEMORY + 1 - off)-		count = PCILYNX_MAX_MEMORY + 1 - off;+        }          switch (md->type) {         case rom:@@ -1094,7 +1091,6 @@          if (count < mem_mindma) {                 memcpy_fromio(md->lynx->mem_dma_buffer, membase+off, count);-		off += count;                 goto out;         } @@ -1125,7 +1121,6 @@         if (bcount) {                 memcpy_fromio(md->lynx->mem_dma_buffer + count - bcount,                               membase+off, bcount);-		off += bcount;         }   out:@@ -1133,7 +1128,7 @@         up(&md->lynx->mem_dma_mutex);  	if (retval) return -EFAULT;-        *offset = off;+        *offset += count;         return count; } @@ -1142,36 +1137,32 @@                          loff_t *offset) {         struct memdata *md = (struct memdata *)file->private_data;-	loff_t off = *offset;--	if (!count)-		return 0;-	if (off < 0)-		return -EINVAL;-	if (off > PCILYNX_MAX_MEMORY)-		return -ENOSPC; -	if (count > PCILYNX_MAX_MEMORY + 1 - off)-		count = PCILYNX_MAX_MEMORY + 1 - off;+        if (((*offset) + count) > PCILYNX_MAX_MEMORY+1) {+                count = PCILYNX_MAX_MEMORY+1 - *offset;+        }+        if (count == 0 || *offset > PCILYNX_MAX_MEMORY) {+                return -ENOSPC;+        }          /* FIXME: dereferencing pointers to PCI mem doesn't work everywhere */         switch (md->type) {         case aux:-		if (copy_from_user(md->lynx->aux_port+off, buffer, count))+		if (copy_from_user(md->lynx->aux_port+(*offset), buffer, count)) 			return -EFAULT;                 break;         case ram:-		if (copy_from_user(md->lynx->local_ram+off, buffer, count))+		if (copy_from_user(md->lynx->local_ram+(*offset), buffer, count)) 			return -EFAULT;                 break;         case rom:                 /* the ROM may be writeable */-		if (copy_from_user(md->lynx->local_rom+off, buffer, count))+		if (copy_from_user(md->lynx->local_rom+(*offset), buffer, count)) 			return -EFAULT;                 break;         } -	*offset = off + count;+        file->f_pos += count;         return count; } #endif /* CONFIG_IEEE1394_PCILYNX_PORTS */diff -Naur --exclude=CVS --exclude='*.o' --exclude='*.a' --exclude='*.so' --exclude='*.elf' --exclude=System.map --exclude=Makefile.d --exclude='*log' --exclude='*log2' --exclude='*~' --exclude='.*~' --exclude='.#*' --exclude='*.bak' --exclude='*.orig' --exclude='*.rej' --exclude='core.[0-9]*' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=vmlinux --exclude=vmlinux.bin --exclude=yamon-02.06-SIGMADESIGNS-01_el.bin linuxmips-2.4.30.ref/drivers/ieee1394/sbp2.c linuxmips-2.4.30/drivers/ieee1394/sbp2.c--- linuxmips-2.4.30.ref/drivers/ieee1394/sbp2.c	2004-08-14 11:38:50.000000000 -0700+++ linuxmips-2.4.30/drivers/ieee1394/sbp2.c	2005-03-29 18:36:46.000000000 -0800@@ -89,7 +89,7 @@ #include "sbp2.h"  static char version[] __devinitdata =-	"$Rev: 1074 $ Ben Collins <bcollins@debian.org>";+	"$Rev: 1227 $ Ben Collins <bcollins@debian.org>";  /*  * Module load parameter definitionsdiff -Naur --exclude=CVS --exclude='*.o' --exclude='*.a' --exclude='*.so' --exclude='*.elf' --exclude=System.map --exclude=Makefile.d --exclude='*log' --exclude='*log2' --exclude='*~' --exclude='.*~' --exclude='.#*' --exclude='*.bak' --exclude='*.orig' --exclude='*.rej' --exclude='core.[0-9]*' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=.depend --exclude='.*.o.flags' --exclude='*.gz' --exclude=vmlinux --exclude=vmlinux.bin --exclude=yamon-02.06-SIGMADESIGNS-01_el.bin linuxmips-2.4.30.ref/README.1017.ieee1394.patch linuxmips-2.4.30/README.1017.ieee1394.patch--- linuxmips-2.4.30.ref/README.1017.ieee1394.patch	1969-12-31 16:00:00.000000000 -0800+++ linuxmips-2.4.30/README.1017.ieee1394.patch	2005-03-29 18:37:16.000000000 -0800@@ -0,0 +1,18 @@+Feature:+--------+IEEE1394 stack update.++Prerequisite patch numbers:+---------------------------+none++Primary author:+---------------+YH Lin++Related to which chip version SMP863x x=?+-----------------------------------------+all++(linux patches) which CONFIG_... are provided:+----------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -