On Tue, Sep 01, 2009 at 10:42:44AM -0500, Brad Bosch wrote: > > Now, ctx-err may be used by both async_chainiv_postpone_request to > store the return value from skcipher_enqueue_givcrypt and by > async_chainiv_givencrypt_tail to store the return value from > crypto_ablkcipher_encrypt at the same time. This can cause the > calling function to think async_chainiv_givencrypt has completed it's > work, when in fact, the work was defered. async_chainiv_postpone_request never touches ctx->err unless it can obtain the INUSE bit lock. On the other hand, the normal patch async_chainiv_givencrypt_tail never relinquishes the INUSE bit until it is finisehd with ctx->err. > OK. I see now that your offset patch should indeed solve that > problem. But why did you choose to fix it in a complex way? My > suggestion just adds a single test while yours adds new parameters, a > new function and an extra function call. Because that introduces two NULL checks where the second one is useless. Not a big deal but then again, my patch wasn't that complicated either :) Please let me know whether it actually fixes your problem though so I can get this upstream. Thanks, -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html