X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=crypto%2Finternal.h;h=959e602909a60e1042e2d07d4d19471d9b0cd23c;hb=92445eaaadc1f03f5a177ecc957bda76bf2ba8d5;hp=37515beafc8ce44ff501d15d617968248656b59f;hpb=2f058256cb64e346f4fb4499ff4e0f1c2791a4b4;p=linux-2.6 diff --git a/crypto/internal.h b/crypto/internal.h index 37515beafc..959e602909 100644 --- a/crypto/internal.h +++ b/crypto/internal.h @@ -2,6 +2,7 @@ * Cryptographic API. * * Copyright (c) 2002 James Morris + * Copyright (c) 2005 Herbert Xu * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free @@ -16,9 +17,15 @@ #include #include #include +#include #include +#include +#include #include +extern struct list_head crypto_alg_list; +extern struct rw_semaphore crypto_alg_sem; + extern enum km_type crypto_km_types[]; static inline enum km_type crypto_kmap_type(int out) @@ -38,7 +45,7 @@ static inline void crypto_kunmap(void *vaddr, int out) static inline void crypto_yield(struct crypto_tfm *tfm) { - if (!in_atomic()) + if (tfm->crt_flags & CRYPTO_TFM_REQ_MAY_SLEEP) cond_resched(); }