Pull spi fix from Mark Brown: "This is a straightforward fix for a reference count leak in the rarely used SPI device mode functionality" * tag 'spi-fix-v6.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: spi: Fix reference count leak in slave_show()
Unified · Split
| @@ -2954,9 +2954,13 @@ static ssize_t slave_show(struct device *dev, struct device_attribute *attr, · 2953 unmodified lines | |||
| 2954 | struct spi_controller *ctlr = container_of(dev, struct spi_controller, | 2954 | struct spi_controller *ctlr = container_of(dev, struct spi_controller, |
| 2955 | dev); | 2955 | dev); |
| 2956 | struct device *child; | 2956 | struct device *child; |
| 2957 | int ret; | ||
| 2957 | 2958 | ||
| 2958 | child = device_find_any_child(&ctlr->dev); | 2959 | child = device_find_any_child(&ctlr->dev); |
| 2959 | return sysfs_emit(buf, "%s\n", child ? to_spi_device(child)->modalias : NULL); | 2960 | ret = sysfs_emit(buf, "%s\n", child ? to_spi_device(child)->modalias : NULL); |
| 2961 | put_device(child); | ||
| 2962 | |||
| 2963 | return ret; | ||
| 2960 | } | 2964 | } |
| 2961 | 2965 | ||
| 2962 | static ssize_t slave_store(struct device *dev, struct device_attribute *attr, | 2966 | static ssize_t slave_store(struct device *dev, struct device_attribute *attr, |