Hello David,

If the user sets "protocol=tcp" in the configuration file /etc/dlm/dlm.conf 
under two-rings cluster environment,
DLM kernel module will not work with the below error message,
[   43.696924] DLM installed
[  149.552039] ocfs2: Registered cluster interface user
[  149.559579] dlm: TCP protocol can't handle multi-homed hosts, try SCTP  <<== 
here, failed
[  149.559589] dlm: cannot start dlm lowcomms -22
[  149.559612] (mount.ocfs2,2593,3):ocfs2_dlm_init:3120 ERROR: status = -22
[  149.559629] (mount.ocfs2,2593,3):ocfs2_mount_volume:1845 ERROR: status = -22 

Then, could we modify the code, let this case still work via only using one 
ring address? or the code is written by purpose.
in lowcomms.c
1358 static int tcp_listen_for_all(void)
1359 {
1360         struct socket *sock = NULL;
1361         struct connection *con = nodeid2con(0, GFP_NOFS);
1362         int result = -EINVAL;
1363
1364         if (!con)
1365                 return -ENOMEM;
1366
1367         /* We don't support multi-homed hosts */
1368         if (dlm_local_addr[1] != NULL) {   <<== here, could we get ride of 
this limitation? 
1369                 log_print("TCP protocol can't handle multi-homed hosts, "
1370                           "try SCTP");
1371                 return -EINVAL;
1372         }
1373
1374         log_print("Using TCP for communications");
1375
1376         sock = tcp_create_listen_sock(con, dlm_local_addr[0]);
1377         if (sock) {
1378                 add_sock(sock, con);
1379                 result = 0;
1380         }
1381         else {
1382                 result = -EADDRINUSE;
1383         }


Thanks
Gang


>>> 
> On Mon, Apr 02, 2018 at 08:01:24PM -0600, Gang He wrote:
>> OK, I got your point.
>> But, could we have a appropriate way to let the users know SCTP protocol 
> status?
> 
> I think this is a case where suse/rh/etc need to have their own
> distro-specific approaches for specifying the usage parameters that they
> have tested and found to be supportable.  Other companies have previously
> found their specific use of SCTP to be acceptable.  RH does not properly
> support dlm+SCTP for similar reasons as you've found, although I've more
> recently encouraged customers to try dlm+SCTP with a single path in order
> debug or diagnose potential networking issues.


Reply via email to