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.