[lvc-project] [PATCH] mac802154: fix interface deletion

Dmitry Antipov dmantipov at yandex.ru
Tue Nov 12 08:47:08 MSK 2024


On 11/11/24 10:41 PM, Miquel Raynal wrote:

> Why not just enclose this list_del() within a mutex_lock(iflist_mtx)
> like the others? Would probably make more sense and prevent the use of
> yet another protection mechanism? Is there anything preventing the use
> of this mutex here?

IIUC this will not work because 'ieee802154_if_remove()' may be called for
'sdata' which was previously removed via 'ieee802154_remove_interfaces()'.
After the latter, 'sdata->list' is undefined (or poisoned if CONFIG_DEBUG_LIST
is enabled), so re-entering 'list_del(&sdata->list)' in the former is a bug.

Dmitry




More information about the lvc-project mailing list