blk/kernel : Make bdev stop immediately#60791
Merged
Jayaprakash-ibm merged 1 commit intoceph:mainfrom Feb 13, 2025
Merged
Conversation
aclamk
reviewed
Nov 21, 2024
aclamk
reviewed
Nov 21, 2024
3d3b0ca to
ce74e3c
Compare
e88cc7c to
0104c4b
Compare
aclamk
reviewed
Nov 21, 2024
aclamk
reviewed
Nov 21, 2024
aclamk
reviewed
Nov 21, 2024
5e49b57 to
377b742
Compare
Contributor
|
jenkins test make check |
ifed01
reviewed
Jan 30, 2025
ifed01
reviewed
Jan 30, 2025
ljflores
reviewed
Jan 31, 2025
Member
ljflores
left a comment
There was a problem hiding this comment.
Hi @Jayaprakash-ibm, it looks like there is an teuthology failure related to this change:
/a/yuriw-2025-01-13_19:12:38-rados-wip-yuri2-testing-2025-01-13-0620-distro-default-smithi/8074555
2025-01-13T23:03:29.787 INFO:teuthology.orchestra.run.smithi143.stdout:[ RUN ] ObjectStore/StoreTest.mergeRegionTest/1
2025-01-13T23:03:32.632 INFO:teuthology.orchestra.run.smithi143.stderr:Creating object #-1:d3d08989:::Object:head#
2025-01-13T23:03:32.849 INFO:teuthology.orchestra.run.smithi143.stderr:/home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos9/DIST/centos9/MACHINE_SIZE/gigantic/release/19.3.0-6846-gacd9dd43/rpm/el9/BUILD/ceph-19.3.0-6846-gacd9dd43/src/include/interval_set.h: In function 'void interval_set<T, C>::erase(T, T, std::function<bool(T, T)>) [with T = long unsigned int; C = std::map]' thread 7f7793af8640 time 2025-01-13T23:03:32.848429+0000
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr:/home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos9/DIST/centos9/MACHINE_SIZE/gigantic/release/19.3.0-6846-gacd9dd43/rpm/el9/BUILD/ceph-19.3.0-6846-gacd9dd43/src/include/interval_set.h: 567: FAILED ceph_assert(p != m.end())
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr: ceph version 19.3.0-6846-gacd9dd43 (acd9dd43680a34295c804e0a31dea6a6f88a10ec) squid (dev)
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr: 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x11e) [0x7f779678c63c]
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr: 2: /usr/lib64/ceph/libceph-common.so.2(+0x18c7fb) [0x7f779678c7fb]
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr: 3: ceph_test_objectstore(+0x48832a) [0x5589a7d0132a]
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr: 4: (KernelDevice::_aio_log_finish(IOContext*, unsigned long, unsigned long)+0xbc) [0x5589a7e7a4bc]
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr: 5: (KernelDevice::_aio_thread()+0x127) [0x5589a7e7a7d7]
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr: 6: ceph_test_objectstore(+0x5f3751) [0x5589a7e6c751]
2025-01-13T23:03:32.850 INFO:teuthology.orchestra.run.smithi143.stderr: 7: /lib64/libc.so.6(+0x8a062) [0x7f7795e8a062]
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: 8: /lib64/libc.so.6(+0x10f0e0) [0x7f7795f0f0e0]
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr:*** Caught signal (Aborted) **
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: in thread 7f7793af8640 thread_name:bstore_aio
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: ceph version 19.3.0-6846-gacd9dd43 (acd9dd43680a34295c804e0a31dea6a6f88a10ec) squid (dev)
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: 1: /lib64/libc.so.6(+0x3e930) [0x7f7795e3e930]
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: 2: /lib64/libc.so.6(+0x8bdac) [0x7f7795e8bdac]
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: 3: raise()
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: 4: abort()
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: 5: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x178) [0x7f779678c696]
2025-01-13T23:03:32.851 INFO:teuthology.orchestra.run.smithi143.stderr: 6: /usr/lib64/ceph/libceph-common.so.2(+0x18c7fb) [0x7f779678c7fb]
2025-01-13T23:03:32.852 INFO:teuthology.orchestra.run.smithi143.stderr: 7: ceph_test_objectstore(+0x48832a) [0x5589a7d0132a]
2025-01-13T23:03:32.852 INFO:teuthology.orchestra.run.smithi143.stderr: 8: (KernelDevice::_aio_log_finish(IOContext*, unsigned long, unsigned long)+0xbc) [0x5589a7e7a4bc]
2025-01-13T23:03:32.852 INFO:teuthology.orchestra.run.smithi143.stderr: 9: (KernelDevice::_aio_thread()+0x127) [0x5589a7e7a7d7]
2025-01-13T23:03:32.852 INFO:teuthology.orchestra.run.smithi143.stderr: 10: ceph_test_objectstore(+0x5f3751) [0x5589a7e6c751]
2025-01-13T23:03:32.852 INFO:teuthology.orchestra.run.smithi143.stderr: 11: /lib64/libc.so.6(+0x8a062) [0x7f7795e8a062]
2025-01-13T23:03:32.852 INFO:teuthology.orchestra.run.smithi143.stderr: 12: /lib64/libc.so.6(+0x10f0e0) [0x7f7795f0f0e0]
Testing ref: https://tracker.ceph.com/issues/69508
8a8d5fc to
8d534be
Compare
8d534be to
2848244
Compare
Contributor
Author
|
jenkins test make check |
ifed01
approved these changes
Feb 12, 2025
Contributor
14 tasks
Jayaprakash-ibm
added a commit
to Jayaprakash-ibm/ceph
that referenced
this pull request
Feb 26, 2025
Sometimes Devices can be 0-sized, where I/O is impossible. This change skips _aio_start() in open() if the device size is 0. This avoids unnecessary AIO setup. This issue was introduced in PR : ceph#60791 Signed-off-by: Jaya Prakash <[email protected]>
Jayaprakash-ibm
added a commit
to Jayaprakash-ibm/ceph
that referenced
this pull request
Feb 26, 2025
Sometimes devices can be 0-sized, where I/O is impossible. This change skips _aio_start() in open() if the device size is 0. This avoids unnecessary AIO setup. This issue was introduced in PR : ceph#60791 Signed-off-by: Jaya Prakash <[email protected]>
Jayaprakash-ibm
added a commit
to Jayaprakash-ibm/ceph
that referenced
this pull request
Feb 27, 2025
Sometimes devices can be 0-sized, where I/O is impossible. This change skips _aio_start() in open() if the device size is 0. This avoids unnecessary AIO setup. This issue was introduced in PR : ceph#60791 Signed-off-by: Jaya Prakash <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This change addresses the 200ms delay observed in the _aio_stop function during the completion of bdev operations.
The _aio_stop function was modified to introduce a wakeup mechanism using a dummy operation
Fixes : #68881
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an
xbetween the brackets:[x]. Spaces and capitalization matter when checking off items this way.Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard cephadmjenkins test apijenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume toxjenkins test windowsjenkins test rook e2e