Commit Graph

1448 Commits

Author SHA1 Message Date
Karolina Rogowska
5f59376ea9 test fix: test_ioclass_eviction_priority
Using workload path per each io class

Signed-off-by: Karolina Rogowska <karolina.rogowska@intel.com>
2021-03-31 20:25:15 +02:00
Michał Mielewczyk
7a3b248c35
Merge pull request #764 from mmkayPL/false_stats
Change method for calculating 'dirty_for' statistic
2021-03-31 12:23:53 +02:00
Michał Mielewczyk
b1fe770aa0
Merge pull request #777 from arutk/ocf_310321
OCF update
2021-03-31 12:16:53 +02:00
Adam Rutkowski
d3a16d82d8 OCF update
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2021-03-31 12:32:49 -05:00
Karolina Rogowska
ade2384290 test fix: test_ioclass_pid
Signed-off-by: Karolina Rogowska <karolina.rogowska@intel.com>
2021-03-30 16:48:20 +02:00
Robert Baldyga
f77e5a9b49
Merge pull request #768 from mmkayPL/fix-core-size-calculation
Change core size gb calculation to use 64bit parameter
2021-03-30 09:47:29 +02:00
Robert Baldyga
5176ac3359
Merge pull request #771 from robertbaldyga/fix-casadm-long-path-printing
casadm: Fix printing long device paths
2021-03-30 09:28:18 +02:00
Robert Baldyga
8306de7b99 casadm: Fix printing long device paths
Don't break line when first word in column is too long to fit into the
screen.

Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-03-29 18:35:25 +02:00
Kozlowski Mateusz
32b3c98527 Change core size gb calculation to use 64bit parameter
Fixes #766

Signed-off-by: Kozlowski Mateusz <mateusz.kozlowski@intel.com>
2021-03-29 13:27:47 +02:00
Sha Fanghao
b533e2cbf9 opencas.py uses the f-string feature of python3.6+.
Signed-off-by: Sha Fanghao <shafanghao@gmail.com>
2021-03-29 18:17:11 +08:00
Kozlowski Mateusz
ab0a7e0a44 Add detection of ktime_get_real_ts64 vs getnstimeofday
Signed-off-by: Kozlowski Mateusz <mateusz.kozlowski@intel.com>
2021-03-26 13:46:09 +01:00
Slawomir Jankowski
584ef99143 Change time parameter type in printing
Type of `dirty_for` in structs needs to be unified.
Values stored in these fields (both in cache and core info structs)
are  unsigned 64-bits ints but `dirty_for`s were unsigned 32-bits ints
(vide changes in OCF).

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-03-26 13:46:09 +01:00
Slawomir Jankowski
eef4e49904 Use time since epoch instead of jiffies
If time is counted in jiffies, machine reboot brokes `dirty for`
statistic for caches loaded at boot. The counter overflows and
`dirty for` shows some huge values.
Cast ticks to unsigned long.
Add necessary header.
Move `env_msleep` to `TIME` subgroup of header.
Move `env_time_after` below time converting functions.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-03-26 13:46:09 +01:00
Michał Mielewczyk
6c4bf5a9ba
Merge pull request #763 from arutk/ocf_260321_2
OCF update
2021-03-26 12:35:46 +01:00
Adam Rutkowski
31bf12f96d OCF update
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2021-03-26 12:23:23 +01:00
Michał Mielewczyk
a7553fecee
Merge pull request #744 from mmkayPL/cacheline-alignment
Cacheline alignment
2021-03-26 12:02:45 +01:00
Robert Baldyga
a5fee7c3eb
Merge pull request #753 from robertbaldyga/test-seq-cutoff-promo-fix
Add sequential cutoff promotion count to test API
2021-03-23 17:56:10 +01:00
Robert Baldyga
3741f38a5f
Merge pull request #759 from mmkayPL/seq-cutoff-ocf-lock-update
Update ocf (bugfixes)
2021-03-23 15:01:39 +01:00
Kozlowski Mateusz
e10b87d3b7 Update ocf (bugfixes)
Fixes #757
Fixes #758

Signed-off-by: Kozlowski Mateusz <mateusz.kozlowski@intel.com>
2021-03-23 14:03:58 +01:00
Robert Baldyga
d220aad77b test: Extend seq cutoff test to validate promotion count
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-03-23 07:55:46 +01:00
Robert Baldyga
ff4dca4622 Add sequential cutoff promotion count to test API
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-03-23 07:55:46 +01:00
Kozlowski Mateusz
74ca3daa37 Classifier alignment
Move lock to a different cacheline to avoid trashing

Signed-off-by: Kozlowski Mateusz <mateusz.kozlowski@intel.com>
2021-03-22 08:26:55 +01:00
Kozlowski Mateusz
da9a6204d3 General structure packing
Pack often used structures, so that less memory/cachelines are used

Signed-off-by: Kozlowski Mateusz <mateusz.kozlowski@intel.com>
2021-03-22 08:26:55 +01:00
Kozlowski Mateusz
c751974ae0 Allocator structures cacheline alignment
Align atomic fields to a different cacheline, so no false sharing between
CPUs occur.

