Skip to content

[sled-agent] Fail with helpful error message if kernel does not support xde driver #1063

@bnaecker

Description

@bnaecker

@jmpesp Has hit an issue with version skew between the stock helios-dev publisher and the publisher that provides the modified kernel that the xde driver expects, to be able to register itself with DLD. This results in errors like:

{
  "msg": "request completed",
  "v": 0,
  "name": "bootstrap-agent",
  "level": 30,
  "time": "2022-05-12T20:22:59.083099687Z",
  "hostname": "dinnerbone",
  "pid": 623,
  "uri": "/start_sled",
  "method": "PUT",
  "req_id": "7895d08c-152e-4417-8551-78f812f5a640",
  "remote_addr": "[fdb0:1b:21c1:ffe0::1]:65275",
  "local_addr": "[fdb0:1b:21c1:ffe0::1]:12346",
  "component": "dropshot",
  "error_message_external": "Internal Server Error",
  "error_message_internal": "Error starting sled agent: Could not start sled agent server: Error managing guest networking: Failure interacting with the OPTE ioctl(2) interface: ioctl SetXdeUnderlay failed: unexpected errno: 48",
  "response_code": "500"
}

That "unexpected errno" is ENOTSUP, which means that the registration with DLD failed, because DLD doesn't understand who xde is. This should be detected, and a more useful error message printed out, describing that the kernel does not support the xde driver and how it can be updated so that's the case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions