Re: [PATCH 3/3] net: fix iteration for sctp transport seq_files

From: Marcelo Ricardo Leitner
Date: Fri Feb 05 2021 - 11:36:45 EST


On Fri, Feb 05, 2021 at 11:36:30AM +1100, NeilBrown wrote:
> The sctp transport seq_file iterators take a reference to the transport
> in the ->start and ->next functions and releases the reference in the
> ->show function. The preferred handling for such resources is to
> release them in the subsequent ->next or ->stop function call.
>
> Since Commit 1f4aace60b0e ("fs/seq_file.c: simplify seq_file iteration
> code and interface") there is no guarantee that ->show will be called
> after ->next, so this function can now leak references.
>
> So move the sctp_transport_put() call to ->next and ->stop.
>
> Fixes: 1f4aace60b0e ("fs/seq_file.c: simplify seq_file iteration code and interface")
> Reported-by: Xin Long <lucien.xin@xxxxxxxxx>
> Signed-off-by: NeilBrown <neilb@xxxxxxx>

Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>