aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/nvdimm/pmem.c
AgeCommit message (Expand)AuthorFilesLines
2024-03-14Merge tag 'mm-stable-2024-03-13-20-04' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-11/+12
2024-02-22nvdimm/pmem: Treat alloc_dax() -EOPNOTSUPP failure as non-fatalMathieu Desnoyers1-10/+12
2024-02-22nvdimm/pmem: fix leak on dax_add_host() failureMathieu Desnoyers1-2/+1
2024-02-19pmem: pass queue_limits to blk_mq_alloc_diskChristoph Hellwig1-4/+6
2024-02-19block: pass a queue_limits argument to blk_alloc_diskChristoph Hellwig1-3/+3
2023-07-19nvdimm: Use kstrtobool() instead of strtobool()Christophe JAILLET1-1/+2
2023-06-26dax: enable dax fault handler to report VM_FAULT_HWPOISONJane Chu1-1/+1
2023-02-02block: remove ->rw_pageChristoph Hellwig1-23/+1
2022-09-24Merge branch 'for-6.0/dax' into libnvdimm-fixesDan Williams1-3/+20
2022-08-05Merge tag 'mm-stable-2022-08-03' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-0/+17
2022-07-17pagemap,pmem: introduce ->memory_failure()Shiyang Ruan1-0/+17
2022-07-14block: Change the type of the last .rw_page() argumentBart Van Assche1-1/+1
2022-07-12pmem: fix a name collisionJane Chu1-3/+3
2022-06-28block: remove blk_cleanup_diskChristoph Hellwig1-2/+2
2022-05-27Merge tag 'cxl-for-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl...Linus Torvalds1-1/+1
2022-05-16pmem: implement pmem_recovery_write()Jane Chu1-8/+79
2022-05-16pmem: refactor pmem_clear_poison()Jane Chu1-25/+48
2022-05-16dax: add .recovery_write dax_operationJane Chu1-0/+7
2022-05-16dax: introduce DAX_RECOVERY_WRITE dax access modeJane Chu1-3/+5
2022-05-16mce: fix set_mce_nospec to always unmap the whole pageJane Chu1-23/+7
2022-04-28nvdimm: Drop nd_device_lock()Dan Williams1-1/+1
2021-12-18dax: remove the copy_from_iter and copy_to_iter methodsChristoph Hellwig1-18/+2
2021-12-18dax: remove the DAXDEV_F_SYNC flagChristoph Hellwig1-4/+3
2021-12-18uio: remove copy_from_iter_flushcache() and copy_mc_to_iter()Christoph Hellwig1-3/+1
2021-12-04dax: remove dax_capableChristoph Hellwig1-1/+0
2021-12-04dax: simplify the dax_device <-> gendisk associationChristoph Hellwig1-2/+8
2021-11-10Merge tag 'libnvdimm-for-5.16' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-0/+43
2021-11-09Merge tag 'for-5.16/drivers-2021-11-09' of git://git.kernel.dk/linux-blockLinus Torvalds1-5/+16
2021-11-04nvdimm/pmem: use add_disk() error handlingLuis Chamberlain1-1/+7
2021-11-04nvdimm/pmem: cleanup the disk if pmem_release_disk() is yet assignedLuis Chamberlain1-4/+9
2021-11-01Merge tag 'for-5.16/block-2021-10-29' of git://git.kernel.dk/linux-blockLinus Torvalds1-2/+1
2021-10-25nvdimm/pmem: stop using q_usage_count as external pgmap refcountChristoph Hellwig1-31/+2
2021-10-18block: switch polling to be bio basedChristoph Hellwig1-2/+1
2021-09-27nvdimm/pmem: fix creating the dax groupChristoph Hellwig1-4/+1
2021-09-27nvdimm/pmem: move dax_attribute_group from dax to pmemChristoph Hellwig1-0/+43
2021-08-24libnvdimm/pmem: Fix crash triggered when I/O in-flight during unbindsumiyawang1-2/+2
2021-06-09libnvdimm/pmem: Fix blk_cleanup_disk() usageDan Williams1-3/+3
2021-06-01nvme-multipath: convert to blk_alloc_disk/blk_cleanup_diskChristoph Hellwig1-1/+0
2021-06-01nvdimm-pmem: convert to blk_alloc_disk/blk_cleanup_diskChristoph Hellwig1-10/+5
2021-06-01block: automatically enable GENHD_FL_EXT_DEVTChristoph Hellwig1-1/+0
2021-05-06include: remove pagemap.h from blkdev.hMatthew Wilcox (Oracle)1-0/+1
2021-04-08libnvdimm: Notify disk drivers to revalidate region read-onlyDan Williams1-4/+33
2021-02-24Merge tag 'libnvdimm-for-5.12' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-3/+1
2021-02-21Merge tag 'for-5.12/block-2021-02-17' of git://git.kernel.dk/linux-blockLinus Torvalds1-2/+2
2021-02-16libnvdimm: Make remove callback return voidUwe Kleine-König1-3/+1
2021-01-24block: store a block_device pointer in struct bioChristoph Hellwig1-2/+2
2021-01-11libnvdimm/pmem: Remove unused headerJianpeng Ma1-1/+0
2020-10-13mm/memremap_pages: support multiple ranges per invocationDan Williams1-0/+1
2020-10-13mm/memremap_pages: convert to 'struct range'Dan Williams1-12/+14
2020-10-13Merge tag 'block-5.10-2020-10-12' of git://git.kernel.dk/linux-blockLinus Torvalds1-3/+1
2020-10-06x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}()Dan Williams1-3/+3
2020-09-24bdi: remove BDI_CAP_SYNCHRONOUS_IOChristoph Hellwig1-1/+0
2020-09-02nvdimm: simplify revalidate_disk handlingChristoph Hellwig1-2/+1
2020-08-14mm: add thp_sizeMatthew Wilcox (Oracle)1-4/+2
2020-07-01block: move ->make_request_fn to struct block_device_operationsChristoph Hellwig1-2/+3
2020-06-13Merge tag 'libnvdimm-for-5.8' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-3/+3
2020-06-08asm-generic: don't include <linux/mm.h> in cacheflush.hChristoph Hellwig1-1/+2
2020-05-27nvdimm: use bio_{start,end}_io_acctChristoph Hellwig1-2/+4
2020-05-13nvdimm/pmem: stop using ->queuedataChristoph Hellwig1-3/+3
2020-04-08Merge tag 'libnvdimm-for-5.7' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-38/+63
2020-04-02dax: Move mandatory ->zero_page_range() check in alloc_dax()Vivek Goyal1-2/+2
2020-04-02dax, pmem: Add a dax operation zero_page_rangeVivek Goyal1-0/+11
2020-04-02pmem: Add functions for reading/writing page to/from pmemVivek Goyal1-36/+50
2020-03-27block: simplify queue allocationChristoph Hellwig1-2/+1
2020-01-31mm: Cleanup __put_devmap_managed_page() vs ->page_free()Dan Williams1-6/+0
2019-11-17libnvdimm/pmem: Delete include of nd-core.hDan Williams1-1/+0
2019-11-14libnvdimm/namespace: Differentiate between probe mapping and runtime mappingAneesh Kumar K.V1-4/+13
2019-09-05libnvdimm/pmem: Advance namespace seed for specific probe errorsAneesh Kumar K.V1-4/+25
2019-07-27Merge tag 'libnvdimm-fixes-5.3-rc2' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-2/+2
2019-07-18driver-core, libnvdimm: Let device subsystems add local lockdep coverageDan Williams1-2/+2
2019-07-18Merge tag 'libnvdimm-for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-6/+12
2019-07-05libnvdimm: add dax_dev sync flagPankaj Gupta1-1/+4
2019-07-05libnvdimm: nd_region flush callback supportPankaj Gupta1-5/+8
2019-07-02memremap: replace the altmap_valid field with a PGMAP_ALTMAP_VALID flagChristoph Hellwig1-1/+0
2019-07-02memremap: remove the data field in struct dev_pagemapChristoph Hellwig1-1/+1
2019-07-02memremap: lift the devmap_enable manipulation into devm_memremap_pagesChristoph Hellwig1-19/+4
2019-07-02memremap: pass a struct dev_pagemap to ->kill and ->cleanupChristoph Hellwig1-9/+9
2019-07-02memremap: move dev_pagemap callbacks into a separate structureChristoph Hellwig1-8/+11
2019-06-13mm/devm_memremap_pages: fix final page put raceDan Williams1-4/+13
2019-06-05treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288Thomas Gleixner1-9/+1
2019-05-20libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overheadDan Williams1-2/+8
2019-05-20dax: Arrange for dax_supported check to span multiple devicesDan Williams1-0/+1
2019-04-07libnvdimm/pmem: fix a possible OOB access when read and write pmemLi RongQing1-4/+4
2018-12-28Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-8/+5
2018-12-28mm, devm_memremap_pages: fix shutdown handlingDan Williams1-8/+5
2018-11-15block: remove the lock argument to blk_alloc_queue_nodeChristoph Hellwig1-1/+1
2018-10-25Merge tag 'libnvdimm-for-4.20' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-1/+3
2018-10-09libnvdimm, pmem: Fix badblocks population for 'raw' namespacesDan Williams1-1/+3
2018-09-28block: genhd: add 'groups' argument to device_add_diskHannes Reinecke1-1/+1
2018-08-25Merge tag 'libnvdimm-for-4.19_dax-memory-failure' of gitolite.kernel.org:pub/...Linus Torvalds1-0/+26
2018-08-25Merge tag 'libnvdimm-for-4.19_misc' of gitolite.kernel.org:pub/scm/linux/kern...Linus Torvalds1-2/+5
2018-08-20libnvdimm, pmem: Restore page attributes when clearing errorsDan Williams1-0/+26
2018-07-30libnvdimm, pmem: kaddr and pfn can be NULL to ->direct_access()Huaisheng Ye1-2/+5
2018-07-18block: make bdev_ops->rw_page() take a REQ_OP instead of boolTejun Heo1-7/+6
2018-06-28pmem: only set QUEUE_FLAG_DAX for fsdax modeRoss Zwisler1-1/+2
2018-06-08Merge branch 'for-4.18/mcsafe' into libnvdimm-for-nextDan Williams1-3/+10
2018-06-08Merge branch 'for-4.18/dax' into libnvdimm-for-nextDan Williams1-0/+25
2018-06-06libnvdimm, pmem: Unconditionally deep flush on *syncRoss Zwisler1-4/+3
2018-06-06libnvdimm, pmem: Complete REQ_FLUSH => REQ_PREFLUSHRoss Zwisler1-6/+1
2018-05-22pmem: Switch to copy_to_iter_mcsafe()Dan Williams1-1/+1
2018-05-22dax: Introduce a ->copy_to_iter dax operationDan Williams1-0/+7
2018-05-22mm: introduce MEMORY_DEVICE_FS_DAX and CONFIG_DEV_PAGEMAP_OPSDan Williams1-0/+25
2018-05-15x86/asm/memcpy_mcsafe: Return bytes remainingDan Williams1-3/+3
2018-04-10Merge tag 'libnvdimm-for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-12/+2
2018-04-05Merge tag 'for-4.17/block-20180402' of git://git.kernel.dk/linux-blockLinus Torvalds1-3/+3
2018-03-15libnvdimm, pmem: use module_nd_driverJohannes Thumshirn1-11/+1
2018-03-08block: Use blk_queue_flag_*() in drivers instead of queue_flag_*()Bart Van Assche1-2/+2
2018-03-06libnvdimm: remove redundant __func__ in dev_dbgDan Williams1-1/+1
2018-03-02libnvdimm: re-enable deep flush for pmem devices via fsync()Dave Jiang1-2/+1
2018-02-28block: Add 'lock' as third argument to blk_alloc_queue_node()Bart Van Assche1-1/+1
2018-02-03Merge branch 'for-4.16/nfit' into libnvdimm-for-nextRoss Zwisler1-1/+3
2018-02-01acpi: nfit: Add support for detect platform CPU cache flush on power lossDave Jiang1-1/+3
2018-01-08memremap: change devm_memremap_pages interface to use struct dev_pagemapChristoph Hellwig1-17/+20
2017-11-15bdi: introduce BDI_CAP_SYNCHRONOUS_IOMinchan Kim1-0/+2
2017-09-14Merge tag 'for-4.14/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-7/+0
2017-09-11dax: remove the pmem_dax_ops->flush abstractionMikulas Patocka1-7/+0
2017-09-06block, THP: make block_device_operations.rw_page support THPHuang Ying1-11/+30
2017-07-07Merge tag 'libnvdimm-for-4.13' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-6/+57
2017-07-03Merge branch 'for-4.13/dax' into libnvdimm-for-nextDan Williams1-6/+34
2017-06-30libnvdimm, region, pmem: fix 'badblocks' sysfs_get_dirent() reference lifetimeDan Williams1-4/+12
2017-06-29libnvdimm, pmem: disable dax flushing when pmem is fronting a volatile regionDan Williams1-5/+8
2017-06-29libnvdimm, pmem, dax: export a cache control attributeDan Williams1-0/+10
2017-06-27x86, libnvdimm, pmem: remove global pmem apiDan Williams1-1/+0
2017-06-27x86, libnvdimm, pmem: move arch_invalidate_pmem() to libnvdimmDan Williams1-1/+1
2017-06-27block: don't bother with bounce limits for make_request driversChristoph Hellwig1-1/+0
2017-06-15x86, dax, libnvdimm: remove wb_cache_pmem() indirectionDan Williams1-1/+1
2017-06-15dax, pmem: introduce an optional 'flush' dax_operationDan Williams1-0/+7
2017-06-15libnvdimm, pmem: Add sysfs notifications to badblocksToshi Kani1-0/+14
2017-06-15libnvdimm, label: honor the lba size specified in v1.2 labelsDan Williams1-0/+1
2017-06-09x86, uaccess: introduce copy_from_iter_flushcache for pmem / cache-bypass ope...Dan Williams1-2/+11
2017-06-09block: switch bios to blk_status_tChristoph Hellwig1-14/+14
2017-05-05Merge tag 'libnvdimm-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-26/+64
2017-05-04Merge branch 'for-4.12/dax' into libnvdimm-for-nextDan Williams1-14/+39
2017-05-01Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-2/+11
2017-05-01mm, zone_device: Replace {get, put}_zone_device_page() with a single referenc...Dan Williams1-2/+11
2017-04-28libnvdimm, pmem: fix a NULL pointer BUG in nd_pmem_notifyToshi Kani1-12/+25
2017-04-25x86, dax, pmem: remove indirection around memcpy_from_pmem()Dan Williams1-1/+1
2017-04-25block: remove block_device_operations ->direct_access()Dan Williams1-10/+0
2017-04-19pmem: add dax_operations supportDan Williams1-13/+48
2017-01-12pmem: return EIO on read_pmem() failureStefan Hajnoczi1-1/+3
2016-12-17Merge branch 'for-4.10/libnvdimm' into libnvdimm-for-nextDan Williams1-9/+12
2016-12-16libnvdimm: fix mishandled nvdimm_clear_poison() return valueDan Williams1-7/+14
2016-12-04libnvdimm, namespace: avoid multiple sector calculationsFabian Frederick1-6/+5
2016-11-28libnvdimm: use consistent naming for request_mem_region()Dan Williams1-1/+1
2016-10-19pmem: report error on clear poison failureToshi Kani1-2/+6
2016-09-30pmem: reduce kmap_atomic sections to the memcpys onlyVishal Verma1-5/+23
2016-08-07block: rename bio bi_rw to bi_opfJens Axboe1-2/+2
2016-08-07block/mm: make bdev_ops->rw_page() take a bool for read/writeJens Axboe1-6/+6
2016-08-04mm/block: convert rw_page users to bio op useMike Christie1-6/+6
2016-07-28Merge tag 'libnvdimm-for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-34/+51
2016-07-26Merge branch 'for-4.8/drivers' of git://git.kernel.dk/linux-blockLinus Torvalds1-2/+1
2016-07-23pmem: clarify a debug print in pmem_clear_poisonVishal Verma1-1/+1
2016-07-20block: add QUEUE_FLAG_DAX for devices to advertise their DAX supportToshi Kani1-0/+1
2016-07-12pmem: kill __pmem address spaceDan Williams1-3/+3
2016-07-12libnvdimm, pmem: flush posted-write queues on shutdownDan Williams1-0/+8
2016-07-11libnvdimm, pmem: use REQ_FUA, REQ_FLUSH for nvdimm_flush()Dan Williams1-4/+12
2016-07-11libnvdimm: introduce nvdimm_flush() and nvdimm_has_flush()Dan Williams1-6/+21
2016-06-27block: convert to device_add_disk()Dan Williams1-2/+1
2016-06-24libnvdimm, pmem: allow nfit_test to override pmem_direct_access()Dan Williams1-15/+3
2016-06-15libnvdimm: use devm_add_action_or_reset()Dan Williams1-8/+6
2016-05-26Merge tag 'dax-misc-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git...Linus Torvalds1-1/+9
2016-05-20libnvdimm, dax: autodetect supportDan Williams1-1/+2
2016-05-18dax: enable dax in the presence of known media errors (badblocks)Dan Williams1-1/+9
2016-04-22libnvdimm, pmem: kill ->pmem_queue and ->pmem_diskDan Williams1-13/+8
2016-04-22libnvdimm, pmem, pfn: move pfn setup to the coreDan Williams1-184/+0
2016-04-22libnvdimm, pmem, pfn: make pmem_rw_bytes generic and refactor pfn setupDan Williams1-151/+85
2016-04-22libnvdimm, pmem: clean up resource print / requestDan Williams1-4/+3
2016-04-22libnvdimm, pmem: use devm_add_action to release bdev resourcesDan Williams1-49/+39
2016-04-22libnvdimm, pmem: use ->queuedata for driver private dataDan Williams1-5/+4
2016-04-22libnvdimm, btt, convert nd_btt_probe() to devmDan Williams1-1/+1
2016-04-22libnvdimm, pfn, convert nd_pfn_probe() to devmDan Williams1-21/+9
2016-04-22libnvdimm, pmem: kill pmem->ndnsDan Williams1-18/+22
2016-04-15libnvdimm, pmem: clarify the write+clear_poison+write flowDan Williams1-0/+14
2016-04-09Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-7/+29
2016-04-07libnvdimm, pfn: fix nvdimm_namespace_add_poison() vs section alignmentDan Williams1-7/+29
2016-04-04mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macrosKirill A. Shutemov1-1/+1
2016-03-28x86, pmem: use memcpy_mcsafe() for memcpy_from_pmem()Dan Williams1-2/+2
2016-03-09Merge branch 'for-4.6/pfn' into libnvdimm-for-nextDan Williams1-52/+112
2016-03-09libnvdimm, pmem: clear poison on writeDan Williams1-1/+28
2016-03-09libnvdimm, pmem: fix kmap_atomic() leak in error pathDan Williams1-4/+7
2016-03-09pmem: don't allocate unused major device numberNeilBrown1-18/+1
2016-03-06libnvdimm, pmem: fix ia64 build, use PHYS_PFNDan Williams1-4/+4
2016-03-05libnvdimm, pmem: adjust for section collisions with 'System RAM'Dan Williams1-34/+91
2016-03-05libnvdimm, pmem: fix 'pfn' support for section-misaligned namespacesDan Williams1-2/+22
2016-03-05libnvdimm: async notification supportDan Williams1-0/+15
2016-02-23nvdimm: use 'u64' for pfn flagsArnd Bergmann1-1/+1
2016-01-15mm, dax, pmem: introduce {get|put}_dev_pagemap() for dax-gupDan Williams1-2/+4
2016-01-15libnvdimm, pmem: move request_queue allocation earlier in probeDan Williams1-13/+20
2016-01-15libnvdimm, pfn, pmem: allocate memmap array in persistent memoryDan Williams1-2/+17
2016-01-15x86, mm: introduce vmem_altmap to augment vmemmap_populate()Dan Williams1-2/+4
2016-01-15mm: introduce find_dev_pagemap()Dan Williams1-1/+1
2016-01-15mm, dax, pmem: introduce pfn_tDan Williams1-4/+9
2016-01-10Merge branch 'for-4.5/block-dax' into for-4.5/libnvdimmDan Williams1-9/+55
2016-01-09libnvdimm, pmem: nvdimm_read_bytes() badblocks supportDan Williams1-2/+10
2016-01-09pmem, dax: disable dax in the presence of bad blocksDan Williams1-0/+1
2016-01-09pmem: fail io-requests to known bad blocksDan Williams1-7/+39
2016-01-09libnvdimm: convert to statically allocated badblocksDan Williams1-5/+5
2016-01-09libnvdimm, pmem: move definition of nvdimm_namespace_add_poison to nd.hDan Williams1-1/+0
2016-01-09libnvdimm: Add a poison list and export badblocksVishal Verma1-0/+6
2015-12-24libnvdimm, pfn: fix nd_pfn_validate() return value handlingDan Williams1-1/+3