Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cb389b9c authored by Dan Williams's avatar Dan Williams
Browse files

dax: drop size parameter to ->direct_access()



None of the implementations currently use it.  The common
bdev_direct_access() entry point handles all the size checks before
calling ->direct_access().

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
parent 4a9bf88a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -141,7 +141,7 @@ axon_ram_make_request(struct request_queue *queue, struct bio *bio)
 */
static long
axon_ram_direct_access(struct block_device *device, sector_t sector,
		       void __pmem **kaddr, unsigned long *pfn, long size)
		       void __pmem **kaddr, unsigned long *pfn)
{
	struct axon_ram_bank *bank = device->bd_disk->private_data;
	loff_t offset = (loff_t)sector << AXON_RAM_SECTOR_SHIFT;
+1 −5
Original line number Diff line number Diff line
@@ -371,7 +371,7 @@ static int brd_rw_page(struct block_device *bdev, sector_t sector,

#ifdef CONFIG_BLK_DEV_RAM_DAX
static long brd_direct_access(struct block_device *bdev, sector_t sector,
			void __pmem **kaddr, unsigned long *pfn, long size)
			void __pmem **kaddr, unsigned long *pfn)
{
	struct brd_device *brd = bdev->bd_disk->private_data;
	struct page *page;
@@ -384,10 +384,6 @@ static long brd_direct_access(struct block_device *bdev, sector_t sector,
	*kaddr = (void __pmem *)page_address(page);
	*pfn = page_to_pfn(page);

	/*
	 * TODO: If size > PAGE_SIZE, we could look to see if the next page in
	 * the file happens to be mapped to the next page of physical RAM.
	 */
	return PAGE_SIZE;
}
#else
+1 −1
Original line number Diff line number Diff line
@@ -92,7 +92,7 @@ static int pmem_rw_page(struct block_device *bdev, sector_t sector,
}

static long pmem_direct_access(struct block_device *bdev, sector_t sector,
		      void __pmem **kaddr, unsigned long *pfn, long size)
		      void __pmem **kaddr, unsigned long *pfn)
{
	struct pmem_device *pmem = bdev->bd_disk->private_data;
	size_t offset = sector << 9;
+2 −2
Original line number Diff line number Diff line
@@ -29,7 +29,7 @@ static int dcssblk_open(struct block_device *bdev, fmode_t mode);
static void dcssblk_release(struct gendisk *disk, fmode_t mode);
static void dcssblk_make_request(struct request_queue *q, struct bio *bio);
static long dcssblk_direct_access(struct block_device *bdev, sector_t secnum,
			 void __pmem **kaddr, unsigned long *pfn, long size);
			 void __pmem **kaddr, unsigned long *pfn);

static char dcssblk_segments[DCSSBLK_PARM_LEN] = "\0";

@@ -879,7 +879,7 @@ dcssblk_make_request(struct request_queue *q, struct bio *bio)

static long
dcssblk_direct_access (struct block_device *bdev, sector_t secnum,
			void __pmem **kaddr, unsigned long *pfn, long size)
			void __pmem **kaddr, unsigned long *pfn)
{
	struct dcssblk_dev_info *dev_info;
	unsigned long offset, dev_sz;
+1 −1
Original line number Diff line number Diff line
@@ -462,7 +462,7 @@ long bdev_direct_access(struct block_device *bdev, sector_t sector,
	sector += get_start_sect(bdev);
	if (sector % (PAGE_SIZE / 512))
		return -EINVAL;
	avail = ops->direct_access(bdev, sector, addr, pfn, size);
	avail = ops->direct_access(bdev, sector, addr, pfn);
	if (!avail)
		return -ERANGE;
	return min(avail, size);
Loading