lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Tue, 9 May 2017 13:14:49 +0800
From:   kbuild test robot <fengguang.wu@...el.com>
To:     Al Viro <viro@...iv.linux.org.uk>
Cc:     kbuild-all@...org, linux-kernel@...r.kernel.org
Subject: sound/core/hwdep_compat.c:43:31: sparse: incorrect type in argument
 2 (different address spaces)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   bf5f89463f5b3109a72ed13ca62b57e90213387d
commit: beba3a20bf90ce1b93e24592c3ebf0d0bb581bbe x86: switch to RAW_COPY_USER
date:   6 weeks ago
reproduce:
        # apt-get install sparse
        git checkout beba3a20bf90ce1b93e24592c3ebf0d0bb581bbe
        make ARCH=x86_64 allmodconfig
        make C=1 CF=-D__CHECK_ENDIAN__


sparse warnings: (new ones prefixed by >>)

   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
>> sound/core/hwdep_compat.c:43:31: sparse: incorrect type in argument 2 (different address spaces)
   sound/core/hwdep_compat.c:43:31:    expected void const *from
   sound/core/hwdep_compat.c:43:31:    got struct snd_hwdep_dsp_image32 [noderef] <asn:1>*src
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
--
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   sound/core/control.c:1299:17: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control.c:1299:26: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control.c:1300:17: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control.c:1300:26: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control.c:1306:48: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control.c:1310:40: sparse: restricted snd_ctl_elem_type_t degrades to integer
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
>> sound/core/control_compat.c:45:32: sparse: incorrect type in argument 2 (different address spaces)
   sound/core/control_compat.c:45:32:    expected void const *from
   sound/core/control_compat.c:45:32:    got struct snd_ctl_elem_list32 [noderef] <asn:1>*data32
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
>> sound/core/control_compat.c:55:34: sparse: incorrect type in argument 2 (different address spaces)
   sound/core/control_compat.c:55:34:    expected void const *from
   sound/core/control_compat.c:55:34:    got struct snd_ctl_elem_list [noderef] <asn:1>*[assigned] data
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   sound/core/control_compat.c:210:21: sparse: incorrect type in assignment (different base types)
   sound/core/control_compat.c:210:21:    expected int [signed] [assigned] err
   sound/core/control_compat.c:210:21:    got restricted snd_ctl_elem_type_t [usertype] type
   sound/core/control_compat.c:220:14: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control_compat.c:222:14: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control_compat.c:224:14: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control_compat.c:226:14: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control_compat.c:254:21: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control_compat.c:255:21: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control_compat.c:286:21: sparse: restricted snd_ctl_elem_type_t degrades to integer
   sound/core/control_compat.c:287:21: sparse: restricted snd_ctl_elem_type_t degrades to integer
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   sound/core/control_compat.c:404:13: sparse: incorrect type in assignment (different base types)
   sound/core/control_compat.c:404:13:    expected restricted snd_ctl_elem_type_t [usertype] type
   sound/core/control_compat.c:404:13:    got signed int [signed] [explicitly-signed] <noident>
