Messages in this thread |  | | From | Geert Uytterhoeven <> | Date | Thu, 19 Dec 2019 11:25:11 +0100 | Subject | Re: [RFC PATCH v5] f2fs: support data compression |
| |
Hi,
On Mon, Dec 16, 2019 at 7:29 AM Chao Yu <yuchao0@huawei.com> wrote: > > This patch tries to support compression in f2fs.
> --- a/fs/f2fs/file.c > +++ b/fs/f2fs/file.c
> @@ -667,6 +719,24 @@ int f2fs_truncate_blocks(struct inode *inode, u64 from, bool lock) > return err; > } > > +int f2fs_truncate_blocks(struct inode *inode, u64 from, bool lock) > +{ > + u64 free_from = from; > + > + /* > + * for compressed file, only support cluster size > + * aligned truncation. > + */ > + if (f2fs_compressed_file(inode)) { > + size_t cluster_size = PAGE_SIZE << > + F2FS_I(inode)->i_log_cluster_size; > + > + free_from = roundup(from, cluster_size);
This is a 64-by-32 or 64-by-64 division, causing a link failure on 32-bit platforms:
fs/f2fs/file.o: In function `f2fs_truncate_blocks': file.c:(.text+0x1db4): undefined reference to `__udivdi3'
Please use DIV_ROUND_UP_ULL() instead.
Reported-by: <noreply@ellerman.id.au>
> + } > + > + return do_truncate_blocks(inode, free_from, lock); > +}
Gr{oetje,eeting}s,
Geert
-- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
|  |