DHCP server does not work for IPoIB (Infiniband)

Bug #1401141 reported by Brian Fromme
28
This bug affects 4 people
Affects Status Importance Assigned to Milestone
isc-dhcp (Ubuntu)
Fix Released
Undecided
Rafael David Tinoco
Trusty
Fix Released
Undecided
Rafael David Tinoco
Utopic
Fix Released
Undecided
Rafael David Tinoco
Vivid
Fix Released
Undecided
Rafael David Tinoco

Bug Description

[Impact]

 * DHCP for InfiniBand IPoIB does not work currently.
 * After providing missing GPXE patch it had problems (by Mellanox tests).
 * IPoIB patches from Fedora project (out-of-upstream-tree) were outdated.

[Test Case]

 * To have IPoIB devices (2 if possible)
 * Try to acquire IP using either DHCPv4 or DHCPv6

[Regression Potential]

 * DHCP for InfiniBand was not working
 * Based on already implemented code (Fedora)
 * Mellanox has tested it

[Other Info]

Original BUG description:

Release: Ubuntu 14.04.1 LTS
Version: 4.2.4-7ubuntu12

The current DHCP package in Ubuntu can't handle IPoIB clients. For IB, Mellanox uses IPoIB, which is “Eth emulator” for the control path. DHCP is not working in this mode without a patch for DHCP server.

ISC-DHCP-SERVER Missing GPXE patch.

After applying GPXE patch only we faced the following problems:

After apply

1.

dhcp ipoib, does not write in the log on which interface the dhcp work upon when starting the dhcp server using “/etc/init.d/isc-dhcp-server start” we don’t see the line that tells on which interfaces the dhcpd is listening on the /var/log/syslog when running it with “dhcpd –d” command – we do see it.

2.

dhcp ipoib ipv6, it did not provide ip6 when we start 2 ib interfaces in a parallel using the following setup:

HOST_A:
        acting as a dhcp server, listening on one of its
        ipoib (ib0) interfaces.

HOST_B:
        running dhcp clients on two ipoib interfaces (ib1, ib2) ib1
        and ib2 are two ports onf the same HCA both interfaces are
        configured in /etc/interfaces such as:

        auto ib1
        iface ib1 inet6 dhcp
                                                                   both interfaces are configured in /etc/dhcp/dhclient.conf with their dhcp-client-identifier Ib0@HOST_A, Ib1@HOST_B and Ib2@HOST_B are connected to an infiniband switch.

We are running on the client (HOST_B) the following:

$ ifup ib1
-> ib1 get configured as expected

but then when we run on the other interface:
$ ifup ib2
-> ib2 get configured, but ib1 is losing its configuration

Changed in isc-dhcp (Ubuntu):
assignee: nobody → Rafael David Tinoco (inaddy)
Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

This is actually a little misleading; in that document they are talking about DHCP, but without specifying which DHCP server software. We normally ship isc-dhcp; so the version number in that document would be wrong, since we're now at 4.2.4 (as per the bug description).

