* [Qemu-devel] vfio - bind failure : user space recovery
@ 2014-05-16 15:01 Saptarshi Sen
2014-05-16 15:55 ` Alex Williamson
0 siblings, 1 reply; 2+ messages in thread
From: Saptarshi Sen @ 2014-05-16 15:01 UTC (permalink / raw)
To: qemu-devel
[-- Attachment #1: Type: text/plain, Size: 612 bytes --]
I am using a driver from user-space using vfio.
During intensive testing, when my application crashes.
I try to re-run the same, when I get a bind-failure.
Error code, is E_BUSY.
The point of error is when I try to open a group
ret = open("/dev/vfio/xx",O_RDWR)
I traced down what could be the reason of this from driver pers
is that the driver does not allow multiple instances to be opened.
How to recover if user-space code using vfio crashes. Since I lose the
handle
to the group I do not know how can I rebind to the vfio group on the
next-run.
Is the only option remains to reboot the machine.?
Thanks
[-- Attachment #2: Type: text/html, Size: 1842 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] vfio - bind failure : user space recovery
2014-05-16 15:01 [Qemu-devel] vfio - bind failure : user space recovery Saptarshi Sen
@ 2014-05-16 15:55 ` Alex Williamson
0 siblings, 0 replies; 2+ messages in thread
From: Alex Williamson @ 2014-05-16 15:55 UTC (permalink / raw)
To: Saptarshi Sen; +Cc: qemu-devel, kvm
[cc+ kvm]
(kvm is the proper list for non-QEMU related vfio)
On Fri, 2014-05-16 at 08:01 -0700, Saptarshi Sen wrote:
> I am using a driver from user-space using vfio.
> During intensive testing, when my application crashes.
> I try to re-run the same, when I get a bind-failure.
> Error code, is E_BUSY.
>
> The point of error is when I try to open a group
> ret = open("/dev/vfio/xx",O_RDWR)
> I traced down what could be the reason of this from driver pers
> is that the driver does not allow multiple instances to be opened.
>
> How to recover if user-space code using vfio crashes. Since I lose the
> handle
> to the group I do not know how can I rebind to the vfio group on the
> next-run.
> Is the only option remains to reboot the machine.?
When the userspace driver process exits, all of the file descriptors are
released and references should be dropped allowing for the group file to
be re-opened. So the first question would be whether the previous
process crashed and exited or whether it remains in some non-running
state. If it is actually dead and gone, and you're still not able to
re-open the group, then there's a bug somewhere in the accounting. You
shouldn't need to reboot the machine to re-use the group. Thanks,
Alex
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-05-16 15:55 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-16 15:01 [Qemu-devel] vfio - bind failure : user space recovery Saptarshi Sen
2014-05-16 15:55 ` Alex Williamson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).