i2c: mux: Fix channel node leak on adapter add failure
authorAhmad Byagowi <ahmadexp@gmail.com>
Sun, 23 Aug 2026 16:34:36 +0000 (09:34 -0700)
committerAndi Shyti <andi.shyti@kernel.org>
Wed, 26 Aug 2026 13:39:36 +0000 (15:39 +0200)
commit385c7af4e3b95d0769fd211831674e83b16a2ebf
treeb661c2880ad37d0edbbcfe32e2c17916adadba5b
parent47096fc3d064a07c0842f748b99ebf01be120f2b
i2c: mux: Fix channel node leak on adapter add failure

i2c_mux_add_adapter() takes a reference to the Device Tree channel node
before registering the new adapter. If adapter registration fails, the
error path frees the private data without dropping that reference.

Release the channel node before freeing the private data.

Fixes: bc45449b1444 ("i2c/of: Automatically populate i2c mux busses from device tree data.")
Signed-off-by: Ahmad Byagowi <ahmadexp@gmail.com>
Cc: <stable@vger.kernel.org> # v3.5+
Acked-by: Peter Rosin <peda@lysator.liu.se>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://patch.msgid.link/b3e46bbee781b3cb4029aca9a71316cc5e36dc17.1787502619.git.ahmadexp@gmail.com
drivers/i2c/i2c-mux.c