As I understand it we already have two of the three required patches for infiniband support (see https://lists.isc.org/pipermail/dhcp-users/2013-April/016653.html); only missing the gpxe-cid patch, along with an additional fix for a segfault that was found afterwards.

As far as I can see we don't have the gpxe CID or segfault fixes in vivid either, so they should land there first before being SRU to 14.04.

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

Tks Mathieu,

Description was made based on a "fast look" into what was needed.
Thank you very much for your comment. I'll work on that as soon as I get some free time.
Feel free to provide any other comment that might be useful to this.

Changed in isc-dhcp (Ubuntu):
status: New → In Progress
Revision history for this message
Brian Fromme (brianfromme) wrote :

From Mellanox.

gpxe patch (http://pkgs.fedoraproject.org/cgit/dhcp.git/plain/dhcp-4.2.2-gpxe-cid.patch) has to be included, without it DHCP over IPoIB won’t work.

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

Hello Brian, sorry I was out due to end-of-year holidays + vacation :o).

I'll be providing them a hotfixed dhcp server and asking for SRU sponsorship soon.

Tks

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

I've provided the following PPA:

https://launchpad.net/~inaddy/+archive/ubuntu/lp1401141

# add-apt-repository ppa:inaddy/lp1401141
# apt-get update
# apt-get install isc-dhcp-server

(make sure to have version 4.2.4-7ubuntu13~lp1401141~1 installed)

Could you please test and provide feedback if GPXE patch solves the issue ?

If it does I'll work together with sponsors to provide SRU to isc-dhcp-server package.

Thank you

Tinoco

summary: - IPoIB does not work on Ubuntu due to DHCP
+ DHCP server does not work for IPoIB (Infiniband)
Revision history for this message
Kamal Heib (kamalh-s) wrote :

Hi Rafael,

The issue verified with 4.2.4-7ubuntu13~lp1401141~2 .

Thanks,
Kamal

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

Kamal,

Sorry does that mean the issue was fixed or the issue is still there ? We are finishing setting our IB environment here and I'll be able to test it myself, just wanted to clarify meanwhile.

Thank you

Rafael Tinoco

Revision history for this message
Kamal Heib (kamalh-s) wrote :

Hi Rafael,

I sorry about the misunderstanding, The issue fixed.

Thanks,
Kamal

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

Awesome!! I'll clarify what was done in this bug case and ask for the fix to be accepted as a "Stable Release Update" for our isc-dhcp-package (showing that our IB support was broken). I may need you to "verify" the fix after it gets released to -proposed.

Thank you

Rafael

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

Providing debdiff for Trusty (fixes the issue)

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

Providing debdiff for Utopic (fixes the issue)

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

 isc-dhcp-server | 4.2.4-7ubuntu12 | trusty | amd64, arm64, armhf, i386, powerpc, ppc64el
 isc-dhcp-server | 4.2.4-7ubuntu14 | utopic | amd64, arm64, armhf, i386, powerpc, ppc64el

I'll have to adequate the backport to Vivid:

 isc-dhcp-server | 4.3.1-5ubuntu2 | vivid | amd64, arm64, armhf, i386, powerpc, ppc64el

Will provide the merge proposal soon.

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "trusty_isc-dhcp_4.2.4-7ubuntu13.debdiff" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]

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

Fixed utopic SRU patch and attached it again.

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

Attaching fix for Vivid.

Asking for sponsorship and for the Stable Release Update to be accepted.

Thank you

Rafael Tinoco

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package isc-dhcp - 4.3.1-5ubuntu3

