[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] xenstore ring overflow when too many watches are fired

On 08/10/2009 12:22, "James Harper" <james.harper@xxxxxxxxxxxxxxxx> wrote:

> Is it this function that prevents this tail-eating?


> I hope I'm not just too tired to be thinking about this, but wouldn't
> that only return FALSE when the ring was full? It doesn't guarantee that
> there is enough space to write a message, and doesn't stop messages
> continuing to be written once the ring has overflowed. I can't seen any
> other relevant reference to rsp_prod or rsp_cons in xenstored.

Try grep. See xenstored_domain.c:writechn(). Takes a bunch of bytes to
write; returns how many were successfully written on this attempt. Uses
rsp_cons (via get_output_chunk()).

If we didn't get this right, we'd be screwed for reading any xenstore node
containing a large amount of data (we do sometimes have those).

 -- Keir

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.