diff options
author | Dan Williams <dan.j.williams@intel.com> | 2021-08-02 19:29:59 +0200 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2021-08-06 17:22:53 +0200 |
commit | 9cc238c7a526dba9ee8c210fa2828886fc65db66 (patch) | |
tree | 07ffce1f637c7ba9b1601a7db49c07370eb3fa65 /drivers/message | |
parent | cxl/core: Move register mapping infrastructure (diff) | |
download | linux-9cc238c7a526dba9ee8c210fa2828886fc65db66.tar.xz linux-9cc238c7a526dba9ee8c210fa2828886fc65db66.zip |
cxl/pci: Introduce cdevm_file_operations
In preparation for moving cxl_memdev allocation to the core, introduce
cdevm_file_operations to coordinate file operations shutdown relative to
driver data release.
The motivation for moving cxl_memdev allocation to the core (beyond
better file organization of sysfs attributes in core/ and drivers in
cxl/), is that device lifetime is longer than module lifetime. The cxl_pci
module should be free to come and go without needing to coordinate with
devices that need the text associated with cxl_memdev_release() to stay
resident. The move will fix a use after free bug when looping driver
load / unload with CONFIG_DEBUG_KOBJECT_RELEASE=y.
Another motivation for passing in file_operations to the core cxl_memdev
creation flow is to allow for alternate drivers, like unit test code, to
define their own ioctl backends.
Signed-off-by: Ben Widawsky <ben.widawsky@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/162792539962.368511.2962268954245340288.stgit@dwillia2-desk3.amr.corp.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/message')
0 files changed, 0 insertions, 0 deletions