[LU-3944] something wrong with "lctl conf_param" to set MDS/OSS thread count Created: 13/Sep/13  Updated: 09/Oct/21  Resolved: 09/Oct/21

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.4.1, Lustre 2.5.0
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Emoly Liu Assignee: Emoly Liu
Resolution: Won't Fix Votes: 1
Labels: None

Severity: 3
Rank (Obsolete): 10443

 Description   

We found this problem during reviewing lustre manual chapter 31.9. Usually, we can set threads_min like

lctl set_param mds.MDS.mdt_readpage.threads_min=16

But if we use conf_param to set it permanently, it will fail. It can be reproduced by the following steps:
1)lctl conf_param lustre.mdt.mdt_readpage.threads_min=16
no error is reported, but dmesg shows

Lustre: Setting parameter lustre-MDT0000.mdt.mdt_readpage.threads_min in log lustre-MDT0000
LustreError: 1273:0:(obd_config.c:1591:class_config_llog_handler()) MGC10.211.55.18@tcp: cfg command failed: rc = -38
Lustre:    cmd=cf00f 0:lustre-MDT0000  1:mdt.mdt_readpage.threads_min=16  

2)since the previous lctl cmd doesn't report error, when you umount and remount mds next time, you will see "Function not implemented".

BTW, "lctl set_param -P" introduced by LU-3155, a new method to set parameter permanently for lustre 2.5 and later, has no such problem.



 Comments   
Comment by Emoly Liu [ 22/Sep/13 ]

The root cause of this problem is that we have no "mds" proc methods for command "lctl conf_param", such as PARAM_MDS and mds_process_config. So, all mds.* proc parameters can't be processed.

/* Prefixes for parameters handled by obd's proc methods (XXX_process_config) */
#define PARAM_OST                  "ost."
#define PARAM_OSC                  "osc."
#define PARAM_MDT                  "mdt."
#define PARAM_MDD                  "mdd."
#define PARAM_MDC                  "mdc."
#define PARAM_LLITE                "llite."
...

In old lustre version, thread count parameters were defined under /proc/fs/lustre/mdt/MDS/, and then, they were pulled into a new MDS layer in LU-718.

Comment by jacques-charles lafoucriere [ 01/Oct/13 ]

Does any one work on a patch for this ticket? If not I will do it

Comment by Emoly Liu [ 08/Oct/13 ]

Hi Jacques, we still have no patch. It will be appreciated if you would do it.

Comment by jacques-charles lafoucriere [ 08/Oct/13 ]

ok will work on one

Comment by Andreas Dilger [ 09/Oct/21 ]

"lctl conf_param" is deprecated, use "lctl set_param -P" instead.

Generated at Sat Feb 10 01:38:17 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.