[LU-9401] lctl set_param -P not applied to subsequently added devices Created: 26/Apr/17  Updated: 30/Jan/22

Status: Open
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.10.0, Lustre 2.14.0
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: John Hammond Assignee: WC Triage
Resolution: Unresolved Votes: 0
Labels: None

Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

If I set an osc.* parameter using lctl set_param -P and then add an OST to the FS then the osc parameter corresponding to the new target is not configured on already mounted clients:

m:~# llmount.sh
...
m:~# lctl get_param osc.*.max_dirty_mb
osc.lustre-OST0000-osc-ffff88000cbe9000.max_dirty_mb=32
osc.lustre-OST0001-osc-ffff88000cbe9000.max_dirty_mb=32
m:~# lctl set_param -P osc.*.max_dirty_mb=33
m:~# sleep 60 && lctl get_param osc.*.max_dirty_mb
osc.lustre-OST0000-osc-ffff88000cbe9000.max_dirty_mb=33
osc.lustre-OST0001-osc-ffff88000cbe9000.max_dirty_mb=33
m:~# dd if=/dev/zero of=/tmp/lustre-ost3 bs=1K count=400000
400000+0 records in
400000+0 records out
409600000 bytes (410 MB) copied, 1.58115 s, 259 MB/s
m:~# mkfs.lustre --fsname=lustre --mgsnode=m@tcp --ost --index=2 /tmp/lustre-ost3

   Permanent disk data:
Target:     lustre:OST0002
Index:      2
Lustre FS:  lustre
Mount type: ldiskfs
Flags:      0x62
              (OST first_time update )
Persistent mount opts: ,errors=remount-ro
Parameters: mgsnode=192.168.122.121@tcp

checking for existing Lustre data: not found
formatting backing filesystem ldiskfs on /dev/loop3
           target name   lustre:OST0002
           4k blocks     0
           options        -I 512 -q -O extents,uninit_bg,dir_nlink,quota,huge_file,flex_b\
g -G 256 -E lazy_journal_init -F
mkfs_cmd = mke2fs -j -b 4096 -L lustre:OST0002  -I 512 -q -O extents,uninit_bg,dir_nlink,\
quota,huge_file,flex_bg -G 256 -E lazy_journal_init -F /dev/loop3
Writing CONFIGS/mountdata
m:~# mkdir -p /mnt/ost3
m:~# mount /tmp/lustre-ost3 /mnt/ost3 -t lustre -o loop
m:~# sleep 60 && lctl get_param osc.*.max_dirty_mb
osc.lustre-OST0000-osc-ffff88000cbe9000.max_dirty_mb=33
osc.lustre-OST0001-osc-ffff88000cbe9000.max_dirty_mb=33
osc.lustre-OST0002-osc-ffff88000cbe9000.max_dirty_mb=32
m:~# umount /mnt/lustre
m:~# mount m@tcp:/lustre /mnt/lustre -t lustre -o user_xattr,flock
m:~# lctl get_param osc.*.max_dirty_mb
osc.lustre-OST0000-osc-ffff88001617c800.max_dirty_mb=33
osc.lustre-OST0001-osc-ffff88001617c800.max_dirty_mb=33
osc.lustre-OST0002-osc-ffff88001617c800.max_dirty_mb=33

Note that clients which are mounted after the target was added will see the new value.


Generated at Sat Feb 10 02:25:52 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.