net/tls: store async_capable on a single bit

Store async_capable on a single bit instead of a full integer
to save space.

Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Simon Horman <simon.horman@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Jakub Kicinski 2019-10-06 21:09:31 -07:00 committed by David S. Miller
parent 4de30a8d58
commit 5c5458ec9d
2 changed files with 5 additions and 4 deletions

View File

@ -136,7 +136,7 @@ struct tls_sw_context_tx {
struct list_head tx_list; struct list_head tx_list;
atomic_t encrypt_pending; atomic_t encrypt_pending;
int async_notify; int async_notify;
int async_capable; u8 async_capable:1;
#define BIT_TX_SCHEDULED 0 #define BIT_TX_SCHEDULED 0
#define BIT_TX_CLOSING 1 #define BIT_TX_CLOSING 1
@ -152,7 +152,7 @@ struct tls_sw_context_rx {
struct sk_buff *recv_pkt; struct sk_buff *recv_pkt;
u8 control; u8 control;
int async_capable; u8 async_capable:1;
bool decrypted; bool decrypted;
atomic_t decrypt_pending; atomic_t decrypt_pending;
bool async_notify; bool async_notify;

View File

@ -2391,10 +2391,11 @@ int tls_set_sw_offload(struct sock *sk, struct tls_context *ctx, int tx)
tfm = crypto_aead_tfm(sw_ctx_rx->aead_recv); tfm = crypto_aead_tfm(sw_ctx_rx->aead_recv);
if (crypto_info->version == TLS_1_3_VERSION) if (crypto_info->version == TLS_1_3_VERSION)
sw_ctx_rx->async_capable = false; sw_ctx_rx->async_capable = 0;
else else
sw_ctx_rx->async_capable = sw_ctx_rx->async_capable =
tfm->__crt_alg->cra_flags & CRYPTO_ALG_ASYNC; !!(tfm->__crt_alg->cra_flags &
CRYPTO_ALG_ASYNC);
/* Set up strparser */ /* Set up strparser */
memset(&cb, 0, sizeof(cb)); memset(&cb, 0, sizeof(cb));