Commit Graph

9 Commits

Author SHA1 Message Date
Jan Musial
f385cc79ea Fix configuring cache with PP in init script
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-12-12 10:23:52 +01:00
Jan Musial
b91fc1ca4a Wait for cas_ctrl device in casctl
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-11-18 15:00:31 +01:00
Jan Musial
aaedfb35dd Change startup procedure
Current startup procedure works on an assumption that we will
deal with asynchronously appearing devices in asynchronous way
(udev rules) and synchronous events in the system (systemd units)
won't interfere. If we would break anything (mounts) we would just
take those units and restart them. This tactic was working as long
as resetting systemd units took reasonable time.

As hackish as it sounds it worked in all systems that the software
has been validated on. Unfortunately it stopped working because
of *.mount units taking MUCH longer time to restart even on
mainstream OSes, so it's time to change.

This change implements open-cas systemd service which will wait
synchronously with systemd bootup process for all required Open CAS
devices to start. If they don't we fail the boot process just as
failing mounts would. We also make sure that this process takes place
before any mounts (aside from root FS and other critical FS's) are
even attempted. Now opencas-mount-utility can be discarded.

To override this behaviour on per-core basis you can specify
lazy_startup=true option in opencas.conf.

Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-11-14 12:20:08 +01:00
Jan Musial
86ccc817a6 Fix tests after moving to python3
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-09-20 13:40:44 +02:00
Jan Musial
735c1e5008 Handle promotion_policy as conf param
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-09-19 08:38:35 +02:00
Slawomir_Jankowski
3d5d82f892 Translate python2 to python3
*opencas.py*: changed result class to contain text values instead of bytes,
translated chache configuring methods to py3,
*init script*: changed regex input on raw string to work in py3.

Signed-off-by: Slawomir_Jankowski <slawomir.jankowski@intel.com>
2019-08-05 13:19:04 +02:00
Adam Rutkowski
ffa1f4b067 Extend CAS interface with Write-only cache mode
Write-only (WO) cache mode is similar to Write-back (WB), 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.

Write-only cache mode is behaving similarly to Write-back with
respect to flushing dirty data. For example it is required to
explicitly enable/disable flushing when changing cache mode
from WO to something other than WB.

Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-06-13 15:54:51 -04:00
Jan Musial
aa0f3c078a Add tests for opencas.py
Signed-off-by: Jan Musial <jan.musial@intel.com>
2019-05-28 17:56:15 +02:00
Robert Baldyga
94e8ca09e0 Initial commit
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-03-29 08:45:50 +01:00