[Xenomai-git] Gilles Chanteperdrix : rtnet/icmp: reference socket in icmp_dest_socket()
Module: xenomai-3 Branch: master Commit: 51258eccf7e4d650e5e86816e1c2592fa01a51f9 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=51258eccf7e4d650e5e86816e1c2592fa01a51f9 Author: Gilles ChanteperdrixDate: Tue Sep 29 23:09:31 2015 +0200 rtnet/icmp: reference socket in icmp_dest_socket() Otherwise when rt_ip_rcv() dereferences the socket, its fake reference count reaches 0, which causes a destruction of the nonexistent file descriptor associated with this fake icmp socket. Ending up with a kernel oops in fd_cleanup_thread(). --- kernel/drivers/net/stack/ipv4/icmp.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/drivers/net/stack/ipv4/icmp.c b/kernel/drivers/net/stack/ipv4/icmp.c index 4b83942..b6ae736 100644 --- a/kernel/drivers/net/stack/ipv4/icmp.c +++ b/kernel/drivers/net/stack/ipv4/icmp.c @@ -446,8 +446,7 @@ static struct rt_icmp_control rt_icmp_pointers[NR_ICMP_TYPES+1] = */ struct rtsocket *rt_icmp_dest_socket(struct rtskb *skb) { -/* Note that the socket's refcount is not used by this protocol. - * The socket returned here is static and not part of the global pool. */ +rt_socket_reference(icmp_socket); return icmp_socket; } ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Gilles Chanteperdrix : rtnet/icmp: reference socket in icmp_dest_socket()
Module: xenomai-3 Branch: arm64 Commit: 51258eccf7e4d650e5e86816e1c2592fa01a51f9 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=51258eccf7e4d650e5e86816e1c2592fa01a51f9 Author: Gilles ChanteperdrixDate: Tue Sep 29 23:09:31 2015 +0200 rtnet/icmp: reference socket in icmp_dest_socket() Otherwise when rt_ip_rcv() dereferences the socket, its fake reference count reaches 0, which causes a destruction of the nonexistent file descriptor associated with this fake icmp socket. Ending up with a kernel oops in fd_cleanup_thread(). --- kernel/drivers/net/stack/ipv4/icmp.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/drivers/net/stack/ipv4/icmp.c b/kernel/drivers/net/stack/ipv4/icmp.c index 4b83942..b6ae736 100644 --- a/kernel/drivers/net/stack/ipv4/icmp.c +++ b/kernel/drivers/net/stack/ipv4/icmp.c @@ -446,8 +446,7 @@ static struct rt_icmp_control rt_icmp_pointers[NR_ICMP_TYPES+1] = */ struct rtsocket *rt_icmp_dest_socket(struct rtskb *skb) { -/* Note that the socket's refcount is not used by this protocol. - * The socket returned here is static and not part of the global pool. */ +rt_socket_reference(icmp_socket); return icmp_socket; } ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Gilles Chanteperdrix : rtnet/icmp: reference socket in icmp_dest_socket()
Module: xenomai-gch Branch: for-forge Commit: bdc78af9b1c249c4567aa1db1bc0e621dbcdea50 URL: http://git.xenomai.org/?p=xenomai-gch.git;a=commit;h=bdc78af9b1c249c4567aa1db1bc0e621dbcdea50 Author: Gilles ChanteperdrixDate: Tue Sep 29 23:09:31 2015 +0200 rtnet/icmp: reference socket in icmp_dest_socket() Otherwise when rt_ip_rcv() dereferences the socket, its fake reference count reaches 0, which causes a destruction of the nonexistent file descriptor associated with this fake icmp socket. Ending up with a kernel oops in fd_cleanup_thread(). --- kernel/drivers/net/stack/ipv4/icmp.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/drivers/net/stack/ipv4/icmp.c b/kernel/drivers/net/stack/ipv4/icmp.c index 4b83942..b6ae736 100644 --- a/kernel/drivers/net/stack/ipv4/icmp.c +++ b/kernel/drivers/net/stack/ipv4/icmp.c @@ -446,8 +446,7 @@ static struct rt_icmp_control rt_icmp_pointers[NR_ICMP_TYPES+1] = */ struct rtsocket *rt_icmp_dest_socket(struct rtskb *skb) { -/* Note that the socket's refcount is not used by this protocol. - * The socket returned here is static and not part of the global pool. */ +rt_socket_reference(icmp_socket); return icmp_socket; } ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Gilles Chanteperdrix : rtnet/icmp: reference socket in icmp_dest_socket()
Module: xenomai-gch Branch: for-forge Commit: 8b556e3be72e1f0067a20f7998f8aa0d306544db URL: http://git.xenomai.org/?p=xenomai-gch.git;a=commit;h=8b556e3be72e1f0067a20f7998f8aa0d306544db Author: Gilles ChanteperdrixDate: Tue Sep 29 23:09:31 2015 +0200 rtnet/icmp: reference socket in icmp_dest_socket() Otherwise when rt_ip_rcv() dereferences the socket, its fake reference count reaches 0, which causes a destruction of the nonexistent file descriptor associated with this fake icmp socket. Ending up with a kernel oops in fd_cleanup_thread(). --- kernel/drivers/net/stack/ipv4/icmp.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/drivers/net/stack/ipv4/icmp.c b/kernel/drivers/net/stack/ipv4/icmp.c index 4b83942..b6ae736 100644 --- a/kernel/drivers/net/stack/ipv4/icmp.c +++ b/kernel/drivers/net/stack/ipv4/icmp.c @@ -446,8 +446,7 @@ static struct rt_icmp_control rt_icmp_pointers[NR_ICMP_TYPES+1] = */ struct rtsocket *rt_icmp_dest_socket(struct rtskb *skb) { -/* Note that the socket's refcount is not used by this protocol. - * The socket returned here is static and not part of the global pool. */ +rt_socket_reference(icmp_socket); return icmp_socket; } ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Gilles Chanteperdrix : rtnet/icmp: reference socket in icmp_dest_socket()
Module: xenomai-3 Branch: next Commit: 51258eccf7e4d650e5e86816e1c2592fa01a51f9 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=51258eccf7e4d650e5e86816e1c2592fa01a51f9 Author: Gilles ChanteperdrixDate: Tue Sep 29 23:09:31 2015 +0200 rtnet/icmp: reference socket in icmp_dest_socket() Otherwise when rt_ip_rcv() dereferences the socket, its fake reference count reaches 0, which causes a destruction of the nonexistent file descriptor associated with this fake icmp socket. Ending up with a kernel oops in fd_cleanup_thread(). --- kernel/drivers/net/stack/ipv4/icmp.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/drivers/net/stack/ipv4/icmp.c b/kernel/drivers/net/stack/ipv4/icmp.c index 4b83942..b6ae736 100644 --- a/kernel/drivers/net/stack/ipv4/icmp.c +++ b/kernel/drivers/net/stack/ipv4/icmp.c @@ -446,8 +446,7 @@ static struct rt_icmp_control rt_icmp_pointers[NR_ICMP_TYPES+1] = */ struct rtsocket *rt_icmp_dest_socket(struct rtskb *skb) { -/* Note that the socket's refcount is not used by this protocol. - * The socket returned here is static and not part of the global pool. */ +rt_socket_reference(icmp_socket); return icmp_socket; } ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Gilles Chanteperdrix : rtnet/icmp: reference socket in icmp_dest_socket()
Module: xenomai-gch Branch: for-forge Commit: 202dd729a7aa0e80f7e92f92dcba60e0ed810587 URL: http://git.xenomai.org/?p=xenomai-gch.git;a=commit;h=202dd729a7aa0e80f7e92f92dcba60e0ed810587 Author: Gilles ChanteperdrixDate: Tue Sep 29 23:09:31 2015 +0200 rtnet/icmp: reference socket in icmp_dest_socket() Otherwise when rt_ip_rcv() dereferences the socket, its fake reference count reaches 0, which causes a destruction of the nonexistent file descriptor associated with this fake icmp socket. Ending up with a kernel oops in fd_cleanup_thread(). --- kernel/drivers/net/stack/ipv4/icmp.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/drivers/net/stack/ipv4/icmp.c b/kernel/drivers/net/stack/ipv4/icmp.c index 4b83942..b6ae736 100644 --- a/kernel/drivers/net/stack/ipv4/icmp.c +++ b/kernel/drivers/net/stack/ipv4/icmp.c @@ -446,8 +446,7 @@ static struct rt_icmp_control rt_icmp_pointers[NR_ICMP_TYPES+1] = */ struct rtsocket *rt_icmp_dest_socket(struct rtskb *skb) { -/* Note that the socket's refcount is not used by this protocol. - * The socket returned here is static and not part of the global pool. */ +rt_socket_reference(icmp_socket); return icmp_socket; } ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Gilles Chanteperdrix : rtnet/icmp: reference socket in icmp_dest_socket()
Module: xenomai-3 Branch: next Commit: 202dd729a7aa0e80f7e92f92dcba60e0ed810587 URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=202dd729a7aa0e80f7e92f92dcba60e0ed810587 Author: Gilles ChanteperdrixDate: Tue Sep 29 23:09:31 2015 +0200 rtnet/icmp: reference socket in icmp_dest_socket() Otherwise when rt_ip_rcv() dereferences the socket, its fake reference count reaches 0, which causes a destruction of the nonexistent file descriptor associated with this fake icmp socket. Ending up with a kernel oops in fd_cleanup_thread(). --- kernel/drivers/net/stack/ipv4/icmp.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/drivers/net/stack/ipv4/icmp.c b/kernel/drivers/net/stack/ipv4/icmp.c index 4b83942..b6ae736 100644 --- a/kernel/drivers/net/stack/ipv4/icmp.c +++ b/kernel/drivers/net/stack/ipv4/icmp.c @@ -446,8 +446,7 @@ static struct rt_icmp_control rt_icmp_pointers[NR_ICMP_TYPES+1] = */ struct rtsocket *rt_icmp_dest_socket(struct rtskb *skb) { -/* Note that the socket's refcount is not used by this protocol. - * The socket returned here is static and not part of the global pool. */ +rt_socket_reference(icmp_socket); return icmp_socket; } ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Gilles Chanteperdrix : rtnet/icmp: reference socket in icmp_dest_socket()
Module: xenomai-gch Branch: for-forge Commit: 30ae291e9323a9e0409b429d94c166e4258aa740 URL: http://git.xenomai.org/?p=xenomai-gch.git;a=commit;h=30ae291e9323a9e0409b429d94c166e4258aa740 Author: Gilles ChanteperdrixDate: Tue Sep 29 23:09:31 2015 +0200 rtnet/icmp: reference socket in icmp_dest_socket() Otherwise when rt_ip_rcv() dereferences the socket, its fake reference count reaches 0, which causes a destruction of the nonexistent file descriptor associated with this fake icmp socket. Ending up with a kernel oops in fd_cleanup_thread(). --- kernel/drivers/net/stack/ipv4/icmp.c |3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/drivers/net/stack/ipv4/icmp.c b/kernel/drivers/net/stack/ipv4/icmp.c index 4b83942..b6ae736 100644 --- a/kernel/drivers/net/stack/ipv4/icmp.c +++ b/kernel/drivers/net/stack/ipv4/icmp.c @@ -446,8 +446,7 @@ static struct rt_icmp_control rt_icmp_pointers[NR_ICMP_TYPES+1] = */ struct rtsocket *rt_icmp_dest_socket(struct rtskb *skb) { -/* Note that the socket's refcount is not used by this protocol. - * The socket returned here is static and not part of the global pool. */ +rt_socket_reference(icmp_socket); return icmp_socket; } ___ Xenomai-git mailing list Xenomai-git@xenomai.org http://xenomai.org/mailman/listinfo/xenomai-git