[LU-8454] non-root user is able to change stripe size for mount point Created: 01/Aug/16  Updated: 17/Feb/21  Resolved: 26/Sep/16

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.8.0
Fix Version/s: Lustre 2.9.0, Lustre 2.14.0

Type: Bug Priority: Major
Reporter: Lai Siyao Assignee: Lai Siyao
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Duplicate
Related
is related to LU-7661 MGS_SET_INFO handler is too permissive Resolved
is related to LU-7660 FS default striping settings only hon... Resolved
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

A non-root user is able to setstripe on the mount point to -1, with the owner:group of the mounted point being root:root and mode 0755. This causes all users of the file system to get wide stripes as the default, which is undesirable.



 Comments   
Comment by Gerrit Updater [ 01/Aug/16 ]

Lai Siyao (lai.siyao@intel.com) uploaded a new patch: http://review.whamcloud.com/21612
Subject: LU-8454 llite: normal user can't set FS default stripe
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: e5c12038a4379226bbc00f958e62120347b7c18b

Comment by Gerrit Updater [ 22/Aug/16 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/21612/
Subject: LU-8454 llite: normal user can't set FS default stripe
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: a2ba6c0c6e7b22ae31280253cd916fa3e29bd749

Comment by Peter Jones [ 22/Aug/16 ]

Landed for 2.9

Comment by Andreas Dilger [ 10/Sep/16 ]

The change to store the default layout on the root directory was only landed to 2.9.0 via LU-7660, so disabling this feature in 2.10 already is too agressive. That means a 2.10+ client mounting a 2.8 server will not be able to set the default layout properly.

Probably something like > 2.13.53 (i.e. for 2.14 release) is more appropriate, since that would be at least one major maintenance release cycle (usually 3x point releases) beyond the first major maintenance release that it will appear in (somewhere around 2.10 or 2.11).

Also, in addition to removing the code in ll_set_dirstripe() on the client, it also needs to #ifdef ll_send_mgc_param(), mgc_set_mgs_param(), and KEY_SET_INFO in mgc_set_info_async(), since they will all be unused at that point and if that code isn't tagged now for removal it will just sit there dead and/or create compiler warnings.

Also, the code on the MGS that handles these parameters needs to be #ifdef'd, namely mgs_set_info(), as well as struct mgs_send_param and associated code in wirecheck.c and wiretest.c, since that RPC codepath was already limited to handling only the lov.stripe_* parameters in LU-7661 and will now be completely dead. We might consider to push this out a bit beyond 2.13.52 to allow older clients to continue to work with newer servers, but not much further, e.g. 2.15.52.

Comment by Gerrit Updater [ 18/Sep/16 ]

Lai Siyao (lai.siyao@intel.com) uploaded a new patch: http://review.whamcloud.com/22580
Subject: LU-8454 mountconf: delay FS default stripe config setting
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: bd925f04723f60e469c5c8da741ea9edb009bc8b

Comment by Gerrit Updater [ 26/Sep/16 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/22580/
Subject: LU-8454 mountconf: delay FS default stripe config setting
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 85a7f5801013636284f93fdf0861476c19567ebd

Comment by Peter Jones [ 26/Sep/16 ]

Landed for 2.9

Comment by Gerrit Updater [ 01/Apr/20 ]

Oleg Drokin (green@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/38106
Subject: LU-8454 Remove struct mgs_send_param and its users
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: b1cd84c6b037f7b872478e05c5c8345b9d5fc421

Comment by Gerrit Updater [ 06/Apr/20 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/38106/
Subject: LU-8454 Remove struct mgs_send_param and its users
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 66b4fd4317f9bd721aaa485c81987cecc049d92f

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