Previously we had BlockDevice::collect_alerts that had fixed
implementation.
Expanded BlockDevice::collect_alerts into virtual, so KernelDevice can
override it.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
(cherry picked from commit
e952b0c9fd240ad0318c744091bf32201e4ee76c)
public:
CephContext* cct;
typedef void (*aio_callback_t)(void *handle, void *aio);
- void collect_alerts(osd_alert_list_t& alerts, const std::string& device_name);
+ virtual void collect_alerts(osd_alert_list_t& alerts, const std::string& device_name);
private:
ceph::mutex ioc_reap_lock = ceph::make_mutex("BlockDevice::ioc_reap_lock");
return false;
}
+void KernelDevice::collect_alerts(osd_alert_list_t& alerts, const std::string& device_name)
+{
+ BlockDevice::collect_alerts(alerts, device_name);
+}
+
void KernelDevice::_aio_log_start(
IOContext *ioc,
uint64_t offset,
bool _queue_discard(interval_set<uint64_t> &to_release);
bool try_discard(interval_set<uint64_t> &to_release, bool async = true) override;
+ void collect_alerts(osd_alert_list_t& alerts, const std::string& device_name) override;
+
int _aio_start();
void _aio_stop();