[SRU] Put ipmctl into Bionic (and update necessary deps)

Bug #1868882 reported by Jeff Lane 
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ipmctl (Ubuntu)
Opinion
Wishlist
Rafael David Tinoco

Bug Description

[IMPACT]
Intel introduced NVDIMMs (Optane DCPMM devices) last year. Support for these landed in Bionic prior to release, all except for the ipmctl tool which was not ready for release at that time. Since then, ipmctl and libipmctl# have been brought into Eoan and Focal. However, as Bionic also supports these devices, we need to ensure that customers running Bionic are also able to fully configure and manage NVDIMMs.

This requires the following packages pulled from Focal into Bionic:

ipmctl
libipmctl4

Additionally, the following libraries currently in Bionic will need to be updated to the versions in Focal:

libdaxctl1
libndctl6

Without this customers using these devices cannot perform low-level configuration which is necessary in order to begin creating namespaces on them using ndctl (ipmctl is used to do initial configuration, and ndctl then used to manage them afterwards).

[TEST CASE]
1. Install ipmctl 2.00.00, libipmctl4 2.00.00, libdaxctl1 67-1, libndctl6 67-1
2. run the command 'sudo ipmctl show -dimm' and verify dimms are seen
3. run the command 'sudo ipmctl show -region' and verify that region info is seen
4. run a configuration command similar to 'sudo ipmctl create -goal -socket 0001 MemoryMode=100'
to do low-level config and confirm that this was successful.

[REGRESSION POTENTIAL]
Regression potential is very low as this is introducing a new package to Bionic.
The only regression concern is if libndctl6 version 67-1 introduces regressions in ndctl version 63 which is currently in Bionic.

I've tested this scenario manually (currently with libndctl6 version 65-1 from Eoan, and ndctl version 61-2) adn was able to successfully probe the NVDIMM regions as well as create and delete namespaces for different AppDirect modes, so I don't think there will be any real regression here).

UPDATE 3.25.20: Spoke with Intel and they suggested that the more recent versions of libdaxctl1 and libndctl6 should be backwards compatible with ndctl that currently exists in bionic (v. 61).

Changed in ipmctl (Ubuntu):
status: New → Triaged
importance: Undecided → Wishlist
Jeff Lane  (bladernr)
description: updated
Revision history for this message
Rafael David Tinoco (rafaeldtinoco) wrote :

So what we need here is:

# Eoan

- Backport of Focal ipmctl package to Eoan
  - includes ipmctl
  - includes libipmctl4

- Upload of this "new" package into Eoan Universe

# Bionic

- Backport of Focal ipmctl package to Bionic
  - includes ipmctl
  - includes libipmctl4

- Upload of this "new" package into Focal Universe

------

Small local build test:

(c)rafaeldtinoco@ipmctldev:~/work/sources/ubuntu$ ls -1 *.deb
ipmctl_02.00.00.3709+ds-1_amd64.deb
libipmctl4_02.00.00.3709+ds-1_amd64.deb
libipmctl-dev_02.00.00.3709+ds-1_amd64.deb

(c)rafaeldtinoco@ipmctldev:~/work/sources/ubuntu$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.4 LTS
Release: 18.04
Codename: bionic

(c)rafaeldtinoco@ipmctldev:~$ ipmctl
Intel(R) Optane(TM) DC Persistent Memory Command Line Interface

    Usage: ipmctl <verb>[<options>][<targets>][<properties>]

----

Questions:

- ndctl backport from Focal isn't really needed to build it (only a debhelper version change)
- are there any missing features in Bionic ndctl that disallow ipctl to work properly ?
- want me to provide a PPA for you to test it ?

Changed in ipmctl (Ubuntu):
assignee: nobody → Rafael David Tinoco (rafaeldtinoco)
Revision history for this message
Jeff Lane  (bladernr) wrote :

- ndctl backport from Focal isn't really needed to build it (only a debhelper version change)

ndctl itself, correct, is not necessary. the current bionic ndctl package is fine. but package wise, from what I saw, libndctl6 (which I presume is built from the ndctl source) is a required dependency for ipmctl. Maybe I am not seeing everything in the machinery there, which is a valid response, I'm just noting what I observed while trying to install the Focal debs on Bionic.

- are there any missing features in Bionic ndctl that disallow ipctl to work properly ?
As far as I know, there are not, as I said, I had to install that as it was a package depenendency.

