From 755c0e7f8b8619c7d67836c9f65622cf6c18ce8c Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Mon, 26 Oct 2020 12:49:20 +0800 Subject: [PATCH] osd/scheduler: rely on copy ellision to move return val C++14 enforces copy ellision in this case. also silences warning of src/osd/scheduler/mClockScheduler.cc:122:21: warning: redundant move in return statement [-Wredundant-move] 122 | return std::move(ret); | ~~~~~~~~~^~~~~ Signed-off-by: Kefu Chai --- src/osd/scheduler/mClockScheduler.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/osd/scheduler/mClockScheduler.cc b/src/osd/scheduler/mClockScheduler.cc index c075ed7d2d309..1b7407a57b907 100644 --- a/src/osd/scheduler/mClockScheduler.cc +++ b/src/osd/scheduler/mClockScheduler.cc @@ -117,9 +117,9 @@ void mClockScheduler::enqueue_front(OpSchedulerItem&& item) WorkItem mClockScheduler::dequeue() { if (!immediate.empty()) { - auto ret = std::move(immediate.back()); + WorkItem work_item{std::move(immediate.back())}; immediate.pop_back(); - return std::move(ret); + return work_item; } else { mclock_queue_t::PullReq result = scheduler.pull_request(); if (result.is_future()) { @@ -127,7 +127,7 @@ WorkItem mClockScheduler::dequeue() } else if (result.is_none()) { ceph_assert( 0 == "Impossible, must have checked empty() first"); - return std::move(*(OpSchedulerItem*)nullptr); + return {}; } else { ceph_assert(result.is_retn()); -- 2.39.5