[jlayton:ceph-sparse-read 14/15] net/ceph/osd_client.c:5848:28: sparse: sparse: cast to restricted __le64

From: kernel test robot
Date: Sat Mar 19 2022 - 12:51:40 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux.git ceph-sparse-read
head: 24b6ede729dbd3c2675c762b74efb51eaa450576
commit: 26663dc52a5f3f90709beab073943d5d542c14fe [14/15] libceph: add sparse read support to OSD client
config: powerpc64-randconfig-s031-20220319 (https://download.01.org/0day-ci/archive/20220320/202203200056.t5z11wVh-lkp@xxxxxxxxx/config)
compiler: powerpc64-linux-gcc (GCC) 11.2.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-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux.git/commit/?id=26663dc52a5f3f90709beab073943d5d542c14fe
git remote add jlayton https://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux.git
git fetch --no-tags jlayton ceph-sparse-read
git checkout 26663dc52a5f3f90709beab073943d5d542c14fe
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=powerpc SHELL=/bin/bash net/ceph/

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


sparse warnings: (new ones prefixed by >>)
>> net/ceph/osd_client.c:5848:28: sparse: sparse: cast to restricted __le64
>> net/ceph/osd_client.c:5848:28: sparse: sparse: cast from restricted __le32
net/ceph/osd_client.c:5849:28: sparse: sparse: cast to restricted __le64
net/ceph/osd_client.c:5849:28: sparse: sparse: cast from restricted __le32

vim +5848 net/ceph/osd_client.c

5839
5840 #ifdef __BIG_ENDIAN
5841 static inline void convert_extent_map(struct ceph_sparse_read *sr)
5842 {
5843 int i;
5844
5845 for (i = 0; i < sr->sr_count; i++) {
5846 struct ceph_sparse_extent *ext = &sr->sr_extent[i];
5847
> 5848 ext->off = le64_to_cpu((__force __le32)ext->off);
5849 ext->len = le64_to_cpu((__force __le32)ext->len);
5850 }
5851 }
5852 #else
5853 static inline void convert_extent_map(struct ceph_sparse_read *sr)
5854 {
5855 }
5856 #endif
5857

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