Messages in this thread | | | From | Saravana Kannan <> | Date | Mon, 18 May 2020 00:48:42 -0700 | Subject | Re: [PATCH v1] driver core: Fix memory leak when adding SYNC_STATE_ONLY device links |
| |
On Sat, May 16, 2020 at 1:07 AM Saravana Kannan <saravanak@google.com> wrote: > > When SYNC_STATE_ONLY support was added in commit 05ef983e0d65 ("driver > core: Add device link support for SYNC_STATE_ONLY flag"), > device_link_add() incorrectly skipped adding the new SYNC_STATE_ONLY > device link to the supplier's and consumer's "device link" list. So the > "device link" is lost forever from driver core if the caller didn't keep > track of it (typically isn't expected to). > > If the same SYNC_STATE_ONLY device link is created again using > device_link_add(), instead of returning the pointer to the previously > created device link, a new device link is created and returned. This can > cause memory leaks in conjunction with fw_devlinks. > > Cc: stable@vger.kernel.org > Fixes: 05ef983e0d65 ("driver core: Add device link support for SYNC_STATE_ONLY flag") > Signed-off-by: Saravana Kannan <saravanak@google.com>
Greg/Rafael,
This patch causes a warning for SYNC_STATE_ONLY links because they allow consumers to probe before suppliers but the device link status/state change code wasn't written with that possibility in mind. So I need to fix up that warning or state change code.
Depending on how urgent you think memory leak fixes are, you can take it as is for now and I can send a separate patch to fix the warning/state change code later. Or if we can sit on this memory leak for a week, I might be able to fix the warning before then.
Thanks, Saravana
| |