Actions
Bug #52465
closed[pwl ssd] assert in AbstractWriteLog::handle_flushed_sync_point()
% Done:
0%
Source:
Tags:
Backport:
pacific
Regression:
No
Severity:
3 - minor
Reviewed:
Description
On today's master (980cf670ed7cb8afe9f58c26782e34e559848051):
[ RUN ] TestMockCacheSSDWriteLog.flush_source_internal ../src/librbd/cache/pwl/AbstractWriteLog.cc: In function 'bool librbd::cache::pwl::AbstractWriteLog<T>::handle_flushed_sync_point(std::shared_ptr<librbd::cache::pwl::SyncPointLogEntry>) [with ImageCtxT = librbd::MockImageCtx]' thread 7fd2937fe700 time 2021-08-31T10:09:59.116225-0400 ../src/librbd/cache/pwl/AbstractWriteLog.cc: 1745: FAILED ceph_assert(log_entry) ceph version Development (no_version) quincy (dev) 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x12b) [0x7fd3a71a6caa] 2: (ceph::register_assert_context(ceph::common::CephContext*)+0) [0x7fd3a71a6ee0] 3: (librbd::cache::pwl::AbstractWriteLog<librbd::MockImageCtx>::handle_flushed_sync_point(std::shared_ptr<librbd::cache::pwl::SyncPointLogEntry>)+0x89) [0x55ba1e610a8d] 4: (LambdaContext<librbd::cache::pwl::AbstractWriteLog<librbd::MockImageCtx>::handle_flushed_sync_point(std::shared_ptr<librbd::cache::pwl::SyncPointLogEntry>)::{lambda(int)#2}>::finish(int)+0x71) [0x55ba1e610d79] 5: (Context::complete(int)+0x9) [0x55ba1d6fbc2b] 6: (ContextWQ::process(Context*)+0x64) [0x55ba1d8858a2] 7: (ThreadPool::PointerWQ<Context>::_void_process(void*, ThreadPool::TPHandle&)+0xa) [0x55ba1d85ff06] 8: (ThreadPool::worker(ThreadPool::WorkThread*)+0xf60) [0x7fd3a7195c14] 9: (ThreadPool::WorkThread::entry()+0x11) [0x7fd3a7196629] 10: (Thread::entry_wrapper()+0x3f) [0x7fd3a7171db7] 11: (Thread::_entry_func(void*)+0x9) [0x7fd3a7171dcf] 12: /lib/x86_64-linux-gnu/libpthread.so.0(+0x9609) [0x7fd3a8214609] 13: clone()
/* Returns true if the specified SyncPointLogEntry is considered flushed, and * the log will be updated to reflect this. */ template <typename I> bool AbstractWriteLog<I>::handle_flushed_sync_point(std::shared_ptr<SyncPointLogEntry> log_entry) { ceph_assert(ceph_mutex_is_locked_by_me(m_lock)); ceph_assert(log_entry); if ((log_entry->writes_flushed == log_entry->writes) && log_entry->completed && log_entry->prior_sync_point_flushed && log_entry->next_sync_point_entry) {
Updated by Ilya Dryomov over 2 years ago
- Subject changed from [pwl ssd] assert in AbstractWriteLog<I>::handle_flushed_sync_point() to [pwl ssd] assert in AbstractWriteLog::handle_flushed_sync_point()
Updated by Ilya Dryomov over 2 years ago
- Status changed from New to Fix Under Review
- Assignee set to CONGMIN YIN
- Backport set to pacific
- Pull request ID set to 43006
Appears to be a regression caused by https://github.com/ceph/ceph/pull/42149 (the workaround for https://tracker.ceph.com/issues/51418).
Updated by Ilya Dryomov over 2 years ago
- Related to Bug #51418: [pwl] segment fault on syncpoint stack added
Updated by Ilya Dryomov over 2 years ago
- Status changed from Fix Under Review to Pending Backport
Updated by Backport Bot over 2 years ago
- Copied to Backport #52536: pacific: [pwl ssd] assert in AbstractWriteLog::handle_flushed_sync_point() added
Updated by Ilya Dryomov about 2 years ago
- Status changed from Pending Backport to Resolved
While running with --resolve-parent, the script "backport-create-issue" noticed that all backports of this issue are in status "Resolved" or "Rejected".
Actions