Details

    • Improvement
    • Resolution: Fixed
    • Minor
    • Lustre 2.13.0, Lustre 2.12.3
    • Lustre 2.13.0
    • None
    • Ubuntu18.10 and the beta version of the most beloved distro :-)
    • 9223372036854775807

    Description

      Linux distributions are looking to move their platforms to the 4.18 kernel which was originally the LTS for the linux kernel (that has changed to 4.19). This ticket covers the work needed to support this kernel version.

      Attachments

        Issue Links

          Activity

            [LU-11838] Support linux kernel version 4.18

            Li Dongyang (dongyangli@ddn.com) uploaded a new patch: https://review.whamcloud.com/34672
            Subject: LU-11838 lnet: getname dropping addrlen argument
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: de014af11e436ae3940464320afdb1a5ddd1548a

            gerrit Gerrit Updater added a comment - Li Dongyang (dongyangli@ddn.com) uploaded a new patch: https://review.whamcloud.com/34672 Subject: LU-11838 lnet: getname dropping addrlen argument Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: de014af11e436ae3940464320afdb1a5ddd1548a

            Chris I have a patch to fix the ip2net handling as well. I need the above patches to land first. The idea is to replace all the LND ipv4 handling by using lnet_ipaddr_enumerate() in config.c

            simmonsja James A Simmons added a comment - Chris I have a patch to fix the ip2net handling as well. I need the above patches to land first. The idea is to replace all the LND ipv4 handling by using lnet_ipaddr_enumerate() in config.c
            hornc Chris Horn added a comment -

            James, I hit the same issue with those three patches applied

            hornc Chris Horn added a comment - James, I hit the same issue with those three patches applied

            @Dongyang Li    - The patch for LU-11803 handles the s_uuid change in newer kernels. I'm testing it now. See:

            https://review.whamcloud.com/#/c/33916/

            simmonsja James A Simmons added a comment - @Dongyang Li    - The patch for LU-11803 handles the s_uuid change in newer kernels. I'm testing it now. See: https://review.whamcloud.com/#/c/33916/

            Chris their are two patches to address the bug. So for proper 4.18 kernel support you need 3 patches for LNet.

            https://review.whamcloud.com/#/c/34476/

            https://review.whamcloud.com/#/c/34392/

            https://review.whamcloud.com/#/c/34234

            I can add you as  a reviewer. 

            simmonsja James A Simmons added a comment - Chris their are two patches to address the bug. So for proper 4.18 kernel support you need 3 patches for LNet. https://review.whamcloud.com/#/c/34476/ https://review.whamcloud.com/#/c/34392/ https://review.whamcloud.com/#/c/34234 I can add you as  a reviewer. 
            hornc Chris Horn added a comment -

            The patch https://review.whamcloud.com/33969 seems to have broken ip2nets parsing. I'm not sure if this is the same issue documented in LU-11893.

            sles15c01:~ # ip addr show dev eth0
            2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
                link/ether 00:0c:29:88:48:01 brd ff:ff:ff:ff:ff:ff
                inet 192.168.2.22/16 brd 192.168.255.255 scope global eth0
                   valid_lft forever preferred_lft forever
                inet6 fe80::20c:29ff:fe88:4801/64 scope link
                   valid_lft forever preferred_lft forever
            sles15c01:~ # cat /etc/modprobe.d/lnet.conf
            options lnet ip2nets="tcp99(eth0) 192.168.*.*; tcp4(eth0) 192.168.*.*"
            options lnet routes="tcp 192.168.2.26@tcp4"
            options lnet lnet_peer_discovery_disabled=0
            #options lnet check_routers_before_use=1
            sles15c01:~ # modprobe lnet
            sles15c01:~ # lnetctl lnet configure --all
            configure:
                - lnet:
                      errno: -22
                      descr: "LNet configure error: Invalid argument"
            sles15c01:~ # dmesg | tail --lines 2
            [14219.235056] LNetError: 11a-a: ip2nets does not match any local IP interfaces
            [14219.237168] LNetError: 3884:0:(config.c:597:lnet_parse_networks()) networks string is undefined
            sles15c01:~ #
            

            If I revert https://review.whamcloud.com/33969 then I'm able to start LNet with the above configuration.

            hornc Chris Horn added a comment - The patch https://review.whamcloud.com/33969 seems to have broken ip2nets parsing. I'm not sure if this is the same issue documented in LU-11893 . sles15c01:~ # ip addr show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0c:29:88:48:01 brd ff:ff:ff:ff:ff:ff inet 192.168.2.22/16 brd 192.168.255.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe88:4801/64 scope link valid_lft forever preferred_lft forever sles15c01:~ # cat /etc/modprobe.d/lnet.conf options lnet ip2nets="tcp99(eth0) 192.168.*.*; tcp4(eth0) 192.168.*.*" options lnet routes="tcp 192.168.2.26@tcp4" options lnet lnet_peer_discovery_disabled=0 #options lnet check_routers_before_use=1 sles15c01:~ # modprobe lnet sles15c01:~ # lnetctl lnet configure --all configure: - lnet: errno: -22 descr: "LNet configure error: Invalid argument" sles15c01:~ # dmesg | tail --lines 2 [14219.235056] LNetError: 11a-a: ip2nets does not match any local IP interfaces [14219.237168] LNetError: 3884:0:(config.c:597:lnet_parse_networks()) networks string is undefined sles15c01:~ # If I revert https://review.whamcloud.com/33969 then I'm able to start LNet with the above configuration.

            No I haven't started ldiskfs support. Only clibet so far. Please push the work.

            simmonsja James A Simmons added a comment - No I haven't started ldiskfs support. Only clibet so far. Please push the work.
            dongyang Dongyang Li added a comment -

            James, are you working on the ldiskfs support for 4.18?

            If not I have a ldiskfs patchset for centos8 beta, will send it under this ticket later.

            Cheers

            DY

            dongyang Dongyang Li added a comment - James, are you working on the ldiskfs support for 4.18? If not I have a ldiskfs patchset for centos8 beta, will send it under this ticket later. Cheers DY

            Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/34236/
            Subject: LU-11838 llite: remove assert for acl refcount
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: df7bfbb1c7890deed15fd85e75da70d88be2ef7f

            gerrit Gerrit Updater added a comment - Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/34236/ Subject: LU-11838 llite: remove assert for acl refcount Project: fs/lustre-release Branch: master Current Patch Set: Commit: df7bfbb1c7890deed15fd85e75da70d88be2ef7f

            James Simmons (uja.ornl@yahoo.com) uploaded a new patch: https://review.whamcloud.com/34236
            Subject: LU-11838 llite: remove assert for acl refcount
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: a4e4ed5cddef37a12169f6fb638c2814985b0c72

            gerrit Gerrit Updater added a comment - James Simmons (uja.ornl@yahoo.com) uploaded a new patch: https://review.whamcloud.com/34236 Subject: LU-11838 llite: remove assert for acl refcount Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: a4e4ed5cddef37a12169f6fb638c2814985b0c72

            The changes need to be address are:

            LNet: kernel_getpeername() and kernel_getsockname() dropped last argument.

            The struct address_mapping changed from radix to xarry. All llite changes.

            Initialize "struct dentry_operations" .d_init using ll_d_init(). For proper parallel lookup support.

            Remove LASSERT(atomic_read(&lli->lli_posix_acl->a_refcount) == 1);

            That will do it.

            simmonsja James A Simmons added a comment - The changes need to be address are: LNet: kernel_getpeername() and kernel_getsockname() dropped last argument. The struct address_mapping changed from radix to xarry. All llite changes. Initialize "struct dentry_operations" .d_init using ll_d_init(). For proper parallel lookup support. Remove LASSERT(atomic_read(&lli->lli_posix_acl->a_refcount) == 1); That will do it.

            People

              simmonsja James A Simmons
              simmonsja James A Simmons
              Votes:
              0 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: