Loading drivers/block/rbd.c +1 −1 Original line number Diff line number Diff line Loading @@ -4902,7 +4902,7 @@ static int rbd_add_get_pool_id(struct rbd_client *rbdc, const char *pool_name) return ret; if (rbdc->client->osdc.osdmap->epoch < newest_epoch) { ceph_monc_request_next_osdmap(&rbdc->client->monc); ceph_osdc_maybe_request_map(&rbdc->client->osdc); (void) ceph_monc_wait_osdmap(&rbdc->client->monc, newest_epoch, opts->mount_timeout); Loading include/linux/ceph/mon_client.h +0 −1 Original line number Diff line number Diff line Loading @@ -128,7 +128,6 @@ bool ceph_monc_want_map(struct ceph_mon_client *monc, int sub, u32 epoch, void ceph_monc_got_map(struct ceph_mon_client *monc, int sub, u32 epoch); void ceph_monc_renew_subs(struct ceph_mon_client *monc); extern void ceph_monc_request_next_osdmap(struct ceph_mon_client *monc); extern int ceph_monc_wait_osdmap(struct ceph_mon_client *monc, u32 epoch, unsigned long timeout); Loading include/linux/ceph/osd_client.h +1 −0 Original line number Diff line number Diff line Loading @@ -381,6 +381,7 @@ extern int ceph_osdc_wait_request(struct ceph_osd_client *osdc, extern void ceph_osdc_sync(struct ceph_osd_client *osdc); extern void ceph_osdc_flush_notifies(struct ceph_osd_client *osdc); void ceph_osdc_maybe_request_map(struct ceph_osd_client *osdc); extern int ceph_osdc_readpages(struct ceph_osd_client *osdc, struct ceph_vino vino, Loading net/ceph/mon_client.c +0 −14 Original line number Diff line number Diff line Loading @@ -384,20 +384,6 @@ void ceph_monc_renew_subs(struct ceph_mon_client *monc) } EXPORT_SYMBOL(ceph_monc_renew_subs); /* * Register interest in the next osdmap */ void ceph_monc_request_next_osdmap(struct ceph_mon_client *monc) { dout("%s have %u\n", __func__, monc->subs[CEPH_SUB_OSDMAP].have); mutex_lock(&monc->mutex); if (__ceph_monc_want_map(monc, CEPH_SUB_OSDMAP, monc->subs[CEPH_SUB_OSDMAP].have + 1, false)) __send_subscribe(monc); mutex_unlock(&monc->mutex); } EXPORT_SYMBOL(ceph_monc_request_next_osdmap); /* * Wait for an osdmap with a given epoch. * Loading net/ceph/osd_client.c +7 −0 Original line number Diff line number Diff line Loading @@ -3869,6 +3869,13 @@ void ceph_osdc_flush_notifies(struct ceph_osd_client *osdc) } EXPORT_SYMBOL(ceph_osdc_flush_notifies); void ceph_osdc_maybe_request_map(struct ceph_osd_client *osdc) { down_read(&osdc->lock); maybe_request_map(osdc); up_read(&osdc->lock); } EXPORT_SYMBOL(ceph_osdc_maybe_request_map); /* * init, shutdown Loading Loading
drivers/block/rbd.c +1 −1 Original line number Diff line number Diff line Loading @@ -4902,7 +4902,7 @@ static int rbd_add_get_pool_id(struct rbd_client *rbdc, const char *pool_name) return ret; if (rbdc->client->osdc.osdmap->epoch < newest_epoch) { ceph_monc_request_next_osdmap(&rbdc->client->monc); ceph_osdc_maybe_request_map(&rbdc->client->osdc); (void) ceph_monc_wait_osdmap(&rbdc->client->monc, newest_epoch, opts->mount_timeout); Loading
include/linux/ceph/mon_client.h +0 −1 Original line number Diff line number Diff line Loading @@ -128,7 +128,6 @@ bool ceph_monc_want_map(struct ceph_mon_client *monc, int sub, u32 epoch, void ceph_monc_got_map(struct ceph_mon_client *monc, int sub, u32 epoch); void ceph_monc_renew_subs(struct ceph_mon_client *monc); extern void ceph_monc_request_next_osdmap(struct ceph_mon_client *monc); extern int ceph_monc_wait_osdmap(struct ceph_mon_client *monc, u32 epoch, unsigned long timeout); Loading
include/linux/ceph/osd_client.h +1 −0 Original line number Diff line number Diff line Loading @@ -381,6 +381,7 @@ extern int ceph_osdc_wait_request(struct ceph_osd_client *osdc, extern void ceph_osdc_sync(struct ceph_osd_client *osdc); extern void ceph_osdc_flush_notifies(struct ceph_osd_client *osdc); void ceph_osdc_maybe_request_map(struct ceph_osd_client *osdc); extern int ceph_osdc_readpages(struct ceph_osd_client *osdc, struct ceph_vino vino, Loading
net/ceph/mon_client.c +0 −14 Original line number Diff line number Diff line Loading @@ -384,20 +384,6 @@ void ceph_monc_renew_subs(struct ceph_mon_client *monc) } EXPORT_SYMBOL(ceph_monc_renew_subs); /* * Register interest in the next osdmap */ void ceph_monc_request_next_osdmap(struct ceph_mon_client *monc) { dout("%s have %u\n", __func__, monc->subs[CEPH_SUB_OSDMAP].have); mutex_lock(&monc->mutex); if (__ceph_monc_want_map(monc, CEPH_SUB_OSDMAP, monc->subs[CEPH_SUB_OSDMAP].have + 1, false)) __send_subscribe(monc); mutex_unlock(&monc->mutex); } EXPORT_SYMBOL(ceph_monc_request_next_osdmap); /* * Wait for an osdmap with a given epoch. * Loading
net/ceph/osd_client.c +7 −0 Original line number Diff line number Diff line Loading @@ -3869,6 +3869,13 @@ void ceph_osdc_flush_notifies(struct ceph_osd_client *osdc) } EXPORT_SYMBOL(ceph_osdc_flush_notifies); void ceph_osdc_maybe_request_map(struct ceph_osd_client *osdc) { down_read(&osdc->lock); maybe_request_map(osdc); up_read(&osdc->lock); } EXPORT_SYMBOL(ceph_osdc_maybe_request_map); /* * init, shutdown Loading