Signed-off-by: Kozlowski Mateusz <mateusz.kozlowski@intel.com>
2021-03-22 08:26:55 +01:00
Robert Baldyga
94dc9048c7
Merge pull request #743 from robertbaldyga/makefile-fix-uninstall
Fix Makefile error handling
2021-03-19 18:43:57 +01:00
Robert Baldyga
880cfadde9 Makefile: improve uninstall error handling
Introduce helper functions to handle uninstall errors gracefully.

Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-03-19 15:37:55 +01:00
Robert Baldyga
e58dae02ac Move build system tools to separate directory
Separate tools used internally by build system from utilities that are
part of Open CAS installation package.

Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-03-19 15:37:55 +01:00
Robert Baldyga
feaafdfe06 Makefile: Little cleanup
Move files to components they belong to.

Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-03-19 15:27:03 +01:00
Robert Baldyga
e9b344cc1e
Merge pull request #741 from robertbaldyga/update-ocf-20210319
Update OCF
2021-03-19 12:31:53 +01:00
Robert Baldyga
6824eaf5ea Update OCF
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-03-19 11:59:09 +01:00
Robert Baldyga
6f71c47e56
Merge pull request #739 from arutk/ocf_190321
OCF update
2021-03-19 09:36:01 +01:00
Adam Rutkowski
abfcd02a96 OCF update
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2021-03-19 10:46:04 -05:00
Michał Mielewczyk
f4abf77f6b
Merge pull request #737 from arutk/ocf_170321
OCF update (mostly bugfix)
2021-03-17 12:02:26 +01:00
Adam Rutkowski
97d916b077 OCF update (mostly bugfix)
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2021-03-17 13:48:54 -05:00
Robert Baldyga
4a0fba8e79
Merge pull request #727 from mmichal10/seq-cutoff-consts
Seq cutoff consts
2021-03-16 17:11:58 +01:00
Karolina Rogowska
a9f33691ab fix warning in example_test.py
Signed-off-by: Karolina Rogowska <karolina.rogowska@intel.com>
2021-03-16 15:23:49 +01:00
Michal Mielewczyk
5e035f4b52 casadm: improve error logging
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2021-03-12 14:12:02 +01:00
Michal Mielewczyk
f1c34340e0 Change REMOVE_INACTIVE ioctl type
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2021-03-12 09:21:49 +01:00
Michal Mielewczyk
12db6b4443 Remove redundant cache being stopped check
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2021-03-12 09:20:19 +01:00
Michal Mielewczyk
66f30dcf12 casadm: use constans for parsing seq cutoff params
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2021-03-12 09:12:45 +01:00
Michał Mielewczyk
a70a862c6d
Merge pull request #724 from mmichal10/update-ocf-3-10-2021
update ocf: allocators for requests and metadata
2021-03-10 17:00:23 +01:00
Michal Mielewczyk
a6c7d57527 update ocf: allocators for requests and metadata
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2021-03-10 16:49:31 +01:00
Michał Mielewczyk
713f5b3b0e
Merge pull request #690 from Ostrokrzew/removal
Introduce removing inactive core command
2021-03-10 15:56:53 +01:00
Slawomir Jankowski
461a4f2d96 Introduce "remove inactive core" to cas_cache module
Create module-side handling of inactive core removal.
Extract core functionality of core removal that applies to inactive core
and copy it to `cache_mngt_remove_inactive_core` function.
Return proper error if core is active.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-03-10 14:39:07 +01:00
Slawomir Jankowski
696a2e175c Add KCAS_IOCTL_REMOVE_INACTIVE request to cas_cache module
Add IOCTL code and struct for above request.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-03-10 14:39:07 +01:00
Slawomir Jankowski
2514f5fa5b Add "remove inactive" command to casadm
Add `remove_inactive_core` function to casadm's code
to handle `remove inactive` command.
Print messages based on errors returned when command fails.
Add documentation comment to new function.
Add CLI part of introduced command.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-03-10 14:39:07 +01:00
Slawomir Jankowski
760b60628c Add KCAS_ERR_CORE_IN_ACTIVE_STATE error code.
New error code will allow to properly handle issues caused by wrong
usage of `remove inactive core` command.
It will also allow to print meaningful error messages.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-03-10 14:39:07 +01:00
Slawomir Jankowski
2bf6e42dea Print separate messages for different "remove core" return codes
Change extended error message for `KCAS_ERR_REMOVED_DIRTY`.
Print informative messages when `remove core` command fails.
Make separate error messages for detaching.
Update help printouts.
Update documentation comments.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-03-10 14:26:09 +01:00
Slawomir Jankowski
f955ce890c Remove inactive core handling from "remove core"
FLush only active core during core removal.
During core removal with `casadm -R` there's a flush triggered.
This flush shall be skipped for inactive cores.
Change return code when `casadm -R` is called with `force` flag.
There was no info about dirty data when core was removed without flush.
Do not destroy exported object while core is inactive.
Perform detach only on active cores.
Skip removing inactive core with command for active cores.

Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2021-03-10 14:26:09 +01:00
Robert Baldyga
f0cbe483a3
Merge pull request #719 from mmichal10/fix-stop
Test whether a cache is already being stopped
2021-03-09 12:08:37 +01:00