Subject: Re: Asynchronous crypto layer.

From: Evgeniy Polyakov <[email-masked]>
Date: Tue, 14 Dec 2004 11:07:18 +0300

On Tue, 2004-12-14 at 02:23 -0500, James Morris wrote:
> On Tue, 2 Nov 2004, Evgeniy Polyakov wrote:
> 
> Some feedback:
> 
> +#define session_completed(s)   (s->ci.flags & SESSION_COMPLETED)
> +#define complete_session(s)    do {s->ci.flags |= SESSION_COMPLETED;} while(0)
> +#define uncomplete_session(s)  do {s->ci.flags &= ~SESSION_COMPLETED;} while (0)
> etc.
> 
> Please use static inlines for all of these things.
> Are these supposed to be exported to userspace?  Why?

No, they are not supposed to be exported, I will convert them.

> 
> +struct crypto_conn_data
> +{
> +       char                    name[SCACHE_NAMELEN];
> +       __u16                   cmd;
> 
> Again, exporting to userspace?

Yes, it is part of the acrypto control over connector(netlink) protocol.

> 
> +       list_for_each_entry_safe(__dev, n, &cdev_list, cdev_entry)
> +       {
> +               if (compare_device(__dev, dev))
> +               {
> 
> Incorrect coding style (and many more).

Sigh... :)
<very sadly> I know, know, and will change it. </very sadly>

> As mentioned before, pluggable load balacers are not needed now, and 
> complicate the code.

I am still not giving up :) - 
we have several TCP congestion models, we have different IO schedulers, 
we can tune routing code(although we can not change hash to tree in
runtime).

> - James
-- 
        Evgeniy Polyakov

Crash is better than data corruption -- Arthur Grabowski