After chatting with xnox on IRC, he discovered that the output of catting /proc/modules in 4.15 now depends on who is doing the catting.
So `cat /proc/modules` as a normal user will return null references while `sudo cat /proc/modules` will return the actual memory offsets, accurately. For example: ubuntu@xwing:~$ sudo cat /proc/modules |grep e1000e e1000e 249856 0 - Live 0xffffffffc0225000 ptp 20480 2 igb,e1000e, Live 0xffffffffc00a9000 ubuntu@xwing:~$ cat /proc/modules |grep e1000e e1000e 249856 0 - Live 0x (null) ptp 20480 2 igb,e1000e, Live 0x (null) So for the cert tooling, this should be a simple fix then, just to ensure that the module script runs as root. ** Changed in: plainbox-provider-checkbox (Ubuntu) Status: Confirmed => Triaged ** Changed in: plainbox-provider-checkbox (Ubuntu) Status: Triaged => In Progress ** Changed in: plainbox-provider-checkbox (Ubuntu) Status: In Progress => Fix Committed ** Changed in: plainbox-provider-checkbox (Ubuntu) Status: Fix Committed => In Progress -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1757143 Title: /proc/modules has Null references causing python parsing issues Status in linux package in Ubuntu: Incomplete Status in plainbox-provider-checkbox package in Ubuntu: In Progress Bug description: EDIT: this originally looked like some sort of regression in the module_resource script of plainbox-provider-resource, however, on diving in a bit it seems the root cause is that /proc/modules in 4.15 is different than in previous kernels. This is a line from 4.15's /proc/modules data: e1000e 249856 0 - Live 0x (null) And this is the same module info from 4.13: e1000e 249856 0 - Live 0x0000000000000000 That null character at the end appears to be causing the script to choke. For that reason, because /proc/modules has somehow changed to include null references (0xNULL is invalid, where 0x0000000 is parsable), I've added a kernel task to this bug. Original Summary: I ran into this issue (and came across some further glitches) while running canonical-certification-server on Ubuntu Server 18.04 on s390x (having 16.04 full selected in canonical-certification-server user interface): $ /usr/lib/plainbox-provider-resource-generic/bin/module_resource Traceback (most recent call last): File "/usr/lib/plainbox-provider-resource-generic/bin/module_resource", line 73, in <module> sys.exit(main()) File "/usr/lib/plainbox-provider-resource-generic/bin/module_resource", line 62, in main for module in modules: File "/usr/lib/plainbox-provider-resource-generic/bin/module_resource", line 57, in get_modules yield get_module(line) File "/usr/lib/plainbox-provider-resource-generic/bin/module_resource", line 49, in get_module "offset": int(offset, 16)} ValueError: invalid literal for int() with base 16: '0x' result file is attached to the ticket, as well as the console log ... To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1757143/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp