Hi Laura, I love your patch! Perhaps something to improve: [auto build test WARNING on v4.16-rc4] [also build test WARNING on next-20180316] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Laura-Abbott/VLA-removal-from-the-gpio-subsystem/20180317-210828 config: i386-defconfig (attached as .config) compiler: gcc-7 (Debian 7.3.0-1) 7.3.0 reproduce: # save the attached .config to linux build tree make ARCH=i386 All warnings (new ones prefixed by >>): In file included from drivers/clk/clk-gpio.c:18:0: include/linux/gpio/consumer.h: In function 'gpiod_set_raw_array_value_cansleep': >> include/linux/gpio/consumer.h:433:9: warning: 'return' with a value, in function returning void return 0; ^ include/linux/gpio/consumer.h:427:20: note: declared here static inline void gpiod_set_raw_array_value_cansleep(unsigned int array_size, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/return +433 include/linux/gpio/consumer.h 380 381 static inline int gpiod_get_value_cansleep(const struct gpio_desc *desc) 382 { 383 /* GPIO can never have been requested */ 384 WARN_ON(1); 385 return 0; 386 } 387 static inline int gpiod_get_array_value_cansleep(unsigned int array_size, 388 struct gpio_desc **desc_array, 389 int *value_array) 390 { 391 /* GPIO can never have been requested */ 392 WARN_ON(1); 393 return 0; 394 } 395 static inline void gpiod_set_value_cansleep(struct gpio_desc *desc, int value) 396 { 397 /* GPIO can never have been requested */ 398 WARN_ON(1); 399 } 400 static inline void gpiod_set_array_value_cansleep(unsigned int array_size, 401 struct gpio_desc **desc_array, 402 int *value_array) 403 { 404 /* GPIO can never have been requested */ 405 WARN_ON(1); 406 } 407 static inline int gpiod_get_raw_value_cansleep(const struct gpio_desc *desc) 408 { 409 /* GPIO can never have been requested */ 410 WARN_ON(1); 411 return 0; 412 } 413 static inline int gpiod_get_raw_array_value_cansleep(unsigned int array_size, 414 struct gpio_desc **desc_array, 415 int *value_array) 416 { 417 /* GPIO can never have been requested */ 418 WARN_ON(1); 419 return 0; 420 } 421 static inline void gpiod_set_raw_value_cansleep(struct gpio_desc *desc, 422 int value) 423 { 424 /* GPIO can never have been requested */ 425 WARN_ON(1); 426 } 427 static inline void gpiod_set_raw_array_value_cansleep(unsigned int array_size, 428 struct gpio_desc **desc_array, 429 int *value_array) 430 { 431 /* GPIO can never have been requested */ 432 WARN_ON(1); > 433 return 0; 434 } 435 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation