[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] Make removing IOHandlers safe from within an IO
From: |
Daniel P. Berrange |
Subject: |
Re: [Qemu-devel] [PATCH] Make removing IOHandlers safe from within an IOHandler |
Date: |
Sat, 24 Feb 2007 18:39:14 +0000 |
User-agent: |
Mutt/1.4.1i |
On Sat, Feb 24, 2007 at 11:54:17AM -0600, Anthony Liguori wrote:
> I was getting random SEGVs when disconnecting from the VNC server. I
> tracked it down to the fact that if you remove a IOHandler from another
> IOHandler, all sorts of badness may result as you're removing entries
> from a linked list while transversing it.
>
> My solution is to simply add a deleted flag to each entry and walk the
> list a second time. During the second transversal, we'll remove nodes
> that need removing.
>
> Haven't seen the SEGV since I started using this patch.
That's pretty much identical solution to the one I just posted along with
the patches for VNC TLS support, so I can also confirm this approach works
& solves the SEGV issue.
Regards,
Dan.
--
|=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=|
|=- Perl modules: http://search.cpan.org/~danberr/ -=|
|=- Projects: http://freshmeat.net/~danielpb/ -=|
|=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|