forked from mirrors/linux
		
	tipc: use consistent GFP flags
Some functions, like tipc_crypto_start use inconsisten GFP flags when allocating memory. The mentioned function use GFP_ATOMIC to to alloc a crypto instance, and then calls alloc_ordered_workqueue() which allocates memory with GFP_KERNEL. tipc_aead_init() function even uses GFP_KERNEL and GFP_ATOMIC interchangeably. No doc comment specifies what context a function is designed to work in, but the flags should at least be consistent within a function. Cc: Jon Maloy <jmaloy@redhat.com> Cc: Ying Xue <ying.xue@windriver.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: Jakub Kicinski <kuba@kernel.org> Cc: netdev@vger.kernel.org Cc: tipc-discussion@lists.sourceforge.net Cc: linux-kernel@vger.kernel.org Signed-off-by: Tadeusz Struk <tadeusz.struk@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
							parent
							
								
									1aa3b2207e
								
							
						
					
					
						commit
						86c3a3e964
					
				
					 1 changed files with 4 additions and 4 deletions
				
			
		|  | @ -524,7 +524,7 @@ static int tipc_aead_init(struct tipc_aead **aead, struct tipc_aead_key *ukey, | |||
| 		return -EEXIST; | ||||
| 
 | ||||
| 	/* Allocate a new AEAD */ | ||||
| 	tmp = kzalloc(sizeof(*tmp), GFP_ATOMIC); | ||||
| 	tmp = kzalloc(sizeof(*tmp), GFP_KERNEL); | ||||
| 	if (unlikely(!tmp)) | ||||
| 		return -ENOMEM; | ||||
| 
 | ||||
|  | @ -1470,7 +1470,7 @@ int tipc_crypto_start(struct tipc_crypto **crypto, struct net *net, | |||
| 		return -EEXIST; | ||||
| 
 | ||||
| 	/* Allocate crypto */ | ||||
| 	c = kzalloc(sizeof(*c), GFP_ATOMIC); | ||||
| 	c = kzalloc(sizeof(*c), GFP_KERNEL); | ||||
| 	if (!c) | ||||
| 		return -ENOMEM; | ||||
| 
 | ||||
|  | @ -1484,7 +1484,7 @@ int tipc_crypto_start(struct tipc_crypto **crypto, struct net *net, | |||
| 	} | ||||
| 
 | ||||
| 	/* Allocate statistic structure */ | ||||
| 	c->stats = alloc_percpu_gfp(struct tipc_crypto_stats, GFP_ATOMIC); | ||||
| 	c->stats = alloc_percpu(struct tipc_crypto_stats); | ||||
| 	if (!c->stats) { | ||||
| 		if (c->wq) | ||||
| 			destroy_workqueue(c->wq); | ||||
|  | @ -2457,7 +2457,7 @@ static void tipc_crypto_work_tx(struct work_struct *work) | |||
| 	} | ||||
| 
 | ||||
| 	/* Lets duplicate it first */ | ||||
| 	skey = kmemdup(aead->key, tipc_aead_key_size(aead->key), GFP_ATOMIC); | ||||
| 	skey = kmemdup(aead->key, tipc_aead_key_size(aead->key), GFP_KERNEL); | ||||
| 	rcu_read_unlock(); | ||||
| 
 | ||||
| 	/* Now, generate new key, initiate & distribute it */ | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Tadeusz Struk
						Tadeusz Struk