А SMART точно молчит или Reallocated_Sector_Ct изменился?
Очень похоже, что обсыпался какой-то сектор. Винт не смог его считать, пометил и увеличил Current_Pending_Sector, вернул ошибку. mdadm восстановил этот блок и плюхнул обратно на винт. Винт перемапил помеченный сбойный сектор, уменьшил Current_Pending_Sector, увеличил Reallocated_Sector_Ct, проверил, что Reallocated_Sector_Ct не превышает порог и успокоился.
Я бы настрополил на регулярный прогон extended тест SMART'а. Помогает выявить предсметное состояние секторов, к которым нет обращений write и редки обращения на read.