RE: [PATCH 1/3] fsdax: Factor helpers to simplify dax fault code

"[email protected]" <[email protected]>
Newsgroups org.01.lists.linux-nvdimm,dev.linux.lists.nvdimm,org.kernel.vger.linux-btrfs,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-xfs
Message-ID <OSAPR01MB2913CC6A36BFBBCDCFBE2B9BF4759@OSAPR01MB2913.jpnprd01.prod.outlook.com>

> -----Original Message-----
> From: Matthew Wilcox <[email protected]>
> Sent: Wednesday, April 7, 2021 7:14 PM
> To: Ruan, Shiyang/阮 世阳 <[email protected]>
> Cc: [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; Ritesh Harjani <[email protected]>
> Subject: Re: [PATCH 1/3] fsdax: Factor helpers to simplify dax fault code
> 
> On Wed, Apr 07, 2021 at 02:32:05PM +0800, Shiyang Ruan wrote:
> > +static int dax_fault_cow_page(struct vm_fault *vmf, struct iomap *iomap,
> > +		loff_t pos, vm_fault_t *ret)
> > +{
> > +	int error = 0;
> > +	unsigned long vaddr = vmf->address;
> > +	sector_t sector = dax_iomap_sector(iomap, pos);
> > +
> > +	switch (iomap->type) {
> > +	case IOMAP_HOLE:
> > +	case IOMAP_UNWRITTEN:
> > +		clear_user_highpage(vmf->cow_page, vaddr);
> > +		break;
> > +	case IOMAP_MAPPED:
> > +		error = copy_cow_page_dax(iomap->bdev, iomap->dax_dev,
> > +						sector, vmf->cow_page, vaddr);
> > +		break;
> > +	default:
> > +		WARN_ON_ONCE(1);
> > +		error = -EIO;
> > +		break;
> > +	}
> > +
> > +	if (error)
> > +		return error;
> > +
> > +	__SetPageUptodate(vmf->cow_page);
> > +	*ret = finish_fault(vmf);
> > +	if (!*ret)
> > +		*ret = VM_FAULT_DONE_COW;
> > +	return 0;
> > +}
> ...
> 
> > +		error = dax_fault_cow_page(vmf, &iomap, pos, &ret);
> >  		if (error)
> > +			ret = dax_fault_return(error);
> >  		goto finish_iomap;
> 
> This seems unnecessarily complex.  Why not return the vm_fault_t instead of
> returning the errno and then converting it?

Yes, I'll fix it.


--
Thanks,
Ruan Shiyang.
_______________________________________________
Linux-nvdimm mailing list -- [email protected]
To unsubscribe send an email to [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.