Revision tags: v25.01-rc1 |
|
#
a2f5e1c2 |
| 08-Nov-2024 |
Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> |
blob: don't free bs when spdk_bs_destroy/spdk_bs_unload fails
Error handling of spdk_bs_destroy and spdk_bs_unload is confusing. They may or may not free the spdk_blob_store structure on error, depe
blob: don't free bs when spdk_bs_destroy/spdk_bs_unload fails
Error handling of spdk_bs_destroy and spdk_bs_unload is confusing. They may or may not free the spdk_blob_store structure on error, depending on when the error happens. And users can not know if the structure has been freed after the processes finished, thus unable to handle it correctly.
To fix this problem, we only free the structure when there are no errors happended. In this way, users can be sure that the structure pointer is still valid after the failed opertation. They can then retry the operation or debug the failure.
Fixes #3560.
Change-Id: I4f7194ab8fce4f1a408ce3e6500514fd214427d4 Signed-off-by: Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25472 Reviewed-by: Jim Harris <jim.harris@nvidia.com> Reviewed-by: GangCao <gang.cao@intel.com> Reviewed-by: Yankun Li <845245370@qq.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Mellanox Build Bot
show more ...
|
#
04524ea4 |
| 08-Nov-2024 |
Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> |
blob: fix possible memory leak in bs loading
If I/O errors happen during blobstore loading, the allocated memory for spdk_bs_load_ctx->mask may be leaked.
Change-Id: I7e802dfb1b719b1ba23f70bdb216e7
blob: fix possible memory leak in bs loading
If I/O errors happen during blobstore loading, the allocated memory for spdk_bs_load_ctx->mask may be leaked.
Change-Id: I7e802dfb1b719b1ba23f70bdb216e7f9cb35357e Signed-off-by: Jinlong Chen <chenjinlong.cjl@alibaba-inc.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25470 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Mellanox Build Bot Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com>
show more ...
|
#
2dc4a231 |
| 22-Oct-2024 |
Atul Malakar <a.malakar@samsung.com> |
blob: Add support for variable metadata page size
Currently SPDK blobstore depends on 4KB atomicity of metadata. So, Metadata page size will be made variable based on the physical block size reporte
blob: Add support for variable metadata page size
Currently SPDK blobstore depends on 4KB atomicity of metadata. So, Metadata page size will be made variable based on the physical block size reported by the underlying device. This will enable blobstore to store metadata in IU-sized chunks, not always 4KB.
blobstore.c uses SPDK_BS_PAGE_SIZE (4KB) hardcoded at many places. To remove this make the metadata page size variable, phys_blocklen is added to spdk_bs_dev struct and md_page_size is added to spdk_bs_super_block struct.
Change-Id: I29d073eb4f4341a94a0675e70492b9186382f97f Signed-off-by: Atul Malakar <a.malakar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25130 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <ben@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Jim Harris <jim.harris@nvidia.com>
show more ...
|
#
60164a9d |
| 24-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
test/unit/blob: do not hardcode size of reserved field
bs_test_recover_cluster_count() builds a super block field by field. But it zeroes the reserved field with a hardcoded size, instead of getting
test/unit/blob: do not hardcode size of reserved field
bs_test_recover_cluster_count() builds a super block field by field. But it zeroes the reserved field with a hardcoded size, instead of getting the size of the reserved field.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: I04be4ec8bf65d8e95b592ca5d262961026b72d95 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25369 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Mellanox Build Bot Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Alliswell <hisunzhenliang@outlook.com>
show more ...
|
#
3299bf6d |
| 23-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
blob: remove all references to pages as io_units
When blobstore was first created, everything was in terms of 4KB pages - this included metadata page size and the unit for I/O operations.
A bit lat
blob: remove all references to pages as io_units
When blobstore was first created, everything was in terms of 4KB pages - this included metadata page size and the unit for I/O operations.
A bit later, we introduced concept of "io_unit". If a blobstore was put on a bdev with 512 blocksize, then the io_unit could be 512 bytes.
But when this happened, we should have changed all of the blobstore code such that remaining "page" references only referred to metadata pages. Instead, we left a bunch of places where we would convert various values to/from a number of 4KB pages, and then to the number of io_units. This made the code quite confusing, since direct conversion to/from io_units would have been much clearer.
This existing problem was exacerbated with the upcoming patch to support variable metadata page sizes. We need things like spdk_bs_get_page_size() to return the size of the metadata pages, which may not be 4KB.
So make all of the changes necessary such that all references to "page" now means "metadata page". This includes removing the spdk_blob_get_num_pages() function, which no longer makes sense.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: I66e93e7a4325a3b032bb16edaf657ef12044e1fd Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25368 Community-CI: Mellanox Build Bot Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
82d52845 |
| 22-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
test/unit/blob: use io_unit_size in more places
When blobstore was first created, we had concept of "page size". This size was used both as the block size of blobs (i.e. the units that users could r
test/unit/blob: use io_unit_size in more places
When blobstore was first created, we had concept of "page size". This size was used both as the block size of blobs (i.e. the units that users could read/write) and the metadata page size. They were both hardcoded to 4096.
"io unit size" was introduced a long time ago. This allowed IO in sizes different than 4096, usually 512. spdk_bs_get_io_unit_size() can be used to get this value.
We are also working on support for metadata pages sizes greater than 4096. spdk_bs_get_page_size() will continue to return the size of a metadata page, it may just not always be 4096.
But the unit tests in a lot of places use "page size" when "io unit size" should be used instead. Many of the unit tests use 4096 as the default blocklen, so everything still worked. But let's change these to use io_unit_size correctly now, so that they will still pass when the large IU metadata page sizes are introduced.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: I81d9d9b711a20e84bb31181dd167d2f7916500e0 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25315 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Ben Walker <ben@nvidia.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
1390df9e |
| 22-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
test/unit/blob: do not make assumptions about first data cluster
A bunch of blobstore unit tests make assumptions that the first data cluster is cluster index 1 (meaning cluster index 0 contains all
test/unit/blob: do not make assumptions about first data cluster
A bunch of blobstore unit tests make assumptions that the first data cluster is cluster index 1 (meaning cluster index 0 contains all of the metadata).
But to support variable metadata page sizes, this assumption is no longer valid. For example, with 16KB metadata page sizes, the metadata will take up more than 1 cluster.
So improve the unit tests to remove assumptions in this area.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: If5112b8bcb7124cadc292dd1fde466cbf3d91cd4 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25314 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Ben Walker <ben@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Mellanox Build Bot
show more ...
|
#
1b0a702c |
| 23-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
test/unit/blob: remove useless asserts from bs_grow_live_*** unit tests
There are a couple of asserts that do nothing but make assumptions that the metadata only consumes one cluster. Remove them si
test/unit/blob: remove useless asserts from bs_grow_live_*** unit tests
There are a couple of asserts that do nothing but make assumptions that the metadata only consumes one cluster. Remove them since this assumption will be invalid in upcoming patches which support larger md page sizes.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: I86d0fe487939669d01b604d0155188356a12f794 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25313 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
8fb14726 |
| 23-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
test/unit/blob: add IO_UT_BLOCKS_PER_CLUSTER
This avoids duplicating some hardcoded values.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: Ib054540d6b796480c498d4091959219710d1d243 R
test/unit/blob: add IO_UT_BLOCKS_PER_CLUSTER
This avoids duplicating some hardcoded values.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: Ib054540d6b796480c498d4091959219710d1d243 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25312 Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Mellanox Build Bot Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
91a55bfe |
| 23-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
test/unit/blob: make payload buffers sized based on the cluster size
Previously the payload buffers were twice as big as they needed to be. This didn't really harm anything, but it raised questions
test/unit/blob: make payload buffers sized based on the cluster size
Previously the payload buffers were twice as big as they needed to be. This didn't really harm anything, but it raised questions why they were that size. It's actually better to size them exactly as needed, since then ASAN can catch overflows.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: I15e835703bcb147f770aad8e06c2bc6947abf276 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25311 Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
9e554deb |
| 23-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
test/unit/blob: add SZ to represent cluster size in blocks for io tests
The various test_io/test_iov helper functions are littered with hard-coded values based on a known size of 32 blocks per clust
test/unit/blob: add SZ to represent cluster size in blocks for io tests
The various test_io/test_iov helper functions are littered with hard-coded values based on a known size of 32 blocks per cluster. We will need to increase this size in an upcoming patch, to support larger metadata page sizes. But instead of replacing all of the existing hard-coded values with new hard-coded values, introduce local SZ variables, and do various math based on that. Then increasing the size of these clusters in the later patch will be trivial.
Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: Ie931b026e7b274854fbde492f8a785d5a03b5398 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25310 Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <ben@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
show more ...
|
#
d0dfbef6 |
| 23-Oct-2024 |
Jim Harris <jim.harris@samsung.com> |
test/unit/blob: introduce g_phys_blocklen
Up until now, the unit tests were all just hardcoded for 4096B md page size. Upcoming patches will enable larger md page sizes. So introduce a suite paramet
test/unit/blob: introduce g_phys_blocklen
Up until now, the unit tests were all just hardcoded for 4096B md page size. Upcoming patches will enable larger md page sizes. So introduce a suite parameter "g_phys_blocklen" which for now will always be 4096. Future patches will emulate block devices with a larger phys_blocklen, which is used as the md page size by default.
Signed-off-by: Atul Malakar <a.malakar@samsung.com> Signed-off-by: Jim Harris <jim.harris@samsung.com> Change-Id: I133113474938d2b9490161a856a32ebfe659d674 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25309 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <ben@nvidia.com> Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
#
75a12cbf |
| 10-Oct-2024 |
Slawomir Ptak <slawomir.ptak@intel.com> |
test: Comparison operator fixes
Change-Id: I1296b19b590c2c6cbb75b9362e441cd6219d7a9f Signed-off-by: Slawomir Ptak <slawomir.ptak@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2
test: Comparison operator fixes
Change-Id: I1296b19b590c2c6cbb75b9362e441cd6219d7a9f Signed-off-by: Slawomir Ptak <slawomir.ptak@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25198 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
show more ...
|
Revision tags: v24.09 |
|
#
f9141d27 |
| 25-Sep-2024 |
Atul Malakar <a.malakar@samsung.com> |
test/blob: Add BLOCKLEN macro in blob_ut
blob_ut has a lot of places hardcoded with 4096, mostly used for data payload operations. These are replaced with BLOCKLEN macro.
It is similar to DEV_BUFFE
test/blob: Add BLOCKLEN macro in blob_ut
blob_ut has a lot of places hardcoded with 4096, mostly used for data payload operations. These are replaced with BLOCKLEN macro.
It is similar to DEV_BUFFER_BLOCKLEN, but in shortened form.
This is the first patch of the series where metadata support will be added to blobstore for large IU devices.
Currently SPDK blobstore depends on 4KB atomicity of metadata. So, Metadata page size will be made variable based on the physical block size reported by the underlying device. This will enable blobstore to store metadata in IU-sized chunks, not always 4KB.
Change-Id: I9fb166a32b78b43ecd1db752c24835cee441e665 Signed-off-by: Atul Malakar <a.malakar@samsung.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25023 Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Mellanox Build Bot Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
show more ...
|
Revision tags: v25.01-pre, v24.09-rc1, v24.05, v24.09-pre, v24.05-rc1 |
|
#
d3594f84 |
| 15-Mar-2024 |
xupeng-mingtu <jingmamour@gmail.com> |
lib/blob: fix data inconsistency when unmap a thin-provisioned blob that is backed
The issue may happen in this case: 1.create lvol A from snapshot B 2.write data to A_cluster1 3.unmap A_cluster1
lib/blob: fix data inconsistency when unmap a thin-provisioned blob that is backed
The issue may happen in this case: 1.create lvol A from snapshot B 2.write data to A_cluster1 3.unmap A_cluster1 4.read data from lba coverd by A_cluster1 the result of step 4 should be zero, but it’s actually the data in B_cluster1
Change-Id: If08bdf392d8d3dee737fcacca03bd9f04faa3933 Signed-off-by: xupeng-mingtu <jingmamour@gmail.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22325 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Tomasz Zawadzki <tomasz@tzawadzki.com> Community-CI: Mellanox Build Bot Reviewed-by: Mateusz Kozlowski <mateusz.kozlowski@solidigm.com>
show more ...
|
#
34edd9f1 |
| 10-Jul-2024 |
Kamil Godzwon <kamilx.godzwon@intel.com> |
general: fix misspells and typos
Signed-off-by: Kamil Godzwon <kamilx.godzwon@intel.com> Change-Id: Iab206ef526eb7032c6681a3145450010c91705a4 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+
general: fix misspells and typos
Signed-off-by: Kamil Godzwon <kamilx.godzwon@intel.com> Change-Id: Iab206ef526eb7032c6681a3145450010c91705a4 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24120 Community-CI: Mellanox Build Bot Reviewed-by: Karol Latecki <karol.latecki@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Jim Harris <jim.harris@samsung.com>
show more ...
|
#
a95bbf23 |
| 01-Jul-2024 |
Hadi Moshayedi <hadi@ubicloud.com> |
blob: set parent_id properly on spdk_bs_blob_set_external_parent.
Based on `doc/blob.md`, `blob->parent_id` of esnap clones should be set to `SPDK_BLOBID_EXTERNAL_SNAPSHOT`.
Previously, `spdk_bs_bl
blob: set parent_id properly on spdk_bs_blob_set_external_parent.
Based on `doc/blob.md`, `blob->parent_id` of esnap clones should be set to `SPDK_BLOBID_EXTERNAL_SNAPSHOT`.
Previously, `spdk_bs_blob_set_external_parent` didn't do this. This caused some features which relied on this, like copy-on-write, to not work properly.
This change fixes this.
Change-Id: I13305d088efbff51aa7e066a7e42b13993d212a3 Signed-off-by: Hadi Moshayedi <hadi@ubicloud.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23971 Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Damiano Cipriani <damiano.cipriani@suse.com>
show more ...
|
Revision tags: LTS, v24.01, v24.05-pre, v24.01-rc1 |
|
#
77c07d07 |
| 25-Oct-2023 |
Damiano Cipriani <damiano.cipriani@suse.com> |
blob: add blob set external parent
Implemented a new function to set an external snapshot as the parent of a blob. The previous parent of the blob, if any, can be another external snapshot or a snap
blob: add blob set external parent
Implemented a new function to set an external snapshot as the parent of a blob. The previous parent of the blob, if any, can be another external snapshot or a snapshot; if the blob is not a clone, it must be thin-provisioned.
Change-Id: Ib9eda0fba04428d058109a1eacdec084ef050a65 Signed-off-by: Damiano Cipriani <damiano.cipriani@suse.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/21689 Reviewed-by: Jim Harris <jim.harris@samsung.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 ...
|
Revision tags: v23.09, v24.01-pre, v23.09-rc1 |
|
#
7b8c7efe |
| 28-Jul-2023 |
Damiano Cipriani <damiano.cipriani@suse.com> |
blob: add blob set parent
Implemented a new function to set a snapshot as the parent of a blob. The previous parent of the blob, if any, can be another snapshot or an external snapshot; if the blob
blob: add blob set parent
Implemented a new function to set a snapshot as the parent of a blob. The previous parent of the blob, if any, can be another snapshot or an external snapshot; if the blob is not a clone, it must be thin-provisioned.
Change-Id: I00eeefd352f437c587433d56f1988e7a607d2bf8 Signed-off-by: Damiano Cipriani <damiano.cipriani@suse.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/19304 Reviewed-by: Jim Harris <jim.harris@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Community-CI: Mellanox Build Bot
show more ...
|
#
b357ad48 |
| 06-May-2024 |
Diwakar Sharma <diwakar.sharma@datacore.com> |
blob: Handle range check for all snapshot back_bs_dev up in the chain
When there are multiple snapshots in the backing for a blob, we traverse all of them. During traversal, the is_range_valid check
blob: Handle range check for all snapshot back_bs_dev up in the chain
When there are multiple snapshots in the backing for a blob, we traverse all of them. During traversal, the is_range_valid check need to be done for every one of them.
Change-Id: Ib8318a5d3cdc558e7f295e0543587a20a2c32917 Signed-off-by: Diwakar Sharma <diwakar.sharma@datacore.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23020 Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|
#
d148fba3 |
| 30-Apr-2024 |
Mateusz Kozlowski <mateusz.kozlowski@solidigm.com> |
lib/blob: Handling of concurrent unmaps to a cluster
Only release clusters for the first unmap.
Fixes #3358
Change-Id: I79810a6611c57df1d0c280616d5666d2f7487d33 Signed-off-by: Mateusz Kozlowski <m
lib/blob: Handling of concurrent unmaps to a cluster
Only release clusters for the first unmap.
Fixes #3358
Change-Id: I79810a6611c57df1d0c280616d5666d2f7487d33 Signed-off-by: Mateusz Kozlowski <mateusz.kozlowski@solidigm.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23014 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|
#
4c88d56d |
| 26-Jul-2023 |
Damiano Cipriani <damiano.cipriani@suse.com> |
blob: add shallow copy status callback
Added a callback to shallow copy function that will be repeteadly called during operation with status updates like the number of clusters actually copied.
Cha
blob: add shallow copy status callback
Added a callback to shallow copy function that will be repeteadly called during operation with status updates like the number of clusters actually copied.
Change-Id: I6f2fb94fb38e8b17636ee2b5e106cd2a44697d09 Signed-off-by: Damiano Cipriani <damiano.cipriani@suse.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/19248 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Community-CI: Mellanox Build Bot Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|
#
2dbbbbd8 |
| 01-Sep-2023 |
Damiano Cipriani <damiano.cipriani@suse.com> |
blob: keep count of allocated clusters number
A new variable has been added in spdk_blob_mut_data to store the number of allocated clusters in clusters array. Also a new method to get this value has
blob: keep count of allocated clusters number
A new variable has been added in spdk_blob_mut_data to store the number of allocated clusters in clusters array. Also a new method to get this value has been added.
Change-Id: Ibac9344bcf7e4c5e6e12cf78a6eae0a4d6755acb Signed-off-by: Damiano Cipriani <damiano.cipriani@suse.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/19712 Reviewed-by: Jim Harris <jim.harris@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Community-CI: Mellanox Build Bot
show more ...
|
#
1666fcfc |
| 26-Jul-2023 |
Damiano Cipriani <damiano.cipriani@suse.com> |
blob: add shallow copy over a given device
A shallow copy will copy over the destination device only the cluster allocated to the blob discarding those belonging to the blob's parent snapshot, if an
blob: add shallow copy over a given device
A shallow copy will copy over the destination device only the cluster allocated to the blob discarding those belonging to the blob's parent snapshot, if any.
Change-Id: I763ba9d952b74bce2d5827abe1fc3f41b8ebd209 Signed-off-by: Damiano Cipriani <damiano.cipriani@suse.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/19247 Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Community-CI: Mellanox Build Bot Reviewed-by: Jim Harris <jim.harris@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
show more ...
|
#
00311abc |
| 18-Mar-2024 |
Diwakar Sharma <diwakar.sharma@datacore.com> |
blob: handle IO to a resized blob
When a blob is resized and is backed by a another blob like a snapshot, then the resized blob has more number of clusters compared to backing device. Since the blob
blob: handle IO to a resized blob
When a blob is resized and is backed by a another blob like a snapshot, then the resized blob has more number of clusters compared to backing device. Since the blob is thin, either originally or as a result of creating snapshot, the IOs to the new cluster ranges fail as there is no cluster to be looked at in the backing. This patch introduces mechanism to handle reads by zeroeing out the payload which is trailing beyond cluster range, and handle writes by validating backing dev cluster range during copy-on-write.
Change-Id: Ib204b922819775396e53ffb718e8230ebf8fa46b Signed-off-by: Diwakar Sharma <diwakar.sharma@datacore.com> Co-authored-by: Diwakar Sharma <diwakar.sharma@datacore.com> Co-authored-by: Jim Harris <james.r.harris@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22377 Community-CI: Mellanox Build Bot Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Reviewed-by: Jim Harris <jim.harris@samsung.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
show more ...
|