On 5 May 2015, at 21:36, Tuomas Räsänen <[email protected]> wrote:

>> 
>> Also, the lack of other people helping out with the source base have
>> held me back in that area; but perhaps this lack of interest is mainly
>> due to the fact that the code is so badly readable...?
> 
> Actually, the bad smell around the code was one of the reasons I got 
> interested
> in helping out about two years ago. Careful refactoring, step-by-step, is 
> quite
> satisfactory, am I the only village idiot getting kicks from fixing smelly
> C-code (and wearing black leather programming gloves)?

+1. As someone who has had the occasional burst of fixing up the code
in the past, I don't think it's unfixable. There's bits of it that are
a bit smelly, but most of those are related to the protocol - some
to back compatibility, but some to flaws in the present day protocol
(e.g. how do you report an error halfway through a large read unless
the read is RAM buffered first).

There's some restructuring that would be nice to do - for instance
the negotiation stuff (last time I looked at it) was opaque in how
it worked and a state machine implementation would be cleaner. And
it would be nice to separate this from the mainloop to give a choice
of backends (AIO etc.), and give a choice of forking vs threading
vs whatnot.

But I've seen far worse, and I'm not convinced a 'nuke from orbit'
approach is really necessary unless you're going to so something
truly radical like incorporate it into the kernel (and no, I see
no need for that).

-- 
Alex Bligh





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Nbd-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/nbd-general

Reply via email to