On Sun, Mar 17, 2019 at 08:35:21AM +0800, Liu Bo wrote: > While doing memremap from pci_dev's system bus address to kernel virtual > address, we assign a wrong value to the %end of pgmap.res, which ends up > with a wrong resource size in the process of memremap, and that further > prevent the second virtiofs pci device from being probed successfully. > > Signed-off-by: Liu Bo <bo.liu@xxxxxxxxxxxxxxxxx> Hi Liu Bo, Thanks for the fix. This seems right. I will fix it in my internal branch. These patches are not upstream yet. Will fold this into existing patch for the next posting. Thanks Vivek > --- > fs/fuse/virtio_fs.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/fuse/virtio_fs.c b/fs/fuse/virtio_fs.c > index 88b00055589b..7abf2187d85f 100644 > --- a/fs/fuse/virtio_fs.c > +++ b/fs/fuse/virtio_fs.c > @@ -713,7 +713,7 @@ static int virtio_fs_setup_dax(struct virtio_device *vdev, struct virtio_fs *fs) > pgmap->res = (struct resource){ > .name = "virtio-fs dax window", > .start = phys_addr, > - .end = phys_addr + cache_len, > + .end = phys_addr + cache_len - 1, > }; > > fs->window_kaddr = devm_memremap_pages(&pci_dev->dev, pgmap); > -- > 2.20.1.2.gb21ebb6 >