Messages in this thread | | | From | Alexander Aring <> | Date | Mon, 14 Feb 2022 07:47:56 -0500 | Subject | Re: fs/dlm/midcomms.c:913:22: sparse: sparse: restricted __le32 degrades to integer |
| |
Hi,
On Mon, Feb 14, 2022 at 12:33 AM Al Viro <viro@zeniv.linux.org.uk> wrote: > > On Sat, Jan 22, 2022 at 01:28:20PM -0500, Alexander Aring wrote: > > Hi, > > > > On Fri, Jan 21, 2022 at 9:45 PM kernel test robot <lkp@intel.com> wrote: > > > > > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > > > head: 9b57f458985742bd1c585f4c7f36d04634ce1143 > > > commit: 658bd576f95ed597e519cdadf1c86ac87c17aea5 fs: dlm: move version conversion to compile time > > > date: 3 months ago > > > config: x86_64-rhel-8.3-kselftests (https://download.01.org/0day-ci/archive/20220122/202201221028.YKA8kSdm-lkp@intel.com/config) > > > compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 > > > reproduce: > > > # apt-get install sparse > > > # sparse version: v0.6.4-dirty > > > # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=658bd576f95ed597e519cdadf1c86ac87c17aea5 > > > git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > > > git fetch --no-tags linus master > > > git checkout 658bd576f95ed597e519cdadf1c86ac87c17aea5 > > > # save the config file to linux build tree > > > mkdir build_dir > > > make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash > > > > > > If you fix the issue, kindly add following tag as appropriate > > > > I have it on my list but it isn't easy to make sparse happy here... > > this is the second time the robot reported this issue. Is there a way > > to turn the robot off in that case? > > > > Maybe some human who reads that knows the answer? > > Frankly, these "convert in place" functions (dlm_message_in(), etc.) are > asking for trouble. IOW, it's a genuinely fishy code. > > Saner approach is to keep them in little-endian through the entire thing, > but it's quite a bit of massage.
Yes, I agree. That is also what "/net" does, "mark it stored" the way as the wire handles it.
- Alex
| |