md模块在运行过程中会记录一些事件发生的次数。这些事件包括:
- start array
- stop array
- error
- add device
- remove device
- start build
- activate spare
md模块把这些事件发生的次数累计,放在一个静态全局变量里。代码如下:
static atomic_t md_event_count; void md_new_event(mddev_t *mddev) { atomic_inc(&md_event_count); wake_up(&md_event_waiters); } EXPORT_SYMBOL_GPL(md_new_event);
这个md_event_count变量在某些时候非常有用。它是在以下函数中被累计的。
- state_store
- md_do_sync
- md_check_recovery
- do_md_run
- do_md_stop
- md_error
- hot_add_disk
- hot_remove_disk
- remove_and_add_spare
md模块浅谈(二)md事件
最新推荐文章于 2023-04-06 13:48:04 发布