On Tue, Jul 18, 2023 at 05:29:17PM +0200, Milan Zamazal wrote: > Commit 813665564b3d ("iio: core: Convert to use firmware node handle > instead of OF node") switched the kind of nodes to use for label > retrieval in device registration. Probably an unwanted change in that > commit was that if the device has no parent then NULL pointer is > accessed. This is what happens in the stock IIO dummy driver when a > new entry is created in configfs: > # mkdir /sys/kernel/config/iio/devices/dummy/foo > BUG: kernel NULL pointer dereference, address: ... > ... > Call Trace: > ... > asm_exc_page_fault > container_offline > __iio_device_register > krealloc > iio_device_attach_buffer > iio_simple_dummy_configure_buffer > iio_triggered_buffer_setup_ext > iio_dummy_probe > iio_sw_device_create > device_make_group > configfs_mkdir Please, remove more unrelated lines in this backtrace. Ideally it should come to ~4-5. For example, you posted a command line, it's obvious that you run configfs, so the last (two) line(s) of the backtrace are redundant. Then drop basic stuff, like: asm_exc_page_fault container_offline krealloc Then remove unrelated IIO internals. > Since there seems to be no reason to make a parent device of an IIO > dummy device mandatory, let’s prevent the invalid memory access in > __iio_device_register when the parent device is NULL. With this > change, the IIO dummy driver works fine with configfs. The code wise it's okay now, so after addressing above Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> -- With Best Regards, Andy Shevchenko