Adam Rutkowski
b82ed3af26
Initialize @increment in ocf_read_wo_cache_do
...
Static code analyzers fail to understand that this variable
is always assigned to before usage.
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-06-12 13:44:01 -04: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
Adam Rutkowski
82e8c55f4a
Write-only cache mode
...
Write-only cache mode is similar to writeback, however read
operations do not promote data to cache. Reads are mostly serviced
by the core device, only dirty sectors are fetched from the cache.
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-06-12 12:07:02 -04:00
Adam Rutkowski
ae6164a49c
Helper functions to get request start/end sector in cacheline
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-06-12 12:07:02 -04:00
Michal Rakowski
d714f6235b
Use rate limited logging in case of engine error
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-06-06 11:27:25 +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
f240f81641
Make request structure more compressed
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-06-03 19:19:29 +02:00
Adam Rutkowski
d7b3a187e4
Fix condition for setting req->info.dirty_all
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-05-31 19:10:11 -04: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
Robert Baldyga
0490dd8bd4
ocf_reqest: Store core handle instead of core_id
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-05-21 12:30:29 +02:00
Adam Rutkowski
dc716d6a08
Use ref counter to track attach state
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-05-06 19:23:10 -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
91e0345b78
Implement asynchronous attach, load, detach and stop
...
NOTE: This is still not the real asynchronism. Metadata interfaces
are still not fully asynchronous.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-03-18 15:06:57 +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 Bałdyga
163392af0b
Merge pull request #55 from MinneyJohn/metadata_improve
...
Improvement of metadata flush setting
2019-02-19 15:49:02 +01:00
xqzhou
bbb0e1bbb0
Improvement of metadata flush setting
...
Signed-off-by: xqzhou <xue.qiang.zhou@intel.com>
2019-02-19 05:14:06 -07: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
916f46c893
Code refactoring
...
Removed few dead assignments and added variables initialization.
2019-01-16 06:46:00 -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
Vitaliy Mysak
506f0aa975
Add more missing io_set_queue
...
Propagate id of ocf_queue for discard io
This resolves the issue of
bottom adapter always getting an ocf_io with io_queue = 0,
no matter from which queue function to bottom adapter was called
This is a follow up on e69894e398
Signed-off-by: Vitaliy Mysak <vitaliy.mysak@intel.com>
2019-01-06 20:57:52 +00:00
Robert Baldyga
67f17b9dc2
Add more missing io_put() calls
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-01-04 13:11:30 +01:00
Michal Rakowski
e139f79d6b
Merge pull request #25 from robertbaldyga/core-data-object
...
Core data object
2019-01-04 09:19:46 +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
8d127e6351
Move eviction stuff to eviction/ directory
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2018-12-31 14:51:51 +01:00
Mariusz Barczak
15ed5b4450
OCF provides own macros for MIN, MAX, and DIV_ROUND_UP
...
Signed-off-by: Mariusz Barczak <mariusz.barczak@intel.com>
2018-12-13 10:59:23 -05:00
Robert Baldyga
951b628fe5
Unify completion functions naming
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2018-12-13 07:49:27 +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
d862778e2b
Remove legacy io completion API
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2018-12-12 11:20:41 +01:00
wolszews
0cb11b0d3c
Remove OCF prefix
2018-12-06 16:04:30 +01:00
Robert Baldyga
a8e1ce8cc5
Initial commit
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2018-11-29 15:14:21 +01:00