Slawomir Jankowski
455d554dc1
Reject zero-sized discard IOs to core
...
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-05-19 16:23:41 +02:00
Rafal Stefanowski
38e7e19290
Update copyright statements
...
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2020-04-28 13:37:54 +02:00
Robert Baldyga
93cd0615d3
Introduce multi-stream sequential cutoff
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-04-22 13:30:42 +02:00
Robert Baldyga
332ad1dfbc
Make seq cutoff policy and threshold atomic variables
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-03-24 18:17:15 +01:00
Michal Rakowski
2edd05c812
Change get_effective_cache_mode to operate on req instead of io
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2020-03-20 18:58:10 +01:00
Robert Baldyga
108fe28ad4
Introduce core priv
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-03-03 15:37:12 +01:00
Michal Rakowski
325994074e
env: change env_strncmp to take 4 args
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-09-30 17:26:47 +02:00
Michal Mielewczyk
89de6038c1
Split retrieving core stats and config info into two functions.
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-09-10 08:01:09 -04:00
Michal Mielewczyk
80f82cab2b
Deinitialize volume types in ocf internally.
...
Adapter can provide ops for data type deinitialization, if any additional
operations are required on deinitialization procedure.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-08-05 06:16:46 -04:00
Robert Baldyga
259df7ace9
Store core name in metadata
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-07-30 09:26:26 +02:00
Robert Baldyga
4f0735b503
Ensure that core name is set and unique
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-07-29 17:37:48 +02:00
Robert Baldyga
e64bb50a4b
Allocate io and request in single allocation
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-07-17 10:31:23 +02:00
Robert Baldyga
4d2d31ff76
Introduce ocf_io_internal
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-07-17 09:54:51 +02:00
Adam Rutkowski
b97bb6f53b
Add function to check for lazy write cache mode (WO or WB)
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-06-12 12:07:02 -04:00
Michal Mielewczyk
328d27846a
Prevent overriding null terminator in cache name
2019-06-11 12:12:07 +02:00
Michal Mielewczyk
46c17144f6
Remove redundant check for core id
2019-06-11 12:12:07 +02:00
Michal Rakowski
9f4536c6e3
Error codes in IO path changed to OCF-specific
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-06-05 09:10:54 +02:00
Robert Baldyga
711de86bff
Associate core metadata with core object
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-05-28 14:49:59 +02:00
Robert Baldyga
bdcd4df0ef
Remove utils_device.h
...
Move core mngt related code to ocf_mngt_core.c
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-05-27 17:00:39 +02:00
Robert Baldyga
7de56940a4
Move ocf_request from utils
...
ocf_request has always been first class citizen in OCF,
so lets place it along with another essential objects.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-05-27 15:51:27 +02:00
Adam Rutkowski
0e15c693fd
Return post modification value from ocf_refcnt_inc/dec
...
If counter is frozen then increment returns 0.
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-05-06 19:23:11 -04:00
Adam Rutkowski
979f51612f
Move dirty ref counter to cache->refcnt aggregate
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-05-06 19:22:29 -04:00
Jan Musial
15fb0d04bd
Fix IO queue validation
...
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-04-08 14:40:20 +02:00
Adam Rutkowski
d88a4ac57a
Do not allow top volume I/O on management queue
...
Core volume I/O must not be queued on management queue - this would
break I/O accounting code, resulting in use-after-free type of errors
after cache detach, core remove etc.
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-04-05 14:55:28 -04:00
Adam Rutkowski
2aba5a2843
Add volume_params argument to bottom volume open
...
This pointer is used to provide optional volume specific data
from the user down to bottom volume open callback. volume_params
is provided to OCF in ocf_mngt_cache_device_config.volume_params.
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-04-01 19:28:14 -04:00
Adam Rutkowski
54374639b8
Asynchronous wait for dirty requests in flush
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-03-26 15:23:42 -04:00
Robert Baldyga
c5df82f2cb
Make management API asynchronous
...
NOTE: This patch only changes API that pretends to be asynchronous.
Most of management operations are still performed synchronously.
The real asynchronism will be introduced in the next patches.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-03-12 10:33:26 +01:00
Michal Mielewczyk
e53944d472
Dynamic I/O queue management
...
- Queue allocation is now separated from starting cache.
- Queue can be created and destroyed in runtime.
- All queue ops accept queue handle instead of queue id.
- Cache stores queues as list instead of array.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-02-26 17:36:19 +01:00
Robert Baldyga
97300b1137
Rename "data object" to "volume"
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-02-08 14:13:05 +01:00
Michal Mielewczyk
2dfd6248c9
Configure all io classes at once.
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-01-28 08:51:26 -05:00
Tomasz Rybicki
1156531590
Added tracing functionality
...
Signed-off-by: Tomasz Rybicki <tomasz.rybicki@intel.com>
2019-01-14 14:17:48 +01:00
Robert Baldyga
4cf4d6d7c7
Simplify data object API
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-01-04 17:34:39 +01:00
Robert Baldyga
4be6761a18
Core data object
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-01-04 08:33:34 +01:00
Robert Baldyga
69947bb44b
Unify core naming convention (core_obj -> core)
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2018-12-12 14:49:17 +01:00
Robert Baldyga
db92083432
Unify req naming convention (rq -> req)
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2018-12-12 13:36:34 +01:00
Robert Baldyga
a8e1ce8cc5
Initial commit
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2018-11-29 15:14:21 +01:00