[PATCH] fix "passing argument # of '__memcpy' discards qualifiers from pointer target type" warnings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch fixes the warnings "passing argument 1 of '__memcpy' discards 
qualifiers from pointer target type" and "passing argument 2 of '__memcpy' 
discards qualifiers from pointer target type" when compiling some files.

I don't really know if this is the best way but at least I don't get more 
warnings.


diff -ruN linux-2.6.24-rc1.orig/fs/cifs/dir.c linux-2.6.24-rc1/fs/cifs/dir.c
--- linux-2.6.24-rc1.orig/fs/cifs/dir.c	2007-10-24 16:06:42.000000000 +0200
+++ linux-2.6.24-rc1/fs/cifs/dir.c	2007-10-24 15:49:44.000000000 +0200
@@ -585,6 +585,7 @@
 			   struct qstr *b)
 {
 	struct nls_table *codepage = CIFS_SB(dentry->d_inode->i_sb)->local_nls;
+	unsigned char *dstname = (unsigned char *)a->name;
 
 	if ((a->len == b->len) &&
 	    (nls_strnicmp(codepage, a->name, b->name, a->len) == 0)) {
@@ -593,7 +594,7 @@
 		 * case take precedence.  If a is not a negative dentry, this
 		 * should have no side effects
 		 */
-		memcpy((unsigned char *)a->name, b->name, a->len);
+		memcpy(dstname, b->name, a->len);
 		return 0;
 	}
 	return 1;
diff -ruN linux-2.6.24-rc1.orig/fs/jfs/namei.c linux-2.6.24-rc1/fs/jfs/namei.c
--- linux-2.6.24-rc1.orig/fs/jfs/namei.c	2007-10-24 16:06:43.000000000 +0200
+++ linux-2.6.24-rc1/fs/jfs/namei.c	2007-10-24 15:40:34.000000000 +0200
@@ -1580,6 +1580,7 @@
 
 static int jfs_ci_compare(struct dentry *dir, struct qstr *a, struct qstr *b)
 {
+	unsigned char *dstname = (unsigned char *)a->name;
 	int i, result = 1;
 
 	if (a->len != b->len)
@@ -1597,7 +1598,7 @@
 	 * dentry, we blindly replace it with b.  This should be harmless if
 	 * a is not a negative dentry.
 	 */
-	memcpy((unsigned char *)a->name, b->name, a->len);
+	memcpy(dstname, b->name, a->len);
 out:
 	return result;
 }
diff -ruN linux-2.6.24-rc1.orig/fs/smbfs/cache.c 
linux-2.6.24-rc1/fs/smbfs/cache.c
--- linux-2.6.24-rc1.orig/fs/smbfs/cache.c	2007-10-09 22:31:38.000000000 +0200
+++ linux-2.6.24-rc1/fs/smbfs/cache.c	2007-10-24 16:01:46.000000000 +0200
@@ -145,9 +145,10 @@
 		if (!newdent)
 			goto end_advance;
 	} else {
+		char *dstname = (char *)newdent->d_name.name;
+
 		hashed = 1;
-		memcpy((char *) newdent->d_name.name, qname->name,
-		       newdent->d_name.len);
+		memcpy(dstname, qname->name, newdent->d_name.len);
 	}
 
 	if (!newdent->d_inode) {
diff -ruN linux-2.6.24-rc1.orig/include/asm-x86/io_32.h 
linux-2.6.24-rc1/include/asm-x86/io_32.h
--- linux-2.6.24-rc1.orig/include/asm-x86/io_32.h	2007-10-24 
16:06:45.000000000 +0200
+++ linux-2.6.24-rc1/include/asm-x86/io_32.h	2007-10-24 15:56:42.000000000 
+0200
@@ -208,7 +208,8 @@
 static inline void
 memcpy_fromio(void *dst, const volatile void __iomem *src, int count)
 {
-	__memcpy(dst, (const void __force *)src, count);
+	const void __force *src1 = (const void __force *)src;
+	__memcpy(dst, src1, count);
 }
 
 static inline void

-- 
	Miguel Botón
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux