This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Making the transport layer more robust


On Tue, Jul 19, 2011 at 10:58:28AM +0200, Mark Wielaard wrote:
> I hope that after the next release I can cleanup the transport layer a
> bit more. In particular I think we should really get rid of the
> difference between _stp_ctl_send and _stp_ctl_write, which leads to
> needing an extra timer just to flush the messages from the queue (and
> check for the exit condition). If we can replace that logic with just a
> wait queue based trigger then the code could become a little simpler.
> The extra timer triggers made analyzing the above two bugs that much
> harder.

I finally did this:

commit 46ac9ed5bad86641e552bee4e42a2d973ffc12d0
Author: Mark Wielaard <mjw@redhat.com>
Date:   Fri Aug 12 19:34:20 2011 +0200

    Remove _stp_ctl_work_timer from module transport layer.
    
    The _stp_ctl_work_timer would trigger every 20ms to check whether
    there were cmd messages queued, but not announced yet and to
    check the _stp_exit_flag was set.
    
    This commit makes all control messages announce themselves and
    check the _stp_exit_flag in the _stp_ctl_read_cmd loop (delivery
    is still possibly delayed since the messages are just pushed on
    a wait queue).

Tested on f14, rhel5 and rhel4 without any regressions in make installcheck.

Cheers,

Mark


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]