On 11/19/20 7:27 AM, heming.zhao@xxxxxxxx wrote: > the status/event is the content of struct mdp_superblock_1: > __le64 ctime; /* lo 40 bits are seconds, top 24 are microseconds or 0*/ > __le32 level; /* -4 (multipath), -1 (linear), 0,1,4,5 */ > __le32 layout; /* only for raid5 and raid10 currently */ > __le64 size; /* used size of component devices, in 512byte sectors */ > > __le32 chunksize; /* in 512byte sectors */ > __le32 raid_disks; > ... ... > __le64 reshape_position; /* next address in array-space for reshape */ > __le32 delta_disks; /* change in number of raid_disks */ > __le32 new_layout; /* new layout */ > ... ... > __le32 dev_number; /* permanent identifier of this device - not role in raid */ > ... ... > __le16 dev_roles[0]; /* role in array, or 0xffff for a spare, or 0xfffe for faulty */ > > I am not very familiar with md, and can't enumerate all the cases. For your writing: > failed disk - dev_roles[X] > read errors - may change: dev_roles[X], recovery_offset > array checks - normally won't change, except disk fail is detected > commands by user - depend on special cmd Thanks Heming for the breakdown. That was helpful. -- - Jorge