[PATCH] Fix build failure of OCFS2 when TCP/IP is disabled

From: Tom Seewald
Date: Sat Jun 06 2020 - 15:10:16 EST


After commit 12abc5ee7873 ("tcp: add tcp_sock_set_nodelay") and
commit c488aeadcbd0 ("tcp: add tcp_sock_set_user_timeout"), building the
kernel with OCFS2_FS=y but without INET=y causes it to fail with:

ld: fs/ocfs2/cluster/tcp.o: in function `o2net_accept_many':
tcp.c:(.text+0x21b1): undefined reference to `tcp_sock_set_nodelay'
ld: tcp.c:(.text+0x21c1): undefined reference to `tcp_sock_set_user_timeout
'
ld: fs/ocfs2/cluster/tcp.o: in function `o2net_start_connect':
tcp.c:(.text+0x2633): undefined reference to `tcp_sock_set_nodelay'
ld: tcp.c:(.text+0x2643): undefined reference to `tcp_sock_set_user_timeout
'

This is due to tcp_sock_set_nodelay() and tcp_sock_set_user_timeout() being
declared in linux/tcp.h and defined in net/ipv4/tcp.c, which depend on
TCP/IP being enabled.

To fix this, make OCFS2_FS depend on INET=y which already requires NET=y.

Signed-off-by: Tom Seewald <tseewald@xxxxxxxxx>
---
fs/ocfs2/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/ocfs2/Kconfig b/fs/ocfs2/Kconfig
index 1177c33df895..aca16624b370 100644
--- a/fs/ocfs2/Kconfig
+++ b/fs/ocfs2/Kconfig
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0-only
config OCFS2_FS
tristate "OCFS2 file system support"
- depends on NET && SYSFS && CONFIGFS_FS
+ depends on INET && SYSFS && CONFIGFS_FS
select JBD2
select CRC32
select QUOTA
--
2.20.1