pmem.c (0f51c4fa7f60838a87cd45e8ba144dddcd4c066c) | pmem.c (581388209405902b56d055f644b4dd124a206112) |
---|---|
1/* 2 * Persistent Memory Driver 3 * 4 * Copyright (c) 2014-2015, Intel Corporation. 5 * Copyright (c) 2015, Christoph Hellwig <hch@lst.de>. 6 * Copyright (c) 2015, Boaz Harrosh <boaz@plexistor.com>. 7 * 8 * This program is free software; you can redistribute it and/or modify it --- 90 unchanged lines hidden (view full) --- 99 100 return pmem->size - offset; 101} 102 103static const struct block_device_operations pmem_fops = { 104 .owner = THIS_MODULE, 105 .rw_page = pmem_rw_page, 106 .direct_access = pmem_direct_access, | 1/* 2 * Persistent Memory Driver 3 * 4 * Copyright (c) 2014-2015, Intel Corporation. 5 * Copyright (c) 2015, Christoph Hellwig <hch@lst.de>. 6 * Copyright (c) 2015, Boaz Harrosh <boaz@plexistor.com>. 7 * 8 * This program is free software; you can redistribute it and/or modify it --- 90 unchanged lines hidden (view full) --- 99 100 return pmem->size - offset; 101} 102 103static const struct block_device_operations pmem_fops = { 104 .owner = THIS_MODULE, 105 .rw_page = pmem_rw_page, 106 .direct_access = pmem_direct_access, |
107 .revalidate_disk = nvdimm_revalidate_disk, |
|
107}; 108 109static struct pmem_device *pmem_alloc(struct device *dev, 110 struct resource *res, int id) 111{ 112 struct pmem_device *pmem; 113 114 pmem = kzalloc(sizeof(*pmem), GFP_KERNEL); --- 58 unchanged lines hidden (view full) --- 173 disk->queue = pmem->pmem_queue; 174 disk->flags = GENHD_FL_EXT_DEVT; 175 nvdimm_namespace_disk_name(ndns, disk->disk_name); 176 disk->driverfs_dev = &ndns->dev; 177 set_capacity(disk, pmem->size >> 9); 178 pmem->pmem_disk = disk; 179 180 add_disk(disk); | 108}; 109 110static struct pmem_device *pmem_alloc(struct device *dev, 111 struct resource *res, int id) 112{ 113 struct pmem_device *pmem; 114 115 pmem = kzalloc(sizeof(*pmem), GFP_KERNEL); --- 58 unchanged lines hidden (view full) --- 174 disk->queue = pmem->pmem_queue; 175 disk->flags = GENHD_FL_EXT_DEVT; 176 nvdimm_namespace_disk_name(ndns, disk->disk_name); 177 disk->driverfs_dev = &ndns->dev; 178 set_capacity(disk, pmem->size >> 9); 179 pmem->pmem_disk = disk; 180 181 add_disk(disk); |
182 revalidate_disk(disk); |
|
181 182 return 0; 183} 184 185static int pmem_rw_bytes(struct nd_namespace_common *ndns, 186 resource_size_t offset, void *buf, size_t size, int rw) 187{ 188 struct pmem_device *pmem = dev_get_drvdata(ndns->claim); --- 104 unchanged lines hidden --- | 183 184 return 0; 185} 186 187static int pmem_rw_bytes(struct nd_namespace_common *ndns, 188 resource_size_t offset, void *buf, size_t size, int rw) 189{ 190 struct pmem_device *pmem = dev_get_drvdata(ndns->claim); --- 104 unchanged lines hidden --- |