On Sat, 15 Dec 2018 12:14:41 +0800 (CST)
tenys <15667082...@163.com> 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.

Reply via email to