[LU-5022] support for 3.10 rhel7 linux kernel Created: 07/May/14  Updated: 15/Jun/15  Resolved: 15/Jun/15

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.6.0
Fix Version/s: Lustre 2.8.0

Type: New Feature Priority: Critical
Reporter: Bob Glossman (Inactive) Assignee: Bob Glossman (Inactive)
Resolution: Fixed Votes: 0
Labels: HB
Environment:

rhel7


Attachments: Text File quota-upstream-fixes.patch    
Issue Links:
Related
is related to LU-5014 vfs_unlink api change Resolved
is related to LU-5853 el7 build broken Resolved
is related to LU-5825 Kernel update [RHEL7 3.10.0-123.9.2.el7] Closed
is related to LU-4416 support for 3.12 linux kernel Resolved
is related to LU-5626 Corruption of MDT “..” entry in non-H... Resolved
is related to LU-6096 sanity test_17m: e2fsck Inode 32775, ... Resolved
is related to LU-5307 e2fsprogs build fails in Centos 7 Resolved
is related to LU-5884 bad lnet conf causes LBUG Resolved
is related to LU-5310 build error in Centos 7 Resolved
Rank (Obsolete): 13898

 Description   

tracker for 3.10 kernel support in rhel7

The 3.10 kernel in the rhel7 rc2 image is quite different from the mainline upstream 3.10 in kernel.org. It includes many features from 3.12 and even 3.13 kernels. In general most of the recipe mentioned in LU-4416 for 3.12 kernels is needed in rhel7 too. The only 3.12 patch that isn't needed is http://review.whamcloud.com/9300.

Establishing a separate tracker that will be specific to rhel7 as there are some mods that will only be relevant to the rhel7 kernel, and not 3.12 or later. One example is ldiskfs support. A new patch series specific to rhel7 will be needed.



 Comments   
Comment by Bob Glossman (Inactive) [ 07/May/14 ]

ldiskfs support for RHEL7:
http://review.whamcloud.com/10249

Note that this patch series is majority identical to the one in progress for SLES 12. Only a few patches needed adjustment. Most applied cleanly unchanged. I am pushing them in their current form hoping to get some early review and comment from ldiskfs/ext4 experts.

Comment by James A Simmons [ 07/May/14 ]

Oh boy!! I really like to see a base 3.12 ldisk set used by the major distros. We now have RHEL7, SLES12, and FCXX (LU-3373). Also I like the idea of that separation so we can start pushing ldiskfs patches upstream.

Comment by Bob Glossman (Inactive) [ 07/May/14 ]

I'm pretty sure the ones for FCxx in LU-3373 are obsolete. I expect the author will Abandon them eventually, although I could be wrong.

I would have no objection to structuring ldiskfs series as a reference set for upstream 3.12 with the SLES12 and RHEL7 versions being variations off of that reference.

Maybe support for the 3.14 kernel in fc20 could also be off that same reference set, although I have yet to investigate that possibility.

Comment by James A Simmons [ 07/May/14 ]

Great!! I think the 3.12 baseline patch set is the way to go. I plan to update the LU-3373 patch eventually. Just haven't had the time with all the other patches in the works.

Comment by James A Simmons [ 16/Jul/14 ]

Yang can you post your RHEL7 test results. I like to compare them to my results from the SLES12/3.12 runs I do.

Comment by Bob Glossman (Inactive) [ 19/Jul/14 ]

minimum additional needed to build el7 servers:

http://review.whamcloud.com/#/c/8116 - LU-3373 ext4_map_block support
http://review.whamcloud.com/#/c/11088 - LU-5276 ldiskfs: Remove extents-mount-option patch
http://review.whamcloud.com/#/c/10249 - LU-5022 ldiskfs: enable support for RHEL7

e2fsprogs and lbuild changes for el7 server are still TBD.

Comment by Bob Glossman (Inactive) [ 13/Oct/14 ]

lbuild changes for rhel 7 server
http://review.whamcloud.com/12289

Comment by James A Simmons [ 03/Nov/14 ]

Now that the client work is done we should really discuss what is needed for proper server side support. This is are chance to push for a pathless server. First we need the quota performance enhancements. Those have been merged upstream as:

commit b9ba6f94b2382ef832f97122976b73004f714714
commit 9eb6463f31cf720deaf0e810cacc403d7720b10c
commit 1ea06bec78a128adc995ca32bd906a6c9bb9cf91
commit 606cdcca04a609ed4dfbfe788942de9477da556b
commit d68aab6b8f572406aa93b45ef6483934dd3b54a6

