Revision tags: v25.01-rc1 |
|
#
fa3ab738 |
| 25-Oct-2024 |
Yankun Li <yankun@staff.sina.com> |
bdev/raid: Fix raid_bdev->sb null pointer
This patch adds a check to ensure that raid_bdev->sb is not NULL, with the goal of prohibiting the creation of a RAID block device using base block devices
bdev/raid: Fix raid_bdev->sb null pointer
This patch adds a check to ensure that raid_bdev->sb is not NULL, with the goal of prohibiting the creation of a RAID block device using base block devices that have a superblock.
Fixes issue #3565
Change-Id: I87985325eac8b623dd28ec01edef7a9e4613850a Signed-off-by: Yankun Li <yankun@staff.sina.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25375 Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Changpeng Liu <changpeliu@tencent.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Mellanox Build Bot Reviewed-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Reviewed-by: GangCao <gang.cao@intel.com>
show more ...
|
Revision tags: v24.09, v25.01-pre, v24.09-rc1 |
|
#
5031f0f3 |
| 19-Sep-2024 |
Slawomir Ptak <slawomir.ptak@intel.com> |
module/raid: Assign bdev_io buffers to raid_io
If an application does not allocate data and metadata buffers for the read operation and relies on the generic bdev layer to do the allocations, the da
module/raid: Assign bdev_io buffers to raid_io
If an application does not allocate data and metadata buffers for the read operation and relies on the generic bdev layer to do the allocations, the data iovecs and metadata pointer was not copied to the raid_io and not pushed down the I/O stack.
This fix copies the pointers once the allocations are complete. If the application did provide the buffers, this flow will still work since those pointers are already in the bdev_io and raid_io.
Change-Id: Ib9e212ec97b59c0ed57f2e48a35fdf8fd2a21a52 Signed-off-by: Slawomir Ptak <slawomir.ptak@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24961 Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
fbfc2c9d |
| 19-Sep-2024 |
Konrad Sztyber <konrad.sztyber@intel.com> |
bdev/raid: update SPDK_TRACE_REGISTER_FN() call
After commit 0eae01067000 ("trace: do not define fn in SPDK_TRACE_REGISTER_FN"), this macro now requires the trace function to be defined separately.
bdev/raid: update SPDK_TRACE_REGISTER_FN() call
After commit 0eae01067000 ("trace: do not define fn in SPDK_TRACE_REGISTER_FN"), this macro now requires the trace function to be defined separately. It updated all calls to this macro, but before it was merged a new one was added in bdev_raid. This patch fixes build failures that happen because of that.
Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com> Change-Id: I26633d276c1037daa567777906b2be6df1c90849 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24967 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Mellanox Build Bot Reviewed-by: Michal Berger <michal.berger@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz@tzawadzki.com>
show more ...
|
#
8d52c4c2 |
| 20-Aug-2024 |
xupeng-mingtu <jingmamour@gmail.com> |
add new trace BDEV_RAID_IO_START and BDEV_RAID_IO_DONE
Through the both new trace, we can analyze the time consumed by IO at the RAID layer and the time consumed by each base bdev IO. This is a trac
add new trace BDEV_RAID_IO_START and BDEV_RAID_IO_DONE
Through the both new trace, we can analyze the time consumed by IO at the RAID layer and the time consumed by each base bdev IO. This is a trace example of raid1 IO:
BDEV_IO_START id: i3481 BDEV_RAID_IO_START id: R870 (i3481) BDEV_IO_START id: i3482 (R870) BDEV_IO_START id: i3483 (R870) BDEV_IO_DONE id: i3482 (R870) time: 14.769 BDEV_IO_DONE id: i3483 (R870) time: 15.319 BDEV_RAID_IO_DONE id: R870 (i3481) time: 16.521 BDEV_IO_DONE id: i3481 time: 16.804
Change-Id: I228b660594a39721567e3a0d606b20e8e8b69e1b Signed-off-by: Xupeng Mingtu <xupeng9@staff.sina.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24894 Reviewed-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
3cd7b237 |
| 26-Jul-2024 |
Sebastian Brzezinka <sebastian.brzezinka@intel.com> |
bdev/raid: clear `data_offset` to allow it to be recalculated
If one of the slots of raid bdev is replaced, the optimal `data_offset` for the new disk added will be recalculated.
Fixes #3419
Chang
bdev/raid: clear `data_offset` to allow it to be recalculated
If one of the slots of raid bdev is replaced, the optimal `data_offset` for the new disk added will be recalculated.
Fixes #3419
Change-Id: I748ef2d3274f37d0a1e7cd4c443e316b8b0e45bc Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24339 Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com>
show more ...
|
#
a5cd4a6d |
| 16-Aug-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: call spdk_bdev_module_examine_done() asynchronously in sb case
Don't call spdk_bdev_module_examine_done() util the sb examine has actually completed.
Signed-off-by: Artur Paszkiewicz <artur.p
raid: call spdk_bdev_module_examine_done() asynchronously in sb case
Don't call spdk_bdev_module_examine_done() util the sb examine has actually completed.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I1e311e7d5dd7452e211dcd65e32b0eae322f2222 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24573 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <ben@nvidia.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
bbccfa09 |
| 16-Aug-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: factor out finishing examine to helper function
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I5c4cb2bec5682094c813aa69f101ea7a75b95463 Reviewed-on: https://review.
raid: factor out finishing examine to helper function
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I5c4cb2bec5682094c813aa69f101ea7a75b95463 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24572 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <ben@nvidia.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
fc2398df |
| 22-Jul-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: clear base bdev configure_cb after executing
Suggested-by: Konrad Sztyber <konrad.sztyber@intel.com> Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I04a7c3b28137f0f2
raid: clear base bdev configure_cb after executing
Suggested-by: Konrad Sztyber <konrad.sztyber@intel.com> Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I04a7c3b28137f0f2f466231ced23f434ee3fe05b Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24286 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
5558f3f5 |
| 17-Jul-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: complete bdev_raid_create after sb is written
If a raid_bdev is created with superblock, raid_bdev_configure() will not complete synchronously because it issues sb writes. Add a callback for r
raid: complete bdev_raid_create after sb is written
If a raid_bdev is created with superblock, raid_bdev_configure() will not complete synchronously because it issues sb writes. Add a callback for raid_bdev_configure() and use it to defer the final base bdev configure callback.
Fixes #3413
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: Ic1e629e80447390656aa3d4c1ac3f120a409be70 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24216 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|
#
d005e023 |
| 19-Jul-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: fix empty slot not updated in sb after resize
Slots for not configured base bdevs were omitted when updating the superblock. It caused wrong data size to be used if a base bdev in that slot wa
raid: fix empty slot not updated in sb after resize
Slots for not configured base bdevs were omitted when updating the superblock. It caused wrong data size to be used if a base bdev in that slot was later rebuilt and the raid was restarted.
Reported-by: Loïc Yavercovski <loic.yavercovski@gmail.com> Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I0666da02f544951a95f7acf16c2f7aae5a8a7ab7 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24260 Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
19f5787c |
| 05-Jun-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: skip configured base bdevs in sb examine
If a bdev with sb is added while raid_bdev_examine_others() is examining the base bdevs it may try to configure a base bdev again. Prevent it but allow
raid: skip configured base bdevs in sb examine
If a bdev with sb is added while raid_bdev_examine_others() is examining the base bdevs it may try to configure a base bdev again. Prevent it but allow raid_bdev_examine_others() to continue.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I203ac4af1e5c84d09c154967da8ddec99e289479 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23541 Reviewed-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
Revision tags: v24.05, v24.09-pre, v24.05-rc1, LTS, v24.01 |
|
#
89fd1730 |
| 25-Jan-2024 |
xupeng9 <xupeng9@staff.sina.com> |
bdev/raid: add qos for raid process
Change-Id: I5383d8658c59760ccaaec163e25d5e6d0cd8e1d0 Signed-off-by: xupeng-mingtu <jingmamour@gmail.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/
bdev/raid: add qos for raid process
Change-Id: I5383d8658c59760ccaaec163e25d5e6d0cd8e1d0 Signed-off-by: xupeng-mingtu <jingmamour@gmail.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/21732 Reviewed-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot
show more ...
|
#
fcf59a6f |
| 10-Jun-2024 |
Shuhei Matsumoto <smatsumoto@nvidia.com> |
module/bdev: Initialize bdev->dif_pi_format
Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Change-Id: I5393205a7a29eca2577b4c0772ec08526fd8a8c0 Reviewed-on: https://review.spdk.io/gerrit/c/
module/bdev: Initialize bdev->dif_pi_format
Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Change-Id: I5393205a7a29eca2577b4c0772ec08526fd8a8c0 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23626 Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <ben@nvidia.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
f8465ae4 |
| 26-Apr-2024 |
Sebastian Brzezinka <sebastian.brzezinka@intel.com> |
bdev/raid: Release claimed base bdevs for raids in module fini
When SPDK terminates with a signal, some of the raid bdevs that were in the 'configuring' state won't close properly. This patch ensure
bdev/raid: Release claimed base bdevs for raids in module fini
When SPDK terminates with a signal, some of the raid bdevs that were in the 'configuring' state won't close properly. This patch ensures that all raid bdevs resources are freed and unclaimed at exit.
Change-Id: Iebc139caf59ea41c8adf60f4b2c2a009e516ba5f Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22929 Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com>
show more ...
|
#
9820a949 |
| 18-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: add a default completion status to raid_bdev_io
As base I/Os complete, the final raid I/O completion status will change only if the base I/O status is different than the default. So if the def
raid: add a default completion status to raid_bdev_io
As base I/Os complete, the final raid I/O completion status will change only if the base I/O status is different than the default. So if the default is "FAILED" and a base I/O completes with "SUCCESS", it will be set to "SUCCESS" and won't change if subsequent I/Os complete with "FAILED".
This will be used by raid1 writes, where the completion status should be successful even if some base I/Os failed.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: Idc800baacb9efc36207f77c31a01ec5a2867ccdd Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22845 Reviewed-by: Jim Harris <jim.harris@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
f1a03e33 |
| 18-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: add support for failing a base bdev due to io error
Add a function to be used by the raid modules to fail a base bdev when handling a failed I/O.
Signed-off-by: Artur Paszkiewicz <artur.paszk
raid: add support for failing a base bdev due to io error
Add a function to be used by the raid modules to fail a base bdev when handling a failed I/O.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I5db039772f42be88768450f3bce5602c435e7fad Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22844 Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
35a054db |
| 18-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: utility function to get a base bdev in io context
This will be used to get a pointer to struct raid_base_bdev_info from I/O completion context when we only have the spdk_bdev.
Signed-off-by:
raid: utility function to get a base bdev in io context
This will be used to get a pointer to struct raid_base_bdev_info from I/O completion context when we only have the spdk_bdev.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I4e1e87ed31c9812859f0a0e1444a3a678682db62 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22843 Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
cb768e81 |
| 17-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: write sb earlier when removing a base bdev
Update the superblock as soon as the raid bdev is quiesced, then continue with removing the base bdev.
The condition in _raid_bdev_write_superblock(
raid: write sb earlier when removing a base bdev
Update the superblock as soon as the raid bdev is quiesced, then continue with removing the base bdev.
The condition in _raid_bdev_write_superblock() has to be changed because base_info->desc is not NULL now, only remove_scheduled is set at this stage of removing the base bdev.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I6a55d0ed5d0c1e3fc38825ac23d1556d42d2e801 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22842 Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot
show more ...
|
#
1b9c5629 |
| 17-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: move the raid I/O wrappers back to the header
Instead of having these in bdev_raid.c, just make raid_bdev_remap_dix_reftag() public. This allows to have the unit tests a little simpler and bet
raid: move the raid I/O wrappers back to the header
Instead of having these in bdev_raid.c, just make raid_bdev_remap_dix_reftag() public. This allows to have the unit tests a little simpler and better reflecting the real behavior.
This effectively reverts 2c9dfc37c ("module/raid: Move the RAID I/O wrappers").
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I92de84d7cbc233f5d744aedf6e77d0728ecdaa72 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22828 Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
1a587504 |
| 10-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: fix race between process starting and removing a base bdev
Abort starting the process if a base bdev was removed in the meantime.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com
raid: fix race between process starting and removing a base bdev
Abort starting the process if a base bdev was removed in the meantime.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I45345322c6e21837d257cbe0598c5eb19f3f41be Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22773 Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Mateusz Kozlowski <mateusz.kozlowski@solidigm.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
b3750343 |
| 10-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: don't remove an unconfigured base bdev
Also remove the redundant check from a caller of _raid_bdev_remove_base_bdev().
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id
raid: don't remove an unconfigured base bdev
Also remove the redundant check from a caller of _raid_bdev_remove_base_bdev().
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I53b873d1aab35ce8d7be7317beaa5ee4553aba13 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22752 Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Mateusz Kozlowski <mateusz.kozlowski@solidigm.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
a6708553 |
| 10-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: fix race between starting rebuild and creating io channel
If a channel was created after adding a base bdev but before raid_bdev->process was set it would treat the target bdev as normal. Add
raid: fix race between starting rebuild and creating io channel
If a channel was created after adding a base bdev but before raid_bdev->process was set it would treat the target bdev as normal. Add a new flag to base bdev to allow seeing that it is a process target before the process starts.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I041968e748d5f48e83c4c00f349ea148221ded31 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22751 Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
2dc74a00 |
| 13-May-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: free base bdev earlier during removal
The base bdev can be freed before unquiescing the raid bdev. This also assures that it is freed even if unquiesce fails.
Signed-off-by: Artur Paszkiewicz
raid: free base bdev earlier during removal
The base bdev can be freed before unquiescing the raid bdev. This also assures that it is freed even if unquiesce fails.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I8d215e34d059cefdbc5c51f22578c518873f6819 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23148 Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Mateusz Kozlowski <mateusz.kozlowski@solidigm.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
6518a98d |
| 10-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: remove base_bdev_lock
This lock was necessary to prevent accessing the base bdev desc by the io channels during base bdev removal. Instead of relying on the desc pointer, first check is_config
raid: remove base_bdev_lock
This lock was necessary to prevent accessing the base bdev desc by the io channels during base bdev removal. Instead of relying on the desc pointer, first check is_configured. If it is true, the descriptor won't become invalid until the end of the function, because now there is a spdk_for_each_channel() call between clearing is_configured and closing the descriptor.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: Ia7c3a87764c2992c3f96e89afd98b048f77c62b7 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22750 Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Mateusz Kozlowski <mateusz.kozlowski@solidigm.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
96aff3c9 |
| 09-Apr-2024 |
Artur Paszkiewicz <artur.paszkiewicz@intel.com> |
raid: fix some issues in raid_bdev_write_config_json()
Don't write out strip size if it is not set, also skip the superblock field because its value is always false here.
Don't just skip printing r
raid: fix some issues in raid_bdev_write_config_json()
Don't write out strip size if it is not set, also skip the superblock field because its value is always false here.
Don't just skip printing removed base bdevs because recreating a raid bdev from such config would result in a raid with a smaller number of base bdevs and different layout in case of raid5f. Creating a raid bdev with missing base bdevs is currently not possible, so make up a bdev name for a missing slot that will prevent from actually activating the raid.
Signed-off-by: Artur Paszkiewicz <artur.paszkiewicz@intel.com> Change-Id: I58392b1e97a7ccb8a51559060bb6d4e303a7eee6 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22749 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|