Robert Baldyga
20ad0478c8
rpool: Mark an entry for kmemleak outside of atomic context
...
The kmemleak_alloc() function can sleep, thus should not be called
under spinlock. This patch fixes bug occurring on debug kernel with
kmemleak enabled.
Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
2024-09-02 12:16:59 +02:00
Robert Baldyga
5c4b5634cb
Add missing "static" to the local functions
...
Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
2024-05-14 08:22:34 +02:00
Robert Baldyga
7dd5fa8029
Add missing headers
...
Signed-off-by: Robert Baldyga <robert.baldyga@huawei.com>
2024-05-14 08:22:34 +02:00
Michal Mielewczyk
38bef1f7fe
Integrate kmemleak into CAS
...
Kmemleak is a tool which allows to detect memory leaks in kernel. It requires
`CONFIG_DEBUG_KMEMLEAK` to be enabled during kernel compilation. Otherwise all
the kmemleak_* functions are NOPs.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2022-09-26 15:44:16 +02:00
Adam Rutkowski
aaab620c8d
use INIT_WORK_ONSTACK for work on stack
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2022-09-01 01:04:22 +02:00
Robert Baldyga
91508af014
Remove unused error code
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2022-03-09 15:52:47 +01:00
Gal Hammer
4bb435555f
configure/bd_part_count: adapt to kernel 5.12
...
Moved cas_blk_get_part_count function to configure section after the
the disk's partitions table was changed to xarray.
Signed-off-by: Gal Hammer <gal.hammer@huawei.com>
Signed-off-by: Shai Fultheim <shai.fultheim@huawei.com>
2022-03-07 09:44:35 +01:00
Robert Baldyga
990f55d250
Fix error mapping
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-11-26 09:29:37 +01:00
Robert Baldyga
57a3938872
Improve error mapping code
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-11-25 17:11:07 +01:00
Robert Baldyga
73461fc26d
Add missing error mappings
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-11-25 16:27:08 +01:00
Rafal Stefanowski
acec05060d
Fix license
...
Change license to BSD-3-Clause
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2021-10-28 12:46:42 +02:00
Michal Mielewczyk
c68de77799
Remove remains of atomic writes support
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2021-08-16 16:01:21 +02:00
Robert Baldyga
c968285d9f
Remove upgrade-in-flight feature
...
Due to changes in Linux kernel this feature is not working anymore.
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2021-08-11 20:33:16 +02:00
Kozlowski Mateusz
647124895f
Update OCF
...
Remove metadata updater
Update mpool API
Signed-off-by: Kozlowski Mateusz <mateusz.kozlowski@intel.com>
2021-06-21 21:57:10 +02:00
Michal Mielewczyk
0e8758528b
Return mempool instead of enum
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2021-04-22 14:17:39 +02:00
Michal Mielewczyk
083d6fe93e
Clean-up 'remove-core' command
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2021-04-09 19:57:07 +02: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
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
Jan Musial
f1a19363e5
Include mpool in env and use new allocator API
...
Signed-off-by: Jan Musial <jan.musial@intel.com>
2021-03-05 14:02:08 +01:00
Rafal Stefanowski
43f43068ad
Update copyright statements (2021)
...
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2021-01-21 13:15:38 +01:00
Robert Baldyga
bcd6f4831c
Update atomic mode support check
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-12-22 11:33:38 +01:00
Robert Baldyga
ca7f809965
configure: Add __vmalloc() wrapper
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-12-22 11:33:38 +01:00
Michal Rakowski
1cd1db2b45
Fully remove format nvme command
...
Since there is no kernel-kernel api available to communicate
with nvme driver it is more convenient to use some nvme-dedicated
software (e.g. nvme-cli) to manage nvme devices.
It is even not possible to format nvme device with CAS using current
implementation on newest kernels.
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2020-08-11 06:10:31 -04:00
Rafal Stefanowski
44b4020cc1
Update copyright statements
...
Signed-off-by: Rafal Stefanowski <rafal.stefanowski@intel.com>
2020-05-04 16:47:38 +02:00
Robert Baldyga
d694228263
Update OCF and handle new error code
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2020-04-06 09:03:14 +02:00
Ostrokrzew
bbc03abdf7
Casadm update
...
Add extended error message in casadm.
Add shortened code mapping for new error code.
Signed-off-by: Ostrokrzew <slawomir.jankowski@intel.com>
Signed-off-by: Slawomir Jankowski <slawomir.jankowski@intel.com>
2020-01-15 14:30:58 +01:00
Adam Rutkowski
f9f00df576
Use vmalloc instead of kmalloc in mem pools
...
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-10-23 16:04:18 -04:00
Adam Rutkowski
f7cc3d414c
Fix cas_vfree
...
1. cas_vfree implementation is now properly selected based on kernel version
2. cas_vfree semantics now accepts NULL pionter as a valid input
Signed-off-by: Adam Rutkowski <adam.j.rutkowski@intel.com>
2019-10-18 17:29:05 -04:00
Robert Baldyga
d5207cb391
Update OCF -> POSIX error mapping
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-09-25 17:22:34 +02:00
Michal Mielewczyk
a48db4aadf
Fix printing cache properties in upgrade.
...
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-09-18 05:00:30 -04:00
Michal Rakowski
f9c0c929c1
Translate OCF-error-codes in IO path
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-06-05 15:34:04 +02:00
Robert Baldyga
23e330a21f
Adapt to new cache lock API
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-06-04 15:24:55 +02:00
Robert Baldyga
8d59e41e20
Add utils_mpool
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-06-04 14:40:22 +02:00
Michal Mielewczyk
1e5355eba1
Extending 'configure' script
...
Functions and macros dependent on different kernel versions are now generated
before compilation basing on current kernel capabilities instead of hardcoding
them for specific kernels.
Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
2019-05-30 06:29:07 -04:00
Michal Rakowski
637ca6e2f4
More descriptive err msg for NVMe format
...
Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
2019-05-10 13:31:10 +02:00
Robert Baldyga
94e8ca09e0
Initial commit
...
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2019-03-29 08:45:50 +01:00