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]
Message-ID: <202103200303.KPs7DHV2-lkp@intel.com>
Date:   Sat, 20 Mar 2021 03:10:09 +0800
From:   kernel test robot <lkp@...el.com>
To:     Al Viro <viro@...iv.linux.org.uk>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: arch/alpha/lib/csum_partial_copy.c:328:1: error: no previous
 prototype for 'csum_and_copy_from_user'

Hi Al,

FYI, the error/warning still remains.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   8b12a62a4e3ed4ae99c715034f557eb391d6b196
commit: 808b49da54e640cba5c5c92dee658018a529226b alpha: turn csum_partial_copy_from_user() into csum_and_copy_from_user()
date:   10 months ago
config: alpha-defconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=808b49da54e640cba5c5c92dee658018a529226b
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 808b49da54e640cba5c5c92dee658018a529226b
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

All errors (new ones prefixed by >>):

>> arch/alpha/lib/csum_partial_copy.c:328:1: error: no previous prototype for 'csum_and_copy_from_user' [-Werror=missing-prototypes]
     328 | csum_and_copy_from_user(const void __user *src, void *dst, int len,
         | ^~~~~~~~~~~~~~~~~~~~~~~
   arch/alpha/lib/csum_partial_copy.c:375:1: error: no previous prototype for 'csum_partial_copy_nocheck' [-Werror=missing-prototypes]
     375 | csum_partial_copy_nocheck(const void *src, void *dst, int len, __wsum sum)
         | ^~~~~~~~~~~~~~~~~~~~~~~~~
   cc1: all warnings being treated as errors


vim +/csum_and_copy_from_user +328 arch/alpha/lib/csum_partial_copy.c

   326	
   327	__wsum
 > 328	csum_and_copy_from_user(const void __user *src, void *dst, int len,
   329				       __wsum sum, int *errp)
   330	{
   331		unsigned long checksum = (__force u32) sum;
   332		unsigned long soff = 7 & (unsigned long) src;
   333		unsigned long doff = 7 & (unsigned long) dst;
   334	
   335		if (len) {
   336			if (!access_ok(src, len)) {
   337				if (errp) *errp = -EFAULT;
   338				memset(dst, 0, len);
   339				return sum;
   340			}
   341			if (!doff) {
   342				if (!soff)
   343					checksum = csum_partial_cfu_aligned(
   344						(const unsigned long __user *) src,
   345						(unsigned long *) dst,
   346						len-8, checksum, errp);
   347				else
   348					checksum = csum_partial_cfu_dest_aligned(
   349						(const unsigned long __user *) src,
   350						(unsigned long *) dst,
   351						soff, len-8, checksum, errp);
   352			} else {
   353				unsigned long partial_dest;
   354				ldq_u(partial_dest, dst);
   355				if (!soff)
   356					checksum = csum_partial_cfu_src_aligned(
   357						(const unsigned long __user *) src,
   358						(unsigned long *) dst,
   359						doff, len-8, checksum,
   360						partial_dest, errp);
   361				else
   362					checksum = csum_partial_cfu_unaligned(
   363						(const unsigned long __user *) src,
   364						(unsigned long *) dst,
   365						soff, doff, len-8, checksum,
   366						partial_dest, errp);
   367			}
   368			checksum = from64to16 (checksum);
   369		}
   370		return (__force __wsum)checksum;
   371	}
   372	EXPORT_SYMBOL(csum_and_copy_from_user);
   373	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (13763 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