[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] question:about introduce a new feature named “I/O hang”
From: |
wangjie (P) |
Subject: |
[Qemu-devel] question:about introduce a new feature named “I/O hang” |
Date: |
Thu, 4 Jul 2019 23:16:34 +0800 |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 |
Hi, everybody:
I developed a feature named "I/O hang",my intention is to solve the
problem like that:
If the backend storage media of VM disk is far-end storage like IPSAN or
FCSAN, storage net link will always disconnection and
make I/O requests return EIO to Guest, and the status of filesystem in
Guest will be read-only, even the link recovered
after a while, the status of filesystem in Guest will not recover.
So I developed a feature named "I/O hang" to solve this problem, the
solution like that:
when some I/O requests return EIO in backend, "I/O hang" will catch the
requests in qemu block layer and
insert the requests to a rehandle queue but not return EIO to Guest, the
I/O requests in Guest will hang but it does not lead
Guest filesystem to be read-only, then "I/O hang" will loop to rehandle
the requests for a period time(ex. 5 second) until the requests
not return EIO(when backend storage link recovered).
In addition to the function as above, "I/O hang" also can sent event to
libvirt after backend storage status changed.
configure methods:
1. "I/O hang" ability can be configured for each disk as a disk attribute.
2. "I/O hang" timeout value also can be configured for each disk, when
storage link not recover in timeout value,
"I/O hang" will disable rehandle I/O requests and return EIO to Guest.
Are you interested in the feature? I intend to push this feature to
qemu org, what's your opinion?
- [Qemu-devel] question:about introduce a new feature named “I/O hang”,
wangjie (P) <=