For _raw_write_mda_header(), the latest codes are same as stable-2.02.
And below usage is wrong, should be fixed.
```
if (!dev_write_bytes(mdac->area.dev, write1_start, (size_t)write1_size,
write_buf)) {
... ...
dev_unset_last_byte(mdac->area.dev); <==== invalid code, this time fd
had been released.
... ...
}
```
This issue only happened on our customer machine, when updating lvm2 from
2.02.120 (no bcache code) to 2.02.180 (contains bcache).
Thanks
zhm
On 10/11/19 6:38 PM, Zdenek Kabelac wrote:
> Dne 11. 10. 19 v 11:22 Heming Zhao napsal(a):
>> Only one thing I am confusion all the time.
>> When read/write error, lvm will call bcache_invalidate_fd & _scan_dev_close
>> to close fd.
>> So the first successfully read (i.e.: f747), which following f748 finally
>> has fc68's fd.
>> This will cause f747 metadata overwrite not f748.
>>
>>
>
> Hi
>
> Have you considered checking newer version of lvm2?
>
> Regards
>
> Zdenek
>
>
_______________________________________________
linux-lvm mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/linux-lvm
read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/