Re: [KVM PATCH v6 3/4] KVM: Fix races in irqfd using new eventfd_kref_getinterface

From: Avi Kivity
Date: Wed Jul 01 2009 - 05:43:11 EST


On 06/29/2009 07:52 PM, Gregory Haskins wrote:

One idea I had to make it even clearer was to have a shutdown list
of irqfds per-kvm, together with the items list, and make work_struct for
shutdown global, not per-irqfd. We can then unconditionally do
list_move + schedule_work to shut down an irqfd, and it's safe to do
even if it is already on the shutdown list - it just gets moved to tail.


Hmm..I'm not sure that churn really buys us anything, tho. Technically
the "active" bit is redundant with list_del_init()+list_empty() that I
employed in previous versions. However, I made it explicit with the
active bit to be more self-documenting. IMO, the latest code is pretty
clear, and the change you are proposing is moving towards a slightly
trickier variant like I originally had. I'd say "lets leave this as is".

Could retain self documentation by introducing a helper irqfd_active() which does the list_blah() magic.

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/