Which should engage RedHat to have these merged into their tree.

We need to replace the dev_read_only patch with the work under LU-684. I haven't got around to it but now that the work for 2.7 is winding down I can take it up again.

The bh_lru_size patch. I saw something go upstream but it seems to have been drop. It is a simple one line patch which we should push to get merged. Once merged it will be easy for RedHat to incorporate it into their tree.

The block tunable patch. From the data posted in LU-20 I really think it is not a benefit and we should just drop it.

Lastly we have the patch under LU-3406 (raid5-mmp-unplug) which I just publish on dm-devel mailing list. Again we have it merged into the RHEL tree once it is integrated upstream.

Comment by James A Simmons [ 03/Nov/14 ]

Oh I forgot but since SLES12 is now official we should make the RHEL7 ldiskfs patch use the patches from the LU-4416 SLES12 ldiskfs work like we originally did. Since RHEL7 changes far more often then SLES12 this can make sense plus this avoids the issue of SLES12 ldiskfs fixes being missed.

Comment by Minh Diep [ 07/Nov/14 ]

A closer look at the report, this patch hit a LBUG in https://testing.hpdd.intel.com/test_logs/16c19292-658a-11e4-8c86-5254006e85c2/show_text

Comment by Gerrit Updater [ 15/Nov/14 ]

Yang Sheng (yang.sheng@intel.com) uploaded a new patch: http://review.whamcloud.com/10249
Subject: LU-5022 ldiskfs: enable support for RHEL7
Project: fs/lustre-release
Branch: master
Current Patch Set: 20
Commit: d6683a2dd978dafa350e4e58c45df55cf44fe68f

Comment by Gerrit Updater [ 15/Dec/14 ]

Yang Sheng (yang.sheng@intel.com) uploaded a new patch: http://review.whamcloud.com/13067
Subject: LU-5022 ldiskfs: cleanup ldiskfs_journal_dirty_metadata
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 4a0457a9e3559c872faa59c5361d84a86d8ee71c

Comment by Gerrit Updater [ 17/Mar/15 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/10249/
Subject: LU-5022 ldiskfs: enable support for RHEL7
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: eaf30e35002bf3936cdf7bf83685552d854f0f88

Comment by James A Simmons [ 19/Mar/15 ]

Here are the quota upstream patches that the RHEL7 kernel needs. It might need some massaging to have it apply to the RHEL7 kernel.

Comment by Bob Glossman (Inactive) [ 19/Mar/15 ]

I am pretty sure all the needed changes from James' attachment are already in place in upstream quota code in el7. only 2 minor exceptions:

1) the dqptr_sem deleted by the first patch still exists. all the references to it are gone, but the data structure was left in place. I'm assuming whoever ported this into el7 did it deliberately so I'm not willing to change it.

2) the last patch adding in locking around the shrinker doesn't seem to apply or be relevant. there is no dqcache_shrink_scan() routine in el7 to be fixed up.

Comment by James A Simmons [ 19/Mar/15 ]

That is good news. So it looks like we don't need the quota patch. Will need to look into SuSE12 to see if it is case there.

Comment by Bob Glossman (Inactive) [ 19/Mar/15 ]

James, I will do so as time permits.

Comment by James A Simmons [ 19/Mar/15 ]

Have you considered dropping the block tunable patch?

Comment by Bob Glossman (Inactive) [ 20/Mar/15 ]

no. as far as I can tell block tunable is still needed. until it can be deleted from old distros I don't think it should be deleted from el7.

Comment by Li Xi (Inactive) [ 29/Mar/15 ]

It seems lbuild-rhel7 is missing in contrib/lbuild/Makefile.am. We should add it in some patch. Maybe http://review.whamcloud.com/#/c/12289/

Comment by Bob Glossman (Inactive) [ 29/Mar/15 ]

quite correct. I will add it to the next version of http://review.whamcloud.com/#/c/12289.

Comment by Gerrit Updater [ 10/Apr/15 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/12289/
Subject: LU-5022 build: add rhel7 to server build selections
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: c6091a8302b359bd0e28082fef656f0532624143

Comment by James A Simmons [ 15/Jun/15 ]

Bob is this work complete now?

Comment by Bob Glossman (Inactive) [ 15/Jun/15 ]

James, As far as I know yes it is complete.

Comment by Peter Jones [ 15/Jun/15 ]

Then let's mark it resolved!

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