@@ -1016,17 +1016,17 @@ seastar::future<> OSD::committed_osd_maps(version_t first,
10161016seastar::future<> OSD::handle_osd_op (crimson::net::ConnectionRef conn,
10171017 Ref<MOSDOp> m)
10181018{
1019- ( void ) pg_shard_manager.start_pg_operation <ClientRequest>(
1019+ return pg_shard_manager.start_pg_operation <ClientRequest>(
10201020 get_shard_services (),
10211021 conn,
1022- std::move (m));
1023- return seastar::now ();
1022+ std::move (m)).second ;
10241023}
10251024
10261025seastar::future<> OSD::handle_pg_create (crimson::net::ConnectionRef conn,
10271026 Ref<MOSDPGCreate2> m)
10281027{
1029- for (auto & [pgid, when] : m->pgs ) {
1028+ return seastar::do_for_each (m->pgs , [this , conn, m](auto & pg) {
1029+ auto & [pgid, when] = pg;
10301030 const auto &[created, created_stamp] = when;
10311031 auto q = m->pg_extra .find (pgid);
10321032 ceph_assert (q != m->pg_extra .end ());
@@ -1043,51 +1043,48 @@ seastar::future<> OSD::handle_pg_create(crimson::net::ConnectionRef conn,
10431043 " unmatched past_intervals {} (history {})" ,
10441044 pgid, m->epoch ,
10451045 pi, history);
1046+ return seastar::now ();
10461047 } else {
1047- std::ignore = pg_shard_manager.start_pg_operation <RemotePeeringEvent>(
1048+ return pg_shard_manager.start_pg_operation <RemotePeeringEvent>(
10481049 conn,
10491050 pg_shard_t (),
10501051 pgid,
10511052 m->epoch ,
10521053 m->epoch ,
10531054 NullEvt (),
10541055 true ,
1055- new PGCreateInfo (pgid, m->epoch , history, pi, true ));
1056+ new PGCreateInfo (pgid, m->epoch , history, pi, true )). second ;
10561057 }
1057- }
1058- return seastar::now ();
1058+ });
10591059}
10601060
10611061seastar::future<> OSD::handle_update_log_missing (
10621062 crimson::net::ConnectionRef conn,
10631063 Ref<MOSDPGUpdateLogMissing> m)
10641064{
10651065 m->decode_payload ();
1066- ( void ) pg_shard_manager.start_pg_operation <LogMissingRequest>(
1066+ return pg_shard_manager.start_pg_operation <LogMissingRequest>(
10671067 std::move (conn),
1068- std::move (m));
1069- return seastar::now ();
1068+ std::move (m)).second ;
10701069}
10711070
10721071seastar::future<> OSD::handle_update_log_missing_reply (
10731072 crimson::net::ConnectionRef conn,
10741073 Ref<MOSDPGUpdateLogMissingReply> m)
10751074{
10761075 m->decode_payload ();
1077- ( void ) pg_shard_manager.start_pg_operation <LogMissingRequestReply>(
1076+ return pg_shard_manager.start_pg_operation <LogMissingRequestReply>(
10781077 std::move (conn),
1079- std::move (m));
1080- return seastar::now ();
1078+ std::move (m)).second ;
10811079}
10821080
10831081seastar::future<> OSD::handle_rep_op (crimson::net::ConnectionRef conn,
10841082 Ref<MOSDRepOp> m)
10851083{
10861084 m->finish_decode ();
1087- std::ignore = pg_shard_manager.start_pg_operation <RepRequest>(
1085+ return pg_shard_manager.start_pg_operation <RepRequest>(
10881086 std::move (conn),
1089- std::move (m));
1090- return seastar::now ();
1087+ std::move (m)).second ;
10911088}
10921089
10931090seastar::future<> OSD::handle_rep_op_reply (crimson::net::ConnectionRef conn,
@@ -1139,9 +1136,8 @@ seastar::future<> OSD::handle_mark_me_down(crimson::net::ConnectionRef conn,
11391136seastar::future<> OSD::handle_recovery_subreq (crimson::net::ConnectionRef conn,
11401137 Ref<MOSDFastDispatchOp> m)
11411138{
1142- std::ignore = pg_shard_manager.start_pg_operation <RecoverySubRequest>(
1143- conn, std::move (m));
1144- return seastar::now ();
1139+ return pg_shard_manager.start_pg_operation <RecoverySubRequest>(
1140+ conn, std::move (m)).second ;
11451141}
11461142
11471143bool OSD::should_restart () const
@@ -1234,12 +1230,11 @@ seastar::future<> OSD::handle_peering_op(
12341230 logger ().debug (" handle_peering_op on {} from {}" , m->get_spg (), from);
12351231 m->set_features (conn->get_features ());
12361232 std::unique_ptr<PGPeeringEvent> evt (m->get_event ());
1237- ( void ) pg_shard_manager.start_pg_operation <RemotePeeringEvent>(
1233+ return pg_shard_manager.start_pg_operation <RemotePeeringEvent>(
12381234 conn,
12391235 pg_shard_t {from, m->get_spg ().shard },
12401236 m->get_spg (),
1241- std::move (*evt));
1242- return seastar::now ();
1237+ std::move (*evt)).second ;
12431238}
12441239
12451240seastar::future<> OSD::check_osdmap_features ()
0 commit comments