On 25.08.2021 21:24, Kari Argillander wrote: > Use fiemap_prep() to check valid flags. It also shrink request scope > (@len) to what the fs can actually handle. > > This address following Smatch static checker warning: > fs/ntfs3/frecord.c:1894 ni_fiemap() > warn: potential integer overflow from user 'vbo + len' > > Because fiemap_prep() shrinks @len this cannot happened anymore. > > Reported-by Dan Carpenter <dan.carpenter@xxxxxxxxxx> > Link: lore.kernel.org/ntfs3/20210825080440.GA17407@kili/ > > Fixes: 4342306f0f0d ("fs/ntfs3: Add file operations and implementation") > Signed-off-by: Kari Argillander <kari.argillander@xxxxxxxxx> > --- > fs/ntfs3/file.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/fs/ntfs3/file.c b/fs/ntfs3/file.c > index 59344985c2e8..cb736701f2cc 100644 > --- a/fs/ntfs3/file.c > +++ b/fs/ntfs3/file.c > @@ -1210,8 +1210,9 @@ int ntfs_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo, > int err; > struct ntfs_inode *ni = ntfs_i(inode); > > - if (fieinfo->fi_flags & FIEMAP_FLAG_XATTR) > - return -EOPNOTSUPP; > + err = fiemap_prep(inode, fieinfo, start, &len, ~FIEMAP_FLAG_XATTR); > + if (err) > + return err; > > ni_lock(ni); > > Hello, Dan, Kari! Thanks for finding and fixing this issue. Applied patch.