Robert Baldyga
f9447fda75
Remove all the trailing whitespaces
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-27 17:00:39 +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
Robert Baldyga
57bc19103d
Remove unused core_io_allocator
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-27 14:19:10 +02:00
Robert Baldyga
ab2fc6d3c3
Rename utils_allocator to utils_realloc
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-27 13:10:17 +02:00
Robert Baldyga
cda536a14a
Remove mpool from OCF utils
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-27 13:04:40 +02:00
Jan Musiał
93a06686a7
Merge pull request #165 from robertbaldyga/ctx-get-put
...
Give ocf_ctx get/put semantics
2019-05-24 14:29:04 +02:00
Robert Baldyga
c903d13ad2
Give ocf_ctx get/put semantics
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-23 15:50:10 +02:00
Robert Baldyga
7ff4a349ec
Use enum cache line values when validating config
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-23 13:29:49 +02:00
Robert Baldyga
efa96ef7bd
Add ocf_cache_line_size_none
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-23 13:29:49 +02:00
Michal Rakowski
8c96270ce8
Merge pull request #164 from robertbaldyga/add-open-cores-parameter
...
Add open_cores parameter to ocf_mngt_cache_device_config
2019-05-23 10:44:47 +02:00
Michal Rakowski
4216ff78f1
Merge pull request #163 from robertbaldyga/put-queue-after-deallocating-req
...
Put queue after deallocating request
2019-05-23 10:38:13 +02:00
Robert Baldyga
2cf2a59584
Add open_cores parameter to ocf_mngt_cache_device_config
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-21 18:18:33 +02:00
Robert Baldyga
dbef4b721c
Put queue after deallocating request
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-21 16:09:58 +02:00
Michal Rakowski
76bcac5b45
Merge pull request #160 from robertbaldyga/remove-unnecessary-attach-step
...
Remove unnecessary attach step
2019-05-21 14:02:19 +02:00
Michal Rakowski
9b3bf801e2
Merge pull request #159 from robertbaldyga/req-store-core-handle
...
Store core handle instead of core_id in ocf_request
2019-05-21 13:52:55 +02:00
Robert Baldyga
b551d301ff
ocf_trace: Fix req naming convention
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-21 12:30:29 +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
Robert Baldyga
5ad5c521df
Disallow ocf_cache_mode_max in io_class config
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-21 09:33:33 +02:00
Robert Baldyga
e8bf299176
Remove unnecessary attach step
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-21 09:17:39 +02:00
Robert Baldyga
f5463d9a16
Set queue for metadata io submitted to cache volume
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-14 14:15:47 +02:00
Robert Baldyga
c263e3e9eb
metadata: Put io before callback invocation
...
This allows for safe volume destruction in callback function.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-13 12:12:37 +02:00
Michal Rakowski
0412e05260
Merge pull request #73 from mmichal10/cleaner-kick
...
Add kick function for cleaner
2019-05-10 14:33:49 +02:00
Michal Mielewczyk
7165bc16c3
Add kick function for cleaner
...
ocf_kick_cleaner() allows to perfom cleaning immediately.
Nop cleaning policy now returns new 'OCF_CLEANER_DISABLE' macro which indicates
that cleaing shouldn't be performed. To enable it back, ocf_kick_cleaner()
should be called.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com >
2019-05-10 08:09:56 -04:00
Michał Wysoczański
a145815747
Merge pull request #149 from Donaim/master
...
Set core_id during load if user did not specify one
2019-05-10 12:59:07 +02:00
Robert Baldyga
580d5506cd
Stop treating UUID as ANSI string
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-10 12:49:51 +02:00
Vitaliy Mysak
8391300bc8
Set core_id during load if user did not specify one
...
If cfg->core_id is OCF_CORE_MAX and that core matches the UUID of
existing not opened one, then set cfg->core_id to id of that core.
This is useful when loading cache from metadata: if user does not store
the ids of cores but relies on OCF to assign them, there is no need to
not reassign them on load.
Previus behaviur when cfg->core_id != id of core with matching UUID is
maintained.
Signed-off-by: Vitaliy Mysak <vitaliy.mysak@intel.com >
2019-05-09 23:39:18 +00:00
Michal Rakowski
94ef5a5249
Merge pull request #148 from mmichal10/fix-cleaner-stopping
...
Distinguish stopping cache from attached and detached states.
2019-05-09 14:42:17 +02:00
Michal Mielewczyk
676de5254f
Distinguish stopping cache from attached and detached states.
...
If stopping attached cache, cleaner should be stopped.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com >
2019-05-09 08:21:36 -04:00
Michal Rakowski
78fea63178
Merge pull request #147 from robertbaldyga/fix-compilation-error-int-const-bool-context
...
Fix compilation error
2019-05-09 12:57:44 +02:00
Jan Musiał
8e4a1f10f0
Merge pull request #146 from robertbaldyga/init-core-pool-with-ctx
...
Initialize and deinitialize core pool with ctx
2019-05-09 12:41:00 +02:00
Robert Baldyga
0305fba4a3
Fix compilation error
...
Passing int constant directly to OCF_PL_NEXT_ON_SUCCESS_RET() macro caused
following compilation error (on GCC 7.4.0):
src/ocf/mngt/ocf_mngt_core.c:599:33: error: ?:
using integer constants in boolean context [-Werror=int-in-bool-context]
error ? -OCF_ERR_WRITE_CACHE : 0);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
src/ocf/mngt/../utils/utils_pipeline.h:145:6: note:
in definition of macro ‘OCF_PL_NEXT_ON_SUCCESS_RET’
if (error) \
^~~~~
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-09 12:02:41 +02:00
Robert Baldyga
6c7df8abf6
Initialize and deinitialize core pool with ctx
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-09 11:22:06 +02:00
Robert Bałdyga
1c9fe96663
Merge pull request #133 from arutk/ajrutkow_async_counters
...
Extended reference counting
2019-05-08 14:23:50 +02:00
Robert Baldyga
7b88aac56f
Remove "interruption" argument from flush() functions
...
As non-interruptible flushes are no longer triggered from OCF
internals, we can get rid of "interruption" argument and let
adapters handle it themselves.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-07 17:23:19 +02:00
Adam Rutkowski
aafc067fa5
Combine cache ref counter and valid flag into ocf_refcnt
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com >
2019-05-06 19:37:51 -04:00
Adam Rutkowski
4251cc63e7
Do not send zero_line request if d2c
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com >
2019-05-06 19:37:51 -04:00
Adam Rutkowski
af4b9b13d0
Freeze / unfreeze cleaning reference counters in detach/attach
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com >
2019-05-06 19:37:51 -04:00
Adam Rutkowski
348b0f9ab8
Async wait for cleaner completion
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com >
2019-05-06 19:37:49 -04: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
962f9d17d1
Remove functions to wait for cache pending requests
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com >
2019-05-06 19:23:11 -04:00
Adam Rutkowski
92e9ae12f1
Wait for metadata requests in stop
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com >
2019-05-06 19:23:11 -04: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
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
Adam Rutkowski
555f477248
Do not increment attached metadata counter on behalf of mngt requests
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com >
2019-05-06 19:22:29 -04:00
Robert Baldyga
42b5cd1777
Get cache on queue creation and put it on queue destruction
...
This prevents situation when cache object is being destroyed
while some queues still exist.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-06 17:30:32 +02:00
Robert Baldyga
a82d420ee0
Add management queue guards where needed
...
Prevent starting management operations that require pipeline
when management queue isn't set.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-02 17:26:04 +02:00
Robert Baldyga
c2aea209db
Introduce pipeline *_RET macros
...
This simplifies code by allowing to express programmer intent
explicitly and helps to avoid missing return statements (this patch
fixes at least one bug related to this).
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-02 17:22:43 +02:00
Robert Baldyga
1373471af7
Introduce OCF_CMPL_RET() macro
...
This simplifies cases when we want to call completion callback
and immediately return from void-returning function, by allowing
to explicitly express programmers intent. That way we can avoid
cases when return statement is missing by mistake (this patch
fixes at least one bug related to this).
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-02 17:22:36 +02:00
Robert Baldyga
bcb2e670f3
metadata: Remove unnecessary check
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com >
2019-05-02 17:22:28 +02:00