On 10/14/2009 04:30 PM, Glauber Costa wrote:
Hello people,
As I promised, I am sending a very brief PoC wrt split devices and in-kernel
irqchip.
In this mail, I am including only the ioapic version for apreciation. I also
have i8259,
and apic will take me a little bit more. This is just to try to bind the
discussion to real
code.
I still can't say I like it. The reset function is duplicated, the
state representation (which is an ABI) is gratuitously forked.
You can't save/restore in-kernel irqchip and userspace irqchip, even
though where the code is located is an implementation detail. While we
may not care much for the ioapic, it sets a bad precedent for vhost-net,
where we'd like to migrate from non-vhost-net hosts to vhost-net hosts
without the user noticing anything.
Note that we end up with a very slim representation of the device, and the code
is much less
confusing, IMHO.
You can always remove if statements by duplicating the code and pushing
the if one level upwards. In total, there is more code, and it is more
confusing (since you need to deal with implementation details at a
higher level).
--
error compiling committee.c: too many arguments to function