Replay progress report

Eric S. Raymond esr at
Wed Jan 6 15:56:32 UTC 2016

Hal Murray <hmurray at>:
> esr at said:
> > This scheme depends on the assumption that, before the main loop, intercept
> > functions will be called in the exact same order during replay that they
> > were during capture.  There's no separate replay interpreter that is
> > dispatching events itself, so there is no way to handle a getaddrinfo event.
> Ahh.  I think you need a dispatching layer.  DNS is just the tip of the 
> iceberg.

You may be right, but this is complexity I am strenuously trying to
avoid while I get the basic function up.

> You also need to handle timeouts from the select and anything else the normal 
> main loop does.  That includes signal handling.  I think most of the signal 
> handlers just set a flag then the main loop notices the flag and does the 
> work.
> Currently, the only interesting signal tells ntpd to exit.

Right, that doesn't require a full dispatch layer.

> There are signal handlers to incr/decr the debug level.  I think those get "processed" at interrupt level.  That will be hard to intercept.  Do we want to replay debugging stuff?

Maybe eventually, but that is way fancier than I want to try to get yet.

> I think there is an I/O signal handler.  The idea was to grab arriving packets "now" to get a better time stamp in case the CPU is tied up doing crypto, and queue them up for the main loop to process.  That isn't necessary if the kernel time-stamps arriving packets.  I haven't looked for this code.

That's in the part replay nrcessarily bypasses.

> Refclocks will add another place to dispatch.
> You will also need to intercept PPS.

I belive this is what is most likely to force me to a full dispatch layer
		<a href="">Eric S. Raymond</a>

More information about the devel mailing list