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-randconfig-r013-20210319 (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 <l...@intel.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-...@lists.01.org

Attachment: .config.gz
Description: application/gzip

Reply via email to