dpkg: dependency problems prevent configuration of libipmctl4:amd64:
 libipmctl4:amd64 depends on libndctl6 (>= 63); however:
  package libndctl6 is not installed.

So the libndctl6 in Bionic won't work for libipmctl4 as it's version 61. so maybe that could be changed in packaging so that libipmctl4 can depend with any libndctl6 version, but I do not currently know if that causes issues with missing features or functions, or whatever.

- want me to provide a PPA for you to test it ?
Certainly. I have hardware to test with and am happy to help in any way I can to move this along.

Revision history for this message
Rafael David Tinoco (rafaeldtinoco) wrote :

Hello Jeff,

I just synced with other engineers about this particular bug and it was brought to my attention that a MIR was attempted before and didn't pass (LP: #1854181). Unfortunately, for this case, a MIR is needed because the package is in [universe].

There is something else:

$ rmadison ipmctl
 ipmctl | 02.00.00.3474+really01.00.00.3469-1 | eoan/universe | source, amd64
 ipmctl | 02.00.00.3709+ds-1 | focal/universe | source, amd64

02.00.00.3709+ds-1 is not a final release.

The best move here would be:

1) Future MIR for ipmctl package (20.10 ?), based on the feedback given:

"""
I'd ask you to revisit promoting it maybe in 20.10 or later.
If then things turn out to be super stable and HW exists one could
even later consider doing an major version SRU under the Banner of HW
enablement.
"""

more -> https://bugs.launchpad.net/ubuntu/+source/ipmctl/+bug/1854181/comments/3

IF MIR passes (certainties will be reduced, but can't guarantee):

2) FFe exception to update Focal to latest released version.

4) SRU exception to update Eoan to Focal version.

3) SRU exception to make same version available to Bionic.

So, for now, fastest thing to be done at your side would be to maintain a PPA enabling this HW.

Revision history for this message
Jeff Lane  (bladernr) wrote :

FYI, the initial production release version should be 02.00.00.3759 which is tagged upstream but has not been officially released yet.

Revision history for this message
Rafael David Tinoco (rafaeldtinoco) wrote :

Hello Jeff,

I have opened a card to keep track of this work in 20.10. I'm not sure that a MIR will be possible (for ndctl/ipmctl) based on previous denial but we can take a look later after we MERGE latest upstream release (02.00.00.3759) to 20.10.

For now I'm closing this bug as there is nothing to be done here until 20.10. I will include you in the 20.10 ndctl/ipmctl merge public bugs for your awareness.

Thank you

Rafael

Changed in ipmctl (Ubuntu):
status: Triaged → Opinion
Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Just a note that Jeff wasn't asking for an MIR, but an SRU.

Revision history for this message
Jeff Lane  (bladernr) wrote : Re: [Bug 1868882] Re: [SRU] Put ipmctl into Bionic (and update necessary deps)

On Wed, Apr 22, 2020 at 11:01 AM Andreas Hasenack <email address hidden> wrote:
>
> Just a note that Jeff wasn't asking for an MIR, but an SRU.

Yes, Thanks Andreas, that's an important distinction. Although it IS
an MIR into Bionic, I'm afraid. The package does exist in Focal and
Eoan, so I think THAT much is an SRU to update those to the official
release version, but for Bionic, since it doesn't exist at all in
Universe there, I think that is an MIR? Or would that also fall under
SRU?

Jeff

--
Jeff Lane
Engineering Manager
IHV/OEM Alliances and Server Certification

"Entropy isn't what it used to be."

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

MIR stands for *Main* Inclusion Request. It's different from processing a NEW package. Or else we would only accept NEW packages in Ubuntu if they went into main.

Revision history for this message
Jeff Lane  (bladernr) wrote :

Hi Raphael, what do I need to do now to revisit this? According to the archives, this is where we are today:
$ rmadison ipmctl
 ipmctl | 02.00.00.3474+really01.00.00.3469-1 | eoan/universe | source, amd64
 ipmctl | 02.00.00.3709+ds-1 | focal/universe | source, amd64
 ipmctl | 02.00.00.3774+ds-1 | groovy/universe | source, amd64

Groovy is the right version (per Intel, the release version is 02.00.00.3774)

So I've should I add a task here for Focal and Bionic? since Eoan EOLs this month, there's no need to worry about that release.

Ultimately, since the groovy version is now synced from Debian and is the "release" version, we need to get that version into Focal and Bionic.

I'm happy to help (though will require learning along the way) however I can.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.