Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.12.0
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      This ticket is for collection of changes in lustre required for linux 4.15.

      The first issue seen is the disappearance of the kernel API setup_timer().  It has been replaced by the new timer_setup() call in linux 4.15.   Leads to build fails in all our code using setup_timer().

       

      Attachments

        Issue Links

          Activity

            [LU-10805] fixes for 4.15 kernel

            Minh Diep (mdiep@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/33164
            Subject: LU-10805 libcfs: timer_setup() API changes
            Project: fs/lustre-release
            Branch: b2_10
            Current Patch Set: 1
            Commit: 96e8f436dab0d23347cd1bb332d0979da859aecf

            gerrit Gerrit Updater added a comment - Minh Diep (mdiep@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/33164 Subject: LU-10805 libcfs: timer_setup() API changes Project: fs/lustre-release Branch: b2_10 Current Patch Set: 1 Commit: 96e8f436dab0d23347cd1bb332d0979da859aecf
            pjones Peter Jones added a comment -

            Landed for 2.12

            pjones Peter Jones added a comment - Landed for 2.12

            Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/31790/
            Subject: LU-10805 libcfs: timer_setup() API changes
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: 782ff36d50c77652d0358dc2d0bbddf81fac8759

            gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/31790/ Subject: LU-10805 libcfs: timer_setup() API changes Project: fs/lustre-release Branch: master Current Patch Set: Commit: 782ff36d50c77652d0358dc2d0bbddf81fac8759
            simmonsja James A Simmons added a comment - - edited

            I fixed that in the latest patch : https://review.whamcloud.com/#/c/31790. Give it a try. Minh also a special ticket exist for Ubuntu 18 support.  I put my notes their for my experience so far.

            simmonsja James A Simmons added a comment - - edited I fixed that in the latest patch : https://review.whamcloud.com/#/c/31790.  Give it a try. Minh also a special ticket exist for Ubuntu 18 support.  I put my notes their for my experience so far.
            mdiep Minh Diep added a comment -

            first attempt to build ubuntu 18.04 on master hit this

             

            2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/selftest/console.o
            21:59:08 In file included from include/linux/timer.h:6:0,
            21:59:08                  from include/linux/workqueue.h:9,
            21:59:08                  from include/linux/rhashtable.h:26,
            21:59:08                  from include/linux/ipc.h:7,
            21:59:08                  from include/uapi/linux/sem.h:5,
            21:59:08                  from include/linux/sem.h:9,
            21:59:08                  from include/linux/sched.h:15,
            21:59:08                  from include/linux/nsproxy.h:6,
            21:59:08                  from /var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet/config.c:36:
            21:59:08 include/linux/ktime.h:91:51: error: expected declaration specifiers or '...' before '(' token
            21:59:08  #define ktime_to_timespec64(kt)  ns_to_timespec64((kt))
            21:59:08                                                    ^
            21:59:08 /var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/libcfs/include/libcfs/linux/linux-time.h:168:33: note: in expansion of macro 'ktime_to_timespec64'
            21:59:08  static inline struct timespec64 ktime_to_timespec64(ktime_t kt)
            21:59:08                                  ^~~~~~~~~~~~~~~~~~~
            21:59:08 scripts/Makefile.build:332: recipe for target '/var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet/config.o' failed
            21:59:08 make[9]: *** [/var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet/config.o] Error 1
            21:59:08 scripts/Makefile.build:606: recipe for target '/var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet' failed
            21:59:08 make[8]: *** [/var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet] Error 2
            21:59:08 make[8]: *** Waiting for unfinished jobs....
            21:59:08   CC [M]  /var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/klnds/socklnd/socklnd_lib.o
            21:59:08 In file included from include/linux/timer.h:6:0,
            21:59:08                  from include/linux/workqueue.h:9,
            21:59:08                  from include/linux/srcu.h:34,
            21:59:08                  from include/linux/notifier.h:16,
            21:59:08                  from include/linux/memory_hotplug.h:7,
            21:59:08                  from include/linux/mmzone.h:775,
            21:59:08                  from include/linux/gfp.h:6,
            21:59:08                  from include/linux/idr.h:16,
            21:59:08                  from include/linux/kernfs.h:14,
            21:59:08                  from include/linux/sysfs.h:16,
            21:59:08                  from include/linux/kobject.h:21,
            21:59:08                  from include/linux/pci.h:29,
            21:59:08                  from /var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/klnds/socklnd/socklnd.c:40:
            21:59:08 include/linux/ktime.h:91:51: error: expected declaration specifiers or '...' before '(' token
            21:59:08  #define ktime_to_timespec64(kt)  ns_to_timespec64((kt))
            21:59:08                                                    ^
            21:59:08 /var/lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/libcfs/include/libcfs/linux/linux-time.h:168:33: note: in expansion of macro 'ktime_to_timespec64'
            21:59:08  static inline struct timespec64 ktime_to_timespec64(ktime_t kt)
            21:59:08                                  ^~~~~~~~~~~~~~~~~~~
            21:59:08 In file included from include/linux/timer.h:6:0,
            
            
            
            mdiep Minh Diep added a comment - first attempt to build ubuntu 18.04 on master hit this   2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/selftest/console.o 21:59:08 In file included from include/linux/timer.h:6:0, 21:59:08 from include/linux/workqueue.h:9, 21:59:08 from include/linux/rhashtable.h:26, 21:59:08 from include/linux/ipc.h:7, 21:59:08 from include/uapi/linux/sem.h:5, 21:59:08 from include/linux/sem.h:9, 21:59:08 from include/linux/sched.h:15, 21:59:08 from include/linux/nsproxy.h:6, 21:59:08 from / var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet/config.c:36: 21:59:08 include/linux/ktime.h:91:51: error: expected declaration specifiers or '...' before '(' token 21:59:08 #define ktime_to_timespec64(kt) ns_to_timespec64((kt)) 21:59:08 ^ 21:59:08 / var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/libcfs/include/libcfs/linux/linux-time.h:168:33: note: in expansion of macro 'ktime_to_timespec64' 21:59:08 static inline struct timespec64 ktime_to_timespec64(ktime_t kt) 21:59:08 ^~~~~~~~~~~~~~~~~~~ 21:59:08 scripts/Makefile.build:332: recipe for target '/ var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet/config.o' failed 21:59:08 make[9]: *** [/ var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet/config.o] Error 1 21:59:08 scripts/Makefile.build:606: recipe for target '/ var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet' failed 21:59:08 make[8]: *** [/ var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/lnet] Error 2 21:59:08 make[8]: *** Waiting for unfinished jobs.... 21:59:08 CC [M] / var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/klnds/socklnd/socklnd_lib.o 21:59:08 In file included from include/linux/timer.h:6:0, 21:59:08 from include/linux/workqueue.h:9, 21:59:08 from include/linux/srcu.h:34, 21:59:08 from include/linux/notifier.h:16, 21:59:08 from include/linux/memory_hotplug.h:7, 21:59:08 from include/linux/mmzone.h:775, 21:59:08 from include/linux/gfp.h:6, 21:59:08 from include/linux/idr.h:16, 21:59:08 from include/linux/kernfs.h:14, 21:59:08 from include/linux/sysfs.h:16, 21:59:08 from include/linux/kobject.h:21, 21:59:08 from include/linux/pci.h:29, 21:59:08 from / var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/lnet/klnds/socklnd/socklnd.c:40: 21:59:08 include/linux/ktime.h:91:51: error: expected declaration specifiers or '...' before '(' token 21:59:08 #define ktime_to_timespec64(kt) ns_to_timespec64((kt)) 21:59:08 ^ 21:59:08 / var /lib/jenkins/workspace/lustre-master-next/arch/x86_64/build_type/client/distro/ubuntu1804/ib_stack/inkernel/BUILD/lustre-2.11.51_64_g90ddbe1/debian/tmp/modules-deb/usr_src/modules/lustre/libcfs/include/libcfs/linux/linux-time.h:168:33: note: in expansion of macro 'ktime_to_timespec64' 21:59:08 static inline struct timespec64 ktime_to_timespec64(ktime_t kt) 21:59:08 ^~~~~~~~~~~~~~~~~~~ 21:59:08 In file included from include/linux/timer.h:6:0,

            Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/31789/
            Subject: LU-10805 ldlm: convert ACCESS_ONCE() to READ_ONCE()
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: da028f98ea11943ca15ea9ba7220cc24dbc775bd

            gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/31789/ Subject: LU-10805 ldlm: convert ACCESS_ONCE() to READ_ONCE() Project: fs/lustre-release Branch: master Current Patch Set: Commit: da028f98ea11943ca15ea9ba7220cc24dbc775bd

            Wow. Setting up my Ubuntu 18 test system I discovered zfs is installed by default.

            simmonsja James A Simmons added a comment - Wow. Setting up my Ubuntu 18 test system I discovered zfs is installed by default.

            So I have taken a look at the timer changes for 4.15+ kernels and the patch will need to be rebased after the patches land from master-next. Several patches landed and will land soon that collide with this patch. I have a local port and will start testing now that I have Ubuntu18 setup.

            simmonsja James A Simmons added a comment - So I have taken a look at the timer changes for 4.15+ kernels and the patch will need to be rebased after the patches land from master-next. Several patches landed and will land soon that collide with this patch. I have a local port and will start testing now that I have Ubuntu18 setup.

            Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/31788/
            Subject: LU-10805 lnet: switch to module_param
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: 71cd88f5bf4ec7187753dfaf0bb86be9362c5ad5

            gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/31788/ Subject: LU-10805 lnet: switch to module_param Project: fs/lustre-release Branch: master Current Patch Set: Commit: 71cd88f5bf4ec7187753dfaf0bb86be9362c5ad5

            Li Dongyang (dongyangli@ddn.com) uploaded a new patch: https://review.whamcloud.com/31790
            Subject: LU-10805 libcfs: timer_setup() API changes
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: ca6c541a821ba8f362c9eff3bff226e0dac7adad

            gerrit Gerrit Updater added a comment - Li Dongyang (dongyangli@ddn.com) uploaded a new patch: https://review.whamcloud.com/31790 Subject: LU-10805 libcfs: timer_setup() API changes Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: ca6c541a821ba8f362c9eff3bff226e0dac7adad

            People

              simmonsja James A Simmons
              bogl Bob Glossman (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: