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 | 2954 | struct spi_controller *ctlr = container_of(dev, struct spi_controller, |
| 2955 | 2955 | dev); |
| 2956 | 2956 | struct device *child; |
| 2957 | + int ret; | |
| 2957 | 2958 | |
| 2958 | 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 | 2966 | static ssize_t slave_store(struct device *dev, struct device_attribute *attr, |