On Sat, 15 Dec 2018 12:14:41 +0800 (CST)
tenys <[email protected]> wrote:
> it looks like a pointer stored without holding a reference
> for the source code in kernel version v4.14.88, and the fuction is :
> ipxitf_insert_socket
>
> static void ipxitf_insert_socket(struct ipx_interface *intrfc, struct sock
> *sk)
> { ipxitf_hold(intrfc);
> spin_lock_bh(&intrfc->if_sklist_lock);
> ipx_sk(sk)->intrfc = intrfc;
> sk_add_node(sk, &intrfc->if_sklist);
> spin_unlock_bh(&intrfc->if_sklist_lock);
> ipxitf_put(intrfc);
> }
>
> it assigned the pointer `intrfc` to `sk->intrfc`, but didn't hold a
> reference for this pointer.
> it looks like a bug.....if not ,could you please explain the meaning of it?
> thanks a lot!
>
>
>
>
>
>
>
>
>
>
>
IPX ha been removed in later kernels.