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.
Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/38106/
Subject:
LU-8454Remove struct mgs_send_param and its usersProject: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 66b4fd4317f9bd721aaa485c81987cecc049d92f