mdadm and scsi wce bit enabled (Write Cache Enable)
Привет.
Имеется сервер, в него через hba подключен ряд дисков. Никаких батареек не используется, сервер также подключен без ups. Из дисков собран программный mdadm raid массив.
Правильно понимаю, что в таком случае на всех дисках нужно повыключать встроенный writeback cache? Имеется ввиду WCE bit в SCSI caching mode page диска:
# sginfo -c /dev/sdX |grep ^W
Write Cache Enabled
Т.е. в текущей ситуации, когда кэш диска включен, SCSI WRITE может вернуть «ok» верхнему уровню до того, как переданные данные фактически запишутся. И поэтому будет возможна ситуация после потери питания, когда по metadat'е mdadm часть данных будет считаться синхронизированной и чистой, а фактически будет не так.
Но почему в таком случае writeback cache на дисках всегда по умолчанию включен, ведь чаще не используют никакого резервного питания, чем наоборт. А когда используют, тогда и включают все возможные кэши. Или я что-то неправильно понял и mdadm использует какой-то механизм для работы в обход дискового кэша?