mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	gpio: Remove VLA from MAX3191X driver
The new challenge is to remove VLAs from the kernel (see https://lkml.org/lkml/2018/3/7/621) This patch replaces several a VLA with an appropriate call to kmalloc_array. Signed-off-by: Laura Abbott <labbott@redhat.com> Reviewed-and-tested-by: Lukas Wunner <lukas@wunner.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
		
							parent
							
								
									a8ff510dbc
								
							
						
					
					
						commit
						48da181dac
					
				
					 1 changed files with 6 additions and 1 deletions
				
			
		| 
						 | 
					@ -315,12 +315,17 @@ static void gpiod_set_array_single_value_cansleep(unsigned int ndescs,
 | 
				
			||||||
						  struct gpio_desc **desc,
 | 
											  struct gpio_desc **desc,
 | 
				
			||||||
						  int value)
 | 
											  int value)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	int i, values[ndescs];
 | 
						int i, *values;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						values = kmalloc_array(ndescs, sizeof(*values), GFP_KERNEL);
 | 
				
			||||||
 | 
						if (!values)
 | 
				
			||||||
 | 
							return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (i = 0; i < ndescs; i++)
 | 
						for (i = 0; i < ndescs; i++)
 | 
				
			||||||
		values[i] = value;
 | 
							values[i] = value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	gpiod_set_array_value_cansleep(ndescs, desc, values);
 | 
						gpiod_set_array_value_cansleep(ndescs, desc, values);
 | 
				
			||||||
 | 
						kfree(values);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static struct gpio_descs *devm_gpiod_get_array_optional_count(
 | 
					static struct gpio_descs *devm_gpiod_get_array_optional_count(
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue