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 for Android: free password hash cracker in your pocket
[<prev] [next>] [day] [month] [year] [list]
Date:   Mon, 26 Sep 2022 03:50:24 +0800
From:   kernel test robot <lkp@...el.com>
To:     Christian Brauner <brauner@...nel.org>
Cc:     kbuild-all@...ts.01.org, Ammar Faizi <ammarfaizi2@...weeb.org>,
        GNU/Weeb Mailing List <gwml@...r.gnuweeb.org>,
        linux-kernel@...r.kernel.org
Subject: [ammarfaizi2-block:brauner/linux/fs.acl.rework.v1 13/37]
 fs/cifs/cifssmb.c:3413:33: sparse: sparse: cast to restricted __le16

tree:   https://github.com/ammarfaizi2/linux-block brauner/linux/fs.acl.rework.v1
head:   6d56d354d97c08df55b4c06e1f45903f000b7c7c
commit: 3bf543d5da76d67409b5fd53ae09741bf964fac8 [13/37] cifs: implement set acl method
config: arm64-randconfig-s051-20220925
compiler: aarch64-linux-gcc (GCC) 12.1.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.4-39-gce1a6720-dirty
        # https://github.com/ammarfaizi2/linux-block/commit/3bf543d5da76d67409b5fd53ae09741bf964fac8
        git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
        git fetch --no-tags ammarfaizi2-block brauner/linux/fs.acl.rework.v1
        git checkout 3bf543d5da76d67409b5fd53ae09741bf964fac8
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm64 SHELL=/bin/bash fs/cifs/

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

sparse warnings: (new ones prefixed by >>)
   fs/cifs/cifssmb.c:3229:21: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short e_perm @@     got restricted __le16 [usertype] @@
   fs/cifs/cifssmb.c:3229:21: sparse:     expected unsigned short e_perm
   fs/cifs/cifssmb.c:3229:21: sparse:     got restricted __le16 [usertype]
   fs/cifs/cifssmb.c:3230:21: sparse: sparse: incorrect type in assignment (different base types) @@     expected short e_tag @@     got restricted __le16 [usertype] @@
   fs/cifs/cifssmb.c:3230:21: sparse:     expected short e_tag
   fs/cifs/cifssmb.c:3230:21: sparse:     got restricted __le16 [usertype]
   fs/cifs/cifssmb.c:3234:35: sparse: sparse: incorrect type in argument 2 (different base types) @@     expected unsigned int [usertype] uid @@     got restricted __le32 [usertype] @@
   fs/cifs/cifssmb.c:3234:35: sparse:     expected unsigned int [usertype] uid
   fs/cifs/cifssmb.c:3234:35: sparse:     got restricted __le32 [usertype]
   fs/cifs/cifssmb.c:3238:35: sparse: sparse: incorrect type in argument 2 (different base types) @@     expected unsigned int [usertype] gid @@     got restricted __le32 [usertype] @@
   fs/cifs/cifssmb.c:3238:35: sparse:     expected unsigned int [usertype] gid
   fs/cifs/cifssmb.c:3238:35: sparse:     got restricted __le32 [usertype]
>> fs/cifs/cifssmb.c:3413:33: sparse: sparse: cast to restricted __le16
>> fs/cifs/cifssmb.c:3413:33: sparse: sparse: cast to restricted __le16
>> fs/cifs/cifssmb.c:3413:33: sparse: sparse: cast to restricted __le16
>> fs/cifs/cifssmb.c:3413:33: sparse: sparse: cast to restricted __le16
   fs/cifs/cifssmb.c:3414:33: sparse: sparse: cast to restricted __le16
   fs/cifs/cifssmb.c:3414:33: sparse: sparse: cast to restricted __le16
   fs/cifs/cifssmb.c:3414:33: sparse: sparse: cast to restricted __le16
   fs/cifs/cifssmb.c:3414:33: sparse: sparse: cast to restricted __le16

vim +3413 fs/cifs/cifssmb.c

  3404	
  3405	/**
  3406	 * cifs_init_ace - convert ACL entry from POSIX ACL to cifs format
  3407	 * @cifs_ace: the cifs ACL entry to store into
  3408	 * @local_ace: the POSIX ACL entry to convert
  3409	 */
  3410	static void cifs_init_ace(struct cifs_posix_ace *cifs_ace,
  3411				  const struct posix_acl_entry *local_ace)
  3412	{
> 3413		cifs_ace->cifs_e_perm = le16_to_cpu(local_ace->e_perm);
  3414		cifs_ace->cifs_e_tag =  le16_to_cpu(local_ace->e_tag);
  3415	
  3416		switch (local_ace->e_tag) {
  3417		case ACL_USER:
  3418			cifs_ace->cifs_uid =
  3419				cpu_to_le64(from_kuid(&init_user_ns, local_ace->e_uid));
  3420			break;
  3421		case ACL_GROUP:
  3422			cifs_ace->cifs_uid =
  3423				cpu_to_le64(from_kgid(&init_user_ns, local_ace->e_gid));
  3424			break;
  3425		default:
  3426			cifs_ace->cifs_uid = cpu_to_le64(-1);
  3427		}
  3428	}
  3429	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

View attachment "config" of type "text/plain" (216543 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