On 19/08/2019 15:57, Song Liu wrote: >[...] > > I was thinking, if we can set MD_BROKEN when the device fails, we can > just test MD_BROKEN in array_state_show() (instead of iterating through > all devices). > > Would this work? > > Thanks, > Song > This could work, but will require some refactors; it'll simplify the check for a healthy array (no need for is_missing_dev() function) but will complicate the criteria to clear MD_BROKEN and the detection of more members failing (we would stop the detection after the 1st failure if we only test MD_BROKEN). We will always need to test the GENHD_FL_UP in some code path, to be able to show users device recovered from a failure. Where do you suggest to test this flag? Thanks, Guilherme