--
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   net/socket.c:1871:13: sparse: incorrect type in assignment (different address spaces)
   net/socket.c:1871:13:    expected void *msg_control
   net/socket.c:1871:13:    got void [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
>> net/socket.c:2637:32: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2637:32:    expected void const *from
   net/socket.c:2637:32:    got struct compat_ifreq [noderef] <asn:1>*uifr32
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
>> net/socket.c:2644:34: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2644:34:    expected void const *from
   net/socket.c:2644:34:    got struct ifreq [noderef] <asn:1>*[assigned] uifr
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
>> net/socket.c:2677:47: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2677:47:    expected void const *from
   net/socket.c:2677:47:    got struct compat_ifreq [noderef] <asn:1>*[assigned] ifr32
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   net/socket.c:2698:41: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2698:41:    expected void const *from
   net/socket.c:2698:41:    got struct ifreq [noderef] <asn:1>*[assigned] ifr
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
>> net/socket.c:2769:43: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2769:43:    expected void const *from
   net/socket.c:2769:43:    got char [noderef] <asn:1>( *<noident> )[16]
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
>> net/socket.c:2790:41: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2790:41:    expected void const *from
   net/socket.c:2790:41:    got struct compat_ethtool_rxnfc [noderef] <asn:1>*[assigned] compat_rxnfc
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
>> net/socket.c:2794:35: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2794:35:    expected void const *from
   net/socket.c:2794:35:    got unsigned long long [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
>> net/socket.c:2797:53: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2797:53:    expected void const *from
   net/socket.c:2797:53:    got unsigned int [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
>> net/socket.c:2807:48: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2807:48:    expected void const *from
   net/socket.c:2807:48:    got struct ethtool_rxnfc [noderef] <asn:1>*[assigned] rxnfc
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   net/socket.c:2811:35: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2811:35:    expected void const *from
   net/socket.c:2811:35:    got unsigned long long [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   net/socket.c:2814:60: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2814:60:    expected void const *from
   net/socket.c:2814:60:    got unsigned int [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   net/socket.c:2832:59: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2832:59:    expected void const *from
   net/socket.c:2832:59:    got unsigned int [noderef] <asn:1>*
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   net/socket.c:2848:32: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2848:32:    expected void const *from
   net/socket.c:2848:32:    got struct compat_ifreq [noderef] <asn:1>*uifr32
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
   net/socket.c:2923:32: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2923:32:    expected void const *from
   net/socket.c:2923:32:    got struct compat_ifreq [noderef] <asn:1>*uifr32
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   net/socket.c:2944:50: sparse: incorrect type in argument 2 (different address spaces)
   net/socket.c:2944:50:    expected void const *from
   net/socket.c:2944:50:    got struct ifreq [noderef] <asn:1>*[assigned] uifr
   include/linux/uaccess.h:194:47: sparse: incorrect type in argument 1 (different address spaces)
   include/linux/uaccess.h:194:47:    expected void const volatile [noderef] <asn:1>*<noident>
   include/linux/uaccess.h:194:47:    got void const *from
   include/linux/uaccess.h:195:42: sparse: incorrect type in argument 2 (different address spaces)
   include/linux/uaccess.h:195:42:    expected void const [noderef] <asn:1>*src
   include/linux/uaccess.h:195:42:    got void const *from
   include/linux/uaccess.h:168:18: sparse: incorrect type in argument 1 (different modifiers)
   include/linux/uaccess.h:168:18:    expected void *<noident>
   include/linux/uaccess.h:168:18:    got void const *from
--
>> lib/usercopy.c:21:13: sparse: incorrect type in argument 1 (different address spaces)
   lib/usercopy.c:21:13:    expected void const volatile [noderef] <asn:1>*<noident>
   lib/usercopy.c:21:13:    got void *to
>> lib/usercopy.c:22:38: sparse: incorrect type in argument 1 (different address spaces)
   lib/usercopy.c:22:38:    expected void [noderef] <asn:1>*dst
   lib/usercopy.c:22:38:    got void *to
>> lib/usercopy.c:22:42: sparse: incorrect type in argument 2 (different address spaces)
   lib/usercopy.c:22:42:    expected void const *src
   lib/usercopy.c:22:42:    got void const [noderef] <asn:1>*from
   lib/usercopy.c:19:15: sparse: symbol '_copy_to_user' redeclared with different type (originally declared at include/linux/uaccess.h:135) - incompatible argument 1 (different address spaces)

vim +43 sound/core/hwdep_compat.c

^1da177e Linus Torvalds 2005-04-16  27  	unsigned char name[64];
^1da177e Linus Torvalds 2005-04-16  28  	u32 image;	/* pointer */
^1da177e Linus Torvalds 2005-04-16  29  	u32 length;
^1da177e Linus Torvalds 2005-04-16  30  	u32 driver_data;
^1da177e Linus Torvalds 2005-04-16  31  } /* don't set packed attribute here */;
^1da177e Linus Torvalds 2005-04-16  32  
d9a98de2 Takashi Iwai   2005-11-17  33  static int snd_hwdep_dsp_load_compat(struct snd_hwdep *hw,
d9a98de2 Takashi Iwai   2005-11-17  34  				     struct snd_hwdep_dsp_image32 __user *src)
^1da177e Linus Torvalds 2005-04-16  35  {
cb04e6b6 Al Viro        2006-10-10  36  	struct snd_hwdep_dsp_image __user *dst;
^1da177e Linus Torvalds 2005-04-16  37  	compat_caddr_t ptr;
^1da177e Linus Torvalds 2005-04-16  38  	u32 val;
^1da177e Linus Torvalds 2005-04-16  39  
^1da177e Linus Torvalds 2005-04-16  40  	dst = compat_alloc_user_space(sizeof(*dst));
^1da177e Linus Torvalds 2005-04-16  41  
^1da177e Linus Torvalds 2005-04-16  42  	/* index and name */
^1da177e Linus Torvalds 2005-04-16 @43  	if (copy_in_user(dst, src, 4 + 64))
^1da177e Linus Torvalds 2005-04-16  44  		return -EFAULT;
^1da177e Linus Torvalds 2005-04-16  45  	if (get_user(ptr, &src->image) ||
^1da177e Linus Torvalds 2005-04-16  46  	    put_user(compat_ptr(ptr), &dst->image))
^1da177e Linus Torvalds 2005-04-16  47  		return -EFAULT;
^1da177e Linus Torvalds 2005-04-16  48  	if (get_user(val, &src->length) ||
^1da177e Linus Torvalds 2005-04-16  49  	    put_user(val, &dst->length))
^1da177e Linus Torvalds 2005-04-16  50  		return -EFAULT;
^1da177e Linus Torvalds 2005-04-16  51  	if (get_user(val, &src->driver_data) ||

:::::: The code at line 43 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <torvalds@...970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@...970.osdl.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