From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ursula Braun Subject: [PATCH V3 net-next 3/5] net: introduce socket family constants Date: Wed, 22 Jul 2015 10:59:50 +0200 Message-ID: <1437555592-16506-4-git-send-email-ubraun@linux.vnet.ibm.com> References: <20150715.212837.233151628267116088.davem@davemloft.net> <1437555592-16506-1-git-send-email-ubraun@linux.vnet.ibm.com> Cc: utz.bacher@de.ibm.com, netdev@vger.kernel.org, linux-s390@vger.kernel.org, schwidefsky@de.ibm.com, heiko.carstens@de.ibm.com, ursula.braun@de.ibm.com, ubraun@linux.vnet.ibm.com To: davem@davemloft.net Return-path: Received: from e06smtp10.uk.ibm.com ([195.75.94.106]:33439 "EHLO e06smtp10.uk.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933558AbbGVJAM (ORCPT ); Wed, 22 Jul 2015 05:00:12 -0400 Received: from /spool/local by e06smtp10.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 22 Jul 2015 10:00:05 +0100 In-Reply-To: <1437555592-16506-1-git-send-email-ubraun@linux.vnet.ibm.com> Sender: netdev-owner@vger.kernel.org List-ID: From: Ursula Braun The new socket family is assigned the next available address / protocol family constant 41. Implementing SO_KEEPALIVE for SMC-R requires an extra hook in net/ipv4/timer.c. Signed-off-by: Ursula Braun --- include/linux/socket.h | 4 +++- include/net/smc.h | 13 +++++++++++++ net/ipv4/tcp_timer.c | 2 +- 3 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 include/net/smc.h diff --git a/include/linux/socket.h b/include/linux/socket.h index 5bf59c8..dd18d32 100644 --- a/include/linux/socket.h +++ b/include/linux/socket.h @@ -200,7 +200,8 @@ struct ucred { #define AF_ALG 38 /* Algorithm sockets */ #define AF_NFC 39 /* NFC sockets */ #define AF_VSOCK 40 /* vSockets */ -#define AF_MAX 41 /* For now.. */ +#define AF_SMC 41 /* smc sockets>->------->-------*/ +#define AF_MAX 42 /* For now.. */ /* Protocol families, same as address families. */ #define PF_UNSPEC AF_UNSPEC @@ -246,6 +247,7 @@ struct ucred { #define PF_ALG AF_ALG #define PF_NFC AF_NFC #define PF_VSOCK AF_VSOCK +#define PF_SMC AF_SMC #define PF_MAX AF_MAX /* Maximum queue length specifiable by listen. */ diff --git a/include/net/smc.h b/include/net/smc.h new file mode 100644 index 0000000..cd513ee --- /dev/null +++ b/include/net/smc.h @@ -0,0 +1,13 @@ +/* + * SMC Definitions for the SMC protocol. + * + * Author: Ursula Braun + */ +#ifndef _SMC_H +#define _SMC_H + +/* SMC socket options - disjunct with TCP socket options */ +#define SMC_KEEPALIVE 99 /* start/stop keepalives */ + +#endif /* _SMC_H */ + diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c index 7149ebc..070bfc7 100644 --- a/net/ipv4/tcp_timer.c +++ b/net/ipv4/tcp_timer.c @@ -557,7 +557,7 @@ void tcp_set_keepalive(struct sock *sk, int val) else if (!val) inet_csk_delete_keepalive_timer(sk); } - +EXPORT_SYMBOL(tcp_set_keepalive); static void tcp_keepalive_timer (unsigned long data) { -- 2.3.8