netdev
[Top] [All Lists]

Re: Asynchronous crypto layer.

To: jamal <hadi@xxxxxxxxxx>, James Morris <jmorris@xxxxxxxxxx>, Michal Ludvig <michal@xxxxxxxx>
Subject: Re: Asynchronous crypto layer.
From: Evgeniy Polyakov <johnpol@xxxxxxxxxxx>
Date: Tue, 2 Nov 2004 19:12:35 +0300
Cc: netdev@xxxxxxxxxxx, cryptoapi@xxxxxxxxxxxxxx
In-reply-to: <1099030958.4944.148.camel@uganda>
Organization: MIPT
References: <1099030958.4944.148.camel@uganda>
Sender: netdev-bounce@xxxxxxxxxxx
This patch implements several features discussed previously:
- crypto_session_alloc() split. I did not change crypto_session_alloc() 
        name, but added 
        struct crypto_session *crypto_session_create(
                struct crypto_initizlier *, struct crypto_data *)
        and void crypto_session_add(struct crypto_session *s);
        Thus now we have timeslice for crypto routing manipulations.
- Added per crypto_initializer ptime and scomp fields.
        The former is total time sessions with given crypto_initializer 
        being processed, it is in jifies.
        The latter is total number of session with given crypto_initializer 
        already have been processed. Sum of all scomp above is equal to
        dev->stat.scompleted - total number io completed sessions 
        in given device.
- Added crypto_wake_lb() call - this function is called when device
        finishes session processing(by calling stop_process_session()).
        It wakes crypto_lb_thread() which efficiently reduces latancies.
- Added struct crypto_data * parameter into crypto_lb_find_device().
        Load balancer now has ability to select device based not only 
        on device's capabilities, but on packet's characteristics too.
- If none crypto load balancer registered yet, then just return NULL
        from crypto_session_{create,alloc}(), not BUG_ON().
        

        Evgeniy Polyakov

Only failure makes us experts. -- Theo de Raadt

Attachment: crypto.patch
Description: Binary data

<Prev in Thread] Current Thread [Next in Thread>