From 8a3b48551a15c5e61ace324b00a5b7508eddbc0b Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Fri, 31 Mar 2017 18:32:41 +0800 Subject: [PATCH] osd/OSDMap: use _pg_to_up_acting_osds() to get_pg_acting_primary() avoid unnecessary swap() call of vector which will be dropped on the floor after getting its first element, which can be retrieved using another parameter using _pg_to_up_acting_osds() directly. Signed-off-by: Kefu Chai --- src/osd/OSDMap.h | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/osd/OSDMap.h b/src/osd/OSDMap.h index 856793bdaa23..eb0399edda6e 100644 --- a/src/osd/OSDMap.h +++ b/src/osd/OSDMap.h @@ -800,11 +800,9 @@ public: // pg -> acting primary osd int get_pg_acting_primary(pg_t pg) const { - vector group; - int nrep = pg_to_acting_osds(pg, group); - if (nrep > 0) - return group[0]; - return -1; // we fail! + int primary = -1; + _pg_to_up_acting_osds(pg, nullptr, nullptr, nullptr, &primary); + return primary; } /* -- 2.47.3