Re: [PATCH v8 06/10] iomap: fix iomap_dio_zero() for fs bs > system page size

From: Pankaj Raghav (Samsung)
Date: Tue Jul 02 2024 - 13:10:36 EST


On Tue, Jul 02, 2024 at 05:51:54PM +0100, Matthew Wilcox wrote:
> On Tue, Jul 02, 2024 at 04:13:29PM +0000, Pankaj Raghav (Samsung) wrote:
> > On Tue, Jul 02, 2024 at 05:42:16PM +0200, Christoph Hellwig wrote:
> > > On Tue, Jul 02, 2024 at 02:01:23PM +0000, Pankaj Raghav (Samsung) wrote:
> > > +static int iomap_dio_zero(const struct iomap_iter *iter, struct iomap_dio *dio,
> > > > loff_t pos, unsigned len)
> > > > {
> > > > struct inode *inode = file_inode(dio->iocb->ki_filp);
> > > > struct bio *bio;
> > > >
> > > > + if (!len)
> > > > + return 0;
> > > > /*
> > > > * Max block size supported is 64k
> > > > */
> > > > - WARN_ON_ONCE(len > ZERO_PAGE_64K_SIZE);
> > > > + if (len > ZERO_PAGE_64K_SIZE)
> > > > + return -EINVAL;
> > >
> > > The should probably be both WARN_ON_ONCE in addition to the error
> > > return (and ZERO_PAGE_64K_SIZE really needs to go away..)
> >
> > Yes, I will rename it to ZERO_PAGE_SZ_64K as you suggested.
>
> No. It needs a symbolic name that doesn't include the actual size.
> Maybe ZERO_PAGE_IO_MAX. Christoph suggested using SZ_64K to define
> it, not to include it in the name.

Initially I kept the name as ZERO_FSB_PAGE as it is used to do sub-block
zeroing. But I know John from Oracle is already working on using it for
rt extent zeroing. So I will just go with ZERO_PAGE_IO_MAX for now.
Understood about the SZ_64K part. Thanks for the clarification.