看板 FB_stable 關於我們 聯絡資訊
On Feb 18, 2014, at 3:32 AM, Edward Tomasz Napiera=B3a <trasz@freebsd.org> = wrote: > Wiadomo=B6=E6 napisana przez John Nielsen w dniu 17 lut 2014, o godz. 21:= 21: >> I run several FreeBSD virtual machines in a Linux KVM environment with a= SAN. The VMs use virtio block storage, and the KVM hosts map the virtual v= olumes to targets on the SAN. Occasionally, failover or other maintenance e= vents on the SAN cause it to be unavailable for 30+ seconds. When this happ= ens, the FreeBSD VMs have hard failures on the vtbd* devices, and thereafte= r any attempted reads or writes return immediately with an error (even afte= r the SAN is responsive again). The only way to recover a VM once that happ= ens is to hard boot it. >> = >> Is there any way to adjust the timeouts or enable some kind of retry for= the virtio block devices? It would be nice to be able to recover gracefull= y after a SAN event without needing to reboot the VMs. > = > Use gmountver(8) perhaps? Thanks for the tip (and for writing it :), I haven't encountered that one b= efore. I will experiment with it but I'm not sure it's a fit for this parti= cular scenario (at least not by itself). When a SAN event happens the virtu= al machine's vtbd0 device doesn't disappear, the underlying hardware just f= ails to respond for a long-ish time. I suspect that the driver gives up aft= er either a certain length of time or number of errors, but my C driver-fu = isn't up to figuring it out exactly. Once it gives up, any I/O requests to = the (still "present") device fail immediately, and I can't see a way to get= the driver to actually try any (new or old) I/O again. JN _______________________________________________ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"