Re: [PATCH] firewire: cdev: fix back-transition for iso_resource_auto client resource

From: Takashi Sakamoto

Date: Tue Sep 22 2026 - 20:27:06 EST


On Tue, Sep 22, 2026 at 10:26:39PM +0900, Takashi Sakamoto wrote:
> The todo member of iso_resource_auto structure represents the state of the
> client resource and normally transitions in the following order:
>
> ISO_RES_AUTO_ALLOC -> ISO_RES_AUTO_REALLOC -> ISO_RES_AUTO_DEALLOC
>
> However, concurrent access from the work item and the file descriptor
> release function can cause the state to transition backwards from
> ISO_RES_AUTO_DEALLOC to ISO_RES_AUTO_REALLOC.
>
> Prevent the back-transition by checking the current state before
> updating it in the work item.
>
> Fixes: fcabbf40fae5 ("firewire: core: move allocation/reallocation paths into specific branch after isoc resource management in cdev")
> Signed-off-by: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx>
> ---
> drivers/firewire/core-cdev.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)

Applied to for-linus branch.


Regards

Takashi Sakamoto