---------------
isc-dhcp (4.3.1-5ubuntu3) wily; urgency=medium

  [ Rafael David Tinoco (Inaddy) ]
  * replaced broken IB support with working one (LP: #1401141)
  * removed:
    - d/p/infiniband_lpf
    - d/p/infiniband_improved_xid
  * added:
    + d/p/dhcp-lpf-ib.patch
    + d/p/dhcp-improved-xid.patch
    + d/p/dhcp-gpxe-cid.patch
    + d/p/dhcp-improved-xid-correct-byte-order.patch

 -- Mathieu Trudel-Lapierre <email address hidden> Mon, 11 May 2015 14:23:41 -0400

Changed in isc-dhcp (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Rafael David Tinoco (rafaeldtinoco) wrote :

I'm reattaching debdiff for Trusty since a version was uploaded to -proposed while this was waiting for sponsorship. Please include Trusty in the "affected" list and consider this patch, being attached, as the fix for Trusty.

Thank you

Rafael Tinoco

Chris J Arges (arges)
Changed in isc-dhcp (Ubuntu Trusty):
milestone: none → ubuntu-14.04.3
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in isc-dhcp (Ubuntu Trusty):
status: New → Confirmed
Changed in isc-dhcp (Ubuntu Utopic):
status: New → Confirmed
Changed in isc-dhcp (Ubuntu Vivid):
status: New → Confirmed
Changed in isc-dhcp (Ubuntu Trusty):
assignee: nobody → Rafael David Tinoco (inaddy)
Changed in isc-dhcp (Ubuntu Utopic):
assignee: nobody → Rafael David Tinoco (inaddy)
Changed in isc-dhcp (Ubuntu Vivid):
assignee: nobody → Rafael David Tinoco (inaddy)
Revision history for this message
James Page (james-page) wrote :

Updates for trusty, utopic and vivid uploaded to proposed for SRU team review.

Revision history for this message
Chris J Arges (arges) wrote : Please test proposed package

Hello Brian, or anyone else affected,

Accepted isc-dhcp into trusty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/isc-dhcp/4.2.4-7ubuntu12.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in isc-dhcp (Ubuntu Trusty):
status: Confirmed → Fix Committed
tags: added: verification-needed
Changed in isc-dhcp (Ubuntu Utopic):
status: Confirmed → Fix Committed
Revision history for this message
Chris J Arges (arges) wrote :

Hello Brian, or anyone else affected,

Accepted isc-dhcp into utopic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/isc-dhcp/4.2.4-7ubuntu14.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in isc-dhcp (Ubuntu Vivid):
status: Confirmed → Fix Committed
Revision history for this message
Chris J Arges (arges) wrote :

Hello Brian, or anyone else affected,

Accepted isc-dhcp into vivid-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/isc-dhcp/4.3.1-5ubuntu2.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

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

I have tested ISC-DHCP for Trusty, Utopic & Vivid for InfiniBand IPoIB and it is working as expected.

Flagging as "verification-done".

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package isc-dhcp - 4.2.4-7ubuntu14.1

---------------
isc-dhcp (4.2.4-7ubuntu14.1) utopic; urgency=medium

  * Replaced broken IB support with working one (LP: #1401141):
    - removed:
      + d/p/infiniband_lpf
      + d/p/infiniband_improved_xid
    - added:
      + d/p/dhcp-4.2.5-lpf-ib.patch
      + d/p/dhcp-4.2.4-improved-xid.patch
      + d/p/dhcp-4.2.2-gpxe-cid.patch
      + d/p/dhcp-4.2.4-improved-xid-correct-byte-order.patch

 -- Rafael David Tinoco (Inaddy) <email address hidden> Tue, 02 Jun 2015 15:14:52 +0100

Changed in isc-dhcp (Ubuntu Utopic):
status: Fix Committed → Fix Released
Revision history for this message
Chris Halse Rogers (raof) wrote : Update Released

The verification of the Stable Release Update for isc-dhcp has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package isc-dhcp - 4.3.1-5ubuntu2.2

---------------
isc-dhcp (4.3.1-5ubuntu2.2) vivid; urgency=medium

  * Replaced broken IB support with working one (LP: #1401141):
    - removed:
      + d/p/infiniband_lpf
      + d/p/infiniband_improved_xid
    - added:
      + d/p/dhcp-lpf-ib.patch
      + d/p/dhcp-improved-xid.patch
      + d/p/dhcp-gpxe-cid.patch
      + d/p/dhcp-improved-xid-correct-byte-order.patch

 -- Rafael David Tinoco (Inaddy) <email address hidden> Tue, 02 Jun 2015 15:34:42 +0100

Changed in isc-dhcp (Ubuntu Vivid):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package isc-dhcp - 4.2.4-7ubuntu12.3

---------------
isc-dhcp (4.2.4-7ubuntu12.3) trusty; urgency=medium

  * Replaced broken IB support with working one (LP: #1401141):
    - removed:
      + d/p/infiniband_lpf
      + d/p/infiniband_improved_xid
    - added:
      + d/p/dhcp-4.2.5-lpf-ib.patch
      + d/p/dhcp-4.2.4-improved-xid.patch
      + d/p/dhcp-4.2.2-gpxe-cid.patch
      + d/p/dhcp-4.2.4-improved-xid-correct-byte-order.patch

 -- Rafael David Tinoco (Inaddy) <email address hidden> Tue, 02 Jun 2015 14:26:37 +0100

Changed in isc-dhcp (Ubuntu Trusty):
status: Fix Committed → Fix Released
Revision history for this message
Rafael David Tinoco (rafaeldtinoco) wrote :

I received good feedback from a User by email:

"""
Dear sir,

A couple of days ago I ran a manual update on Zorin OS 9 32 bits (based on Ubuntu 14.04 LTS).
The only update offered at that time was isc-dhcp.

How interesting, I thought ... will this fix my WIFI connection problems?
I think it did!

Before the update, reconnecting automatically to an existing WIFI connection could take a long time. Sometimes about 10 minutes. As far as I remember, connection after a clean reboot was usually normal, but there were problems after the system was suspended or hibernated. I did not investigate the problem thouroughly, but I noticed that most people with this kind of problem blame energy management.

After the update of isc-dhcp, my system reconnects almost instantly.

....

Thanks for the update(s),

--
Hans van der Weij
"""

It looks like this fix also fixed possible regression in isc-dhcp. Posting here for documentation, hope Hans does not mind.

Thank you

Rafael Tinoco

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

I think during the fix of:

https://bugs.launchpad.net/ubuntu/+source/isc-dhcp/+bug/1529815

I accidentally missed the following:

> + /* Set the broadcast flag */
> + ip->client->config->bootp_broadcast_always = 1;
> +

in find_subnet.

This comes from: dhcp-4.2.5-lpf-ib.patch in tag "dhcp-4.2.5-30.fc20" from
pkgs.fedoraproject.org/git/rpms/dhcp.git (since all IB patches are coming
from fedora project).

I'll review this and provide a PPA, asking for feedback.

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

Duplicates of this bug

Other bug subscribers

Remote bug watches

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