1. 23 Jun, 2019 2 commits
    • Gustavo A. R. Silva's avatar
      Input: gpio_keys - use struct_size() in devm_kzalloc() · 002cdb95
      Gustavo A. R. Silva authored
      One of the more common cases of allocation size calculations is finding
      the size of a structure that has a zero-sized array at the end, along
      with memory for some number of elements for that array. For example:
      
      struct gpio_keys_drvdata {
      	...
              struct gpio_button_data data[0];
      };
      
      size = sizeof(struct gpio_keys_drvdata) + count * sizeof(struct gpio_button_data);
      instance = devm_kzalloc(dev, size, GFP_KERNEL);
      
      Instead of leaving these open-coded and prone to type mistakes, we can
      now use the new struct_size() helper:
      
      instance = devm_kzalloc(dev, struct_size(instance, data, count), GFP_KERNEL);
      
      Notice that, in this case, variable size is not necessary, hence it
      is removed.
      
      This code was detected with the help of Coccinelle.
      Signed-off-by: default avatarGustavo A. R. Silva <gustavo@embeddedor.com>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      002cdb95
    • Gustavo A. R. Silva's avatar
      Input: gpio_keys_polled - use struct_size() in devm_kzalloc() · 3d4149ec
      Gustavo A. R. Silva authored
      One of the more common cases of allocation size calculations is finding
      the size of a structure that has a zero-sized array at the end, along
      with memory for some number of elements for that array. For example:
      
      struct gpio_keys_polled_dev {
      	...
              struct gpio_keys_button_data data[0];
      };
      
      size = sizeof(struct gpio_keys_polled_dev) + count * sizeof(struct gpio_keys_button_data);
      instance = devm_kzalloc(dev, size, GFP_KERNEL);
      
      Instead of leaving these open-coded and prone to type mistakes, we can
      now use the new struct_size() helper:
      
      instance = devm_kzalloc(dev, struct_size(instance, data, count), GFP_KERNEL);
      
      Notice that, in this case, variable size is not necessary, hence it
      is removed.
      
      This code was detected with the help of Coccinelle.
      Signed-off-by: default avatarGustavo A. R. Silva <gustavo@embeddedor.com>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      3d4149ec
  2. 28 May, 2019 11 commits
  3. 23 May, 2019 3 commits
  4. 21 May, 2019 5 commits
  5. 15 May, 2019 2 commits
  6. 10 May, 2019 3 commits
  7. 08 May, 2019 11 commits
  8. 07 May, 2019 2 commits
  9. 06 May, 2019 1 commit