mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	crypto: caam - avoid needlessly saving and restoring caam_hash_ctx
When exporting and importing the hash state, we will only export and import into hashes which share the same struct crypto_ahash pointer. (See hash_accept->af_alg_accept->hash_accept_parent.) This means that saving the caam_hash_ctx structure on export, and restoring it on import is a waste of resources. So, remove this code. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
		
							parent
							
								
									6ea30f0acf
								
							
						
					
					
						commit
						434b421241
					
				
					 1 changed files with 4 additions and 8 deletions
				
			
		| 
						 | 
				
			
			@ -1554,24 +1554,20 @@ static int ahash_final(struct ahash_request *req)
 | 
			
		|||
static int ahash_export(struct ahash_request *req, void *out)
 | 
			
		||||
{
 | 
			
		||||
	struct crypto_ahash *ahash = crypto_ahash_reqtfm(req);
 | 
			
		||||
	struct caam_hash_ctx *ctx = crypto_ahash_ctx(ahash);
 | 
			
		||||
	struct caam_hash_state *state = ahash_request_ctx(req);
 | 
			
		||||
 | 
			
		||||
	memcpy(out, ctx, sizeof(struct caam_hash_ctx));
 | 
			
		||||
	memcpy(out + sizeof(struct caam_hash_ctx), state,
 | 
			
		||||
	       sizeof(struct caam_hash_state));
 | 
			
		||||
	memcpy(out, state, sizeof(struct caam_hash_state));
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int ahash_import(struct ahash_request *req, const void *in)
 | 
			
		||||
{
 | 
			
		||||
	struct crypto_ahash *ahash = crypto_ahash_reqtfm(req);
 | 
			
		||||
	struct caam_hash_ctx *ctx = crypto_ahash_ctx(ahash);
 | 
			
		||||
	struct caam_hash_state *state = ahash_request_ctx(req);
 | 
			
		||||
 | 
			
		||||
	memcpy(ctx, in, sizeof(struct caam_hash_ctx));
 | 
			
		||||
	memcpy(state, in + sizeof(struct caam_hash_ctx),
 | 
			
		||||
	       sizeof(struct caam_hash_state));
 | 
			
		||||
	memcpy(state, in, sizeof(struct caam_hash_state));
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue