I added an SRU template for latter processing, but I'd be really
thankful if you could verify the build in the ppa at [1] if you agree
that it fixes the issue for your. Always better to not self-test.

It is building now, and should be available in approximately 45 minutes.

Once you can confirm that this is working for you and I had the time to
QA check the upload a bit more I can push to Yakkety as SRU.

[1]: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/2744

** Description changed:

+ [Impact]
+ 
+  * DPDK DKMS modules can be unusable depending on the kernel that was 
+    running when triggering DKMS rebuilds last time
+ 
+  * Fix is a backport of the fix already in zesty for a while, see links in 
+    comment # #1
+ 
+  * Essentially the fix passes the right kerneldir to the DKMS build
+ 
+ [Test Case]
+ 
+  * Set up a yakkety system with kernels (VM or BM).
+ 
+  * Install DPDK (this DKMS build for krernel "A" will work)
+ 
+  * Now install another kernel "B", the DKMS rebuild will be for "A" but 
+    installed in "B". On reboot into "B" the module will fail
+ 
+  * With the fix applied on installing "B" the build will be for "B" and 
+    install in "B" and thereby modules usable after reboot.
+ 
+ [Regression Potential]
+ 
+  * The changes are "only" affecting the DKMS configuration of DPDK 
+    modules. Those DKMS modules are only used by a subset of DKMS setups 
+    therefore the scope of potentially regressing systems should be small
+ 
+  * Also the fix is in zesty for quite a while now and worked fine there.
+ 
+  * Finally given the code change it should be fixing a case for those who 
+    are broken at the moment, but not affect anyone else.
+ 
+  * Thereby overall I'd rate the risk low and definitely worth to fix the 
+    case for those affected (Currently only usable with workaround to 
+    re-trigger DKMS once in the new kernel).
+ 
+ [Other Info]
+  
+  * n/a
+ 
+ 
+ --- 
+ 
  The DPDK build system uses the RTE_KERNELDIR make variable to determine
  which kernel version to build for.  DKMS provides the kernel version to
  build for in the $kernelver and $kernel_source_dir variables.  Because
  you use a custom MAKE command, this must be used in the MAKE variable of
  dkms.conf to generate the correct RTE_KERNELDIR for the build, by doing
  something like this:
  
  --- /usr/src/dpdk-rte-kni-16.07.2/dkms.conf     2017-05-01 18:23:13.242496251 
-0400
  +++ /usr/src/dpdk-rte-kni-16.07.2/dkms.conf.new 2017-05-01 18:23:20.638620058 
-0400
  @@ -1,7 +1,7 @@
-  PACKAGE_NAME="dpdk-rte-kni"
-  PACKAGE_VERSION="16.07.2"
-  BUILT_MODULE_NAME[0]="rte_kni"
+  PACKAGE_NAME="dpdk-rte-kni"
+  PACKAGE_VERSION="16.07.2"
+  BUILT_MODULE_NAME[0]="rte_kni"
  -MAKE="source /usr/share/dpdk/dpdk-sdk-env.sh; make 
MODULE_CFLAGS='-I/usr/include/dpdk -include /usr/include/dpdk/rte_config.h 
-I$source_tree/dpdk-rte-kni-16.07.2/ethtool/ixgbe 
-I$source_tree/dpdk-rte-kni-16.07.2/ethtool/igb'"
  +MAKE="source /usr/share/dpdk/dpdk-sdk-env.sh; make 
MODULE_CFLAGS='-I/usr/include/dpdk -include /usr/include/dpdk/rte_config.h 
-I$source_tree/dpdk-rte-kni-16.07.2/ethtool/ixgbe 
-I$source_tree/dpdk-rte-kni-16.07.2/ethtool/igb' 
RTE_KERNELDIR=$kernel_source_dir"
-  CLEAN="source /usr/share/dpdk/dpdk-sdk-env.sh; make clean"
-  DEST_MODULE_LOCATION[0]="/updates/dkms"
-  AUTOINSTALL="YES"
+  CLEAN="source /usr/share/dpdk/dpdk-sdk-env.sh; make clean"
+  DEST_MODULE_LOCATION[0]="/updates/dkms"
+  AUTOINSTALL="YES"
  
  Because this is not done, whenever the kernel package is upgraded and
  DKMS triggers a rebuild, it will trigger a rebuild for the *running*
  kernel which gets installed into the *newly installed* kernel directory,
  which is wrong and causes the module to fail to load when the newly
  installed kernel is booted.

** Changed in: dpdk (Ubuntu Yakkety)
       Status: Triaged => In Progress

** Changed in: dpdk (Ubuntu Yakkety)
     Assignee: (unassigned) => ChristianEhrhardt (paelzer)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1687492

Title:
  DPDK dkms packages build for wrong kernel

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dpdk/+bug/1687492/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to