Robert Baldyga
ba7f693cff
Clean cas_disk_defs.h header
...
Move definitions used only in only one source code file to that file.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-09-07 10:44:45 +02:00
Robert Baldyga
320c998a1d
Remove cas_disk message prefixes
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-09-07 10:44:37 +02:00
Robert Baldyga
f70789e127
Remove cas_disk kobject
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-08-31 17:55:53 +02:00
Robert Baldyga
4881e6c0f0
Remove casdsk_disk mode
...
The mode is no longer needed. Remove remaining dead code.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-08-25 13:02:25 +02:00
Robert Baldyga
16576c7a95
Remove "mode" sysfs property of casdsk_disk
...
After removal of PT mode this property is meaningless.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-08-25 13:02:25 +02:00
Robert Baldyga
563aeb0058
Remove casdsk_disk_shutdown_all()
...
As we no longer have in flight upgrade, all exported objects are guaranteed
to be destroyed before cas_cache module is unloaded, so this deinit
mechanism is not needed anymore.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-08-25 13:02:25 +02:00
Robert Baldyga
10910d1a65
Remove PT mode from cas_disk
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-08-25 12:34:59 +02:00
Robert Baldyga
3102856025
Remove unused exported symbols from cas_disk
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-08-25 12:33:51 +02:00
Krzysztof Majzerowicz-Jaszcz
e997f768b0
Rework for RHEL8.5
...
Rework for RHEL8.5 compatibility to avoid potential bug of exiting queue
after IO completion on a different CPU.
Targeted RHEL kernel version corrected.
Signed-off-by: Krzysztof Majzerowicz-Jaszcz <krzysztof.majzerowicz-jaszcz@intel.com>
2022-08-16 13:50:59 +02:00
Adam Rutkowski
738a07c821
avoid overflow in disk openers counter
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2022-06-27 16:21:44 +02:00
Krzysztof Majzerowicz-Jaszcz
12ddca1cf3
OpenCAS Linux kernel 5.15 adaptation
...
This patch adapts OpenCAS Linux to compile and work with kernel v5.15
Commit id's from the kernel affecting OpenCAS:
commit 0e0ccdecb3cff95a350b4364e7ebbaa754d0e47d
block: remove bdget_disk
commit 9c2b9dbafc067e173db30c4fd0636392d27944e8
block: remove alloc_disk and alloc_disk_node
commit a8698707a1835be3abd12a3b28079a80999f8dee
block: move bd_mutex to struct gendisk
commit 2cece3778475abc855084d897a3cf61249798ad9
scsi: scsi_ioctl: Remove scsi_req_init()
commit 2f4731dcd0bb73379fbb9e3eb07ae7324125caef
block: remove bdput
commit 14cf1dbb55bb07427babee425fd2a8a9300737cc
block: remove bdgrab
Signed-off-by: Krzysztof Majzerowicz-Jaszcz <krzysztof.majzerowicz-jaszcz@intel.com>
2022-06-09 08:49:32 +02:00
Rafal Stefanowski
acec05060d
Fix license
...
Change license to BSD-3-Clause
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2021-10-28 12:46:42 +02:00
Jan Musial
ac00bd503a
Add config for BLK_MQ_F_BLOCKING flag
...
Signed-off-by: Jan Musial <jan.musial@intel.com>
2021-08-18 09:04:15 +02:00
Robert Baldyga
c968285d9f
Remove upgrade-in-flight feature
...
Due to changes in Linux kernel this feature is not working anymore.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-08-11 20:33:16 +02:00
Robert Baldyga
e5e0697da4
Add support for kernel 5.11
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-06-15 18:59:08 +02:00
Robert Baldyga
5e17d0833f
Remove unused callbacks from cas_disk ops
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-06-15 18:59:08 +02:00
Robert Baldyga
b82b338c53
Remove blk request handling path
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-06-15 18:59:08 +02:00
Robert Baldyga
7343cb55fa
Handle all io on bio handler
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-06-15 16:52:35 +02:00
Slawomir Jankowski
964877ddd6
Typo fix
...
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-05-13 17:02:05 +02:00
Slawomir Jankowski
9e7f163216
Cleanup exported object queue
...
This patch fixes adding core after core addition failure.
The queue wasn't cleaned before and following core addition cannot
re-initialize queue properly.
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-05-13 17:01:41 +02:00
Adam Rutkowski
9c08ed4b87
Set proper multiqueue flags
...
Setting BLK_MQ_F_STACKING (to indicate stacked device) and
BLK_MQ_F_BLOCKING (to indicate potentially blocking operations
like acquiring mutex or GFP_NOIO allocations).
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2021-04-16 22:52:18 -05:00
Rafal Stefanowski
43f43068ad
Update copyright statements (2021)
...
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2021-01-21 13:15:38 +01:00
Robert Baldyga
7e40570bbd
Remove #ifdef for unsupported kernel version
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-12-22 11:33:38 +01:00
Robert Baldyga
0596597f61
Replace ioctl_by_bdev() with vfs_ioctl()
...
Since kernel 5.8 ioctl_by_bdev() is not available.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-12-22 11:33:38 +01:00
Robert Baldyga
c596c66063
configure: Add wrappers for default make request function
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-12-22 11:33:38 +01:00
Robert Baldyga
48c3598ef5
configure: Add bdev_disk_changed() wrapper
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-12-22 11:33:38 +01:00
Robert Baldyga
d9ea8d3e32
configure: Add blk_queue_make_request() wrapper
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-12-22 11:33:38 +01:00
Michal Mielewczyk
8363b67993
cas_disk: handle allocation error properly
...
In case of error `blk_mq_init_queue()` does not return NULL, but
`ERR_PTR(error_code)` instead.
`IS_ERR_OR_NULL()` should be used to check if `blk_mq_init_queue()` actually
failed.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-07-07 07:43:52 -04:00
Rafal Stefanowski
44b4020cc1
Update copyright statements
...
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2020-05-04 16:47:38 +02:00
Adam Rutkowski
9b8fdde201
Relax allocations requirements
...
CAS does not need atomic alocations virtually anywhere. GFP_NOIO
should be sufficient in IO path. When allocation buffers during
module initialization use GFP_KERNEL.
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-10-23 16:04:27 -04:00
Robert Baldyga
19bc5da2cf
Cleanup CAS_VERSION
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-09-19 12:43:34 +02:00
Michal Rakowski
f015dea539
cas_disk: Add mandatory blk_mq_ops filed required by some kernels
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-09-10 16:28:28 +02:00
Michal Rakowski
a904a5bf66
Return values of expected type by the block layer
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-09-09 14:00:44 +02:00
Michal Rakowski
95af3c6f9f
Move to blk-mq block interface.
...
Currently Open-CAS uses single queue block interface,
which is removed in kernel in version 5.0.
From this moment on Open-CAS supports only blk-mq,
and single queue is not supported any longer.
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-08-26 12:23:21 +02:00
Michal Rakowski
583deef8f6
configure: adapt to kernel 5.1
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-08-26 11:52:39 +02:00
Michal Rakowski
eee7a0e220
Fix exported object cleanup in case of cache stop failure
...
In case of error during cache stop exported object is not being restored after destroying.
This may result in bug in case of calling stop once more.
This commit fixes this issue - exported objects are restored.
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-07-17 15:09:39 +02:00
Michal Rakowski
ee6cba515a
Added create/activate/free all exported objects methods
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-07-17 09:43:43 +02:00
Michal Mielewczyk
1e5355eba1
Extending 'configure' script
...
Functions and macros dependent on different kernel versions are now generated
before compilation basing on current kernel capabilities instead of hardcoding
them for specific kernels.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-05-30 06:29:07 -04:00
Adam Rutkowski
444feb840c
Remove intermediate files from repo
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-03-29 14:52:25 -04:00
Robert Baldyga
94e8ca09e0
Initial commit
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-03-29 08:45:50 +01:00