Adam Rutkowski
f892bb962d
posix env: add spinlock trylock
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-09-09 16:19:51 -04:00
Adam Rutkowski
7f442fd943
Adding execution context get/put to posix env
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-09-09 16:19:49 -04:00
Jan Musiał
f1ee05405e
Merge pull request #252 from Open-CAS/felipe-documentation-changes
...
Update OCF README.md
2019-08-30 13:49:57 +02:00
Robert Bałdyga
5fd239d2bb
Merge pull request #245 from imjfckm/switching-pp
...
Switching mechanism for promotion policies
2019-08-30 11:35:16 +02:00
Felipe
26361348a5
Update OCF README.md
...
The doxygen API documentation link was being referenced twice. The first link should have pointed to https://open-cas.github.io/getting_started_ocf.html instead.
2019-08-29 10:24:10 -07:00
Robert Bałdyga
17626eee36
Merge pull request #246 from arutk/pyocf_recovery
...
pytest: basic cache recovery test
2019-08-29 15:09:05 +02:00
Adam Rutkowski
63c71ec6df
pytest: basic cache recovery test
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-08-29 17:06:26 -04:00
Robert Bałdyga
1f9f79f11d
Merge pull request #250 from robertbaldyga/parts-meta-new-section
...
Move parts metadata to separate section
2019-08-29 14:15:31 +02:00
Jan Musiał
a308502d13
Merge pull request #251 from arutk/fix_sample
...
Update sample (cache name string as array)
2019-08-29 13:39:55 +02:00
Adam Rutkowski
5df29c80de
Update sample (cache name string as array)
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-08-29 12:59:39 -04:00
Jan Musial
ee3fdb0506
Change nhit_hash names to avoid collision with kernel
...
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-08-29 13:24:54 +02:00
Jan Musial
a1d3cf0c4d
Switching mechanism for promotion policies
...
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-08-29 13:24:26 +02:00
Robert Baldyga
d10c618065
Move parts metadata to separate section
...
Fix problem introduced by increasing partition name size to 1024 bytes,
which effectively made superblock bigger than one page. Due to this
flushing superblock required more than one io, which in case of dirty
shutdown between these ios resulted in CRC missmatch and made cache
recovery impossible.
Moving parts metadata to separate sections makes superblock fitting
in one page, effectively solving described problem.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-08-29 10:23:13 +02:00
Jan Musiał
0a9f197b10
Merge pull request #238 from arutk/split_cacheline_lock_trylock
...
Split cacheline locking implementation into trylock and lock
2019-08-29 09:49:53 +02:00
Jan Musiał
447333ea13
Merge pull request #249 from robertbaldyga/fix-env_strncpy-null-terminate
...
env: Ensure that env_strncpy() always produces NULL-terminated string
2019-08-29 09:48:07 +02:00
Robert Baldyga
74bd0e3f7b
env: Ensure that env_strncpy() always produces NULL-terminated string
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-08-29 08:13:37 +02:00
Adam Rutkowski
6dd1af7df7
Split cacheline locking implementation into trylock and lock
...
This change refactors the code in order to prepare for removing
global concurrency lock, which won't be needed after per-bucket
metadata locking is in place.
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-08-28 18:54:19 -04:00
Michal Rakowski
63ae2ab16f
Merge pull request #248 from KamilLepek/coverity_readme
...
Add coverity status badge
2019-08-28 21:55:35 +02:00
Kamil Lepek
d86de5782c
Add coverity status badge
...
Signed-off-by: Kamil Lepek <kamil.lepek94@gmail.com>
2019-08-28 16:58:24 +02:00
Robert Bałdyga
358c529eff
Merge pull request #243 from arutk/simplify_freelist_striping_init
...
Initialize freelist using metadata layout implementation
2019-08-27 17:12:04 +02:00
Michal Rakowski
e3a20c0da0
Merge pull request #239 from imjfckm/pp-implementation
...
nhit promotion policy implementation
2019-08-27 12:42:03 +02:00
Adam Rutkowski
860c8c7a0f
Initialize freelist using metadata layout implementation
...
Metadata layout (seq / striping) is already encapsulated
in ocf_metadata_layout_iface, no need to double this logic
in freelist initialization.
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-08-26 15:48:11 -04:00
Michał Mielewczyk
3812015f05
Merge pull request #242 from tomaszrybicki/example-add-metadata-updater
...
Added metadata updater logic to example
2019-08-22 14:49:29 +02:00
Jan Musial
62a0ccdd9f
nhit promotion policy implementation
...
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-08-22 13:34:38 +02:00
Tomasz Rybicki
a413d4ddae
Added metadata updater logic to example
...
Signed-off-by: Tomasz Rybicki <tomasz.rybicki@intel.com>
2019-08-21 16:14:37 +02:00
Michal Rakowski
43e8905456
Merge pull request #241 from mmichal10/cache-name-in-array
...
Store name for newly initialized cache in array instead of passing pointer.
2019-08-20 09:39:44 +02:00
Michal Mielewczyk
03590c880d
pyocf: store cache name for newly initialized cache in array.
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-08-20 03:31:32 -04:00
Michal Mielewczyk
2c27e9a433
Store name for newly initialized cache in array instead of passing pointer.
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-08-20 01:43:11 -04:00
Robert Bałdyga
8ed525ae7f
Merge pull request #234 from mdnfiras/sync-prim-destroyers
...
Adding synchronization primitives destroyers
2019-08-13 15:46:26 +02:00
Adam Rutkowski
71921ebdbc
Merge pull request #236 from mdnfiras/validate-io-addr-size
...
Verifying IO address and size
2019-08-13 15:27:31 +02:00
Firas Medini
9927859f88
Merge branch 'master' into sync-prim-destroyers
2019-08-13 05:49:26 -07:00
Firas Medini
33c96d226e
Verifying IO address and size
...
IO address and size must be multiple of sector size. If not, ocf_io_new() will return NULL.
Signed-off-by: Firas Medini <mdnfiras@yahoo.com>
2019-08-13 05:37:14 -07:00
Firas Medini
1f979f630b
Adding synchronization primitives destroyers
...
Environment should provide calls for destroying primitives (i.e. env_mutex_destroy()) and OCF should call these functions in its cleanup paths.
Signed-off-by: Firas Medini <mdnfiras@yahoo.com>
2019-08-13 05:13:11 -07:00
Robert Bałdyga
9619b03ad1
Merge pull request #237 from robertbaldyga/fix-tests-allgined-io
...
pyocf: Fix tests to send io aligned to sector size
2019-08-13 11:02:24 +02:00
Robert Baldyga
1815b784ad
pyocf: Fix tests to send io aligned to sector size
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-08-13 10:33:21 +02:00
Michal Rakowski
2219719282
Merge pull request #233 from Ostrokrzew/outgoing
...
OCF Cleanup
2019-08-12 10:58:32 +02:00
Slawomir_Jankowski
679bc38770
OCF Cleanup
...
**ocf_env**: deleting unused functions from main file
Signed-off-by: Slawomir_Jankowski <slawomir.jankowski@intel.com>
2019-08-09 14:45:29 +02:00
Michal Rakowski
34c8d135c2
Merge pull request #232 from robertbaldyga/remove-core-id-leavings
...
Remove remaining core_id occurrences from public API
2019-08-09 13:03:26 +02:00
Robert Baldyga
9730b2bd1f
Remove remaining core_id occurrences from public API
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-08-07 16:12:06 +02:00
Michal Rakowski
d499ef1c05
Merge pull request #227 from mmichal10/mark-core-added-false
...
Don't try to remove invalid cores
If valid cache metadata was read, but environment has changed (i.e. number of cache lines has changed) ocf (in error handling path) was trying to close cores which were not opened. It happened due to cores were marked in cache metadata as added, but any cache inserting operation didn't take place.
In this patch 'added' flag in cache metadata was replaced with more meaningful 'valid' - it is set if given core is stored in cache metadata. Moreover, new 'added' flag was added to core run-time metadata and it is set if given core is added to cache.
2019-08-07 13:37:59 +02:00
Michal Mielewczyk
cdc0a575a1
Added 'added' flag in core runtime data.
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-08-06 07:36:39 -04:00
Michal Mielewczyk
433a25a1b2
Renamed 'added' flag in core metadata to 'valid'.
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-08-06 07:08:12 -04:00
Robert Bałdyga
cc914de2bb
Merge pull request #231 from mmichal10/always-init-promotion-policy
...
Initialize promotion policy before cleaning policy.
2019-08-06 12:58:49 +02:00
Michal Mielewczyk
5dd09e823b
Initialize promotion policy before cleaning policy.
...
If cleaning policy didn't have init() function,
'_ocf_mngt_init_instance_load_complete' returned early and promotion policy
wasn't initialized at all.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-08-06 06:37:14 -04:00
Adam Rutkowski
9649f25415
Merge pull request #229 from robertbaldyga/cleanup-metadata
...
Metadata interface cleanup
2019-08-05 14:11:04 +02:00
Michal Mielewczyk
340ca76159
Move check for valid cache size in load.
...
Loaded cache size should be compared with acutal cache size after loading
superblock.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-08-05 07:58:38 -04:00
Robert Bałdyga
dddb44574c
Merge pull request #228 from mmichal10/ctx-destory-callback
...
Additional volume type ops: deinit.
2019-08-05 13:10:08 +02:00
Adam Rutkowski
efbd2cce0d
Merge pull request #230 from robertbaldyga/readme-link-to-doc
...
README: Add link to documentation
2019-08-05 12:51:15 +02:00
Michal Mielewczyk
0d37d14a36
pyocf: additional filed in volume type properties
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-08-05 06:39:27 -04:00
Robert Baldyga
c4f441ba6f
README: Fix clone address
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-08-05 12:18:46 +02:00