Feature #8703

pci/npe DDI_CTLOPS_REGSIZE should be 64-bit aware

Added by Robert Mustacchi 4 months ago. Updated about 2 months ago.

Status:ClosedStart date:2017-10-04
Priority:NormalDue date:
Assignee:Robert Mustacchi% Done:

100%

Category:driver - device drivers
Target version:-
Difficulty:Medium Tags:

Description

The DDI_CTLOPS_REGSIZE is an argument to ddi_ctlops. It takes an off_t; however, the npe and pci drivers always truncate the value to 32-bit quantities. As we're cleaning up 8702, we should go through and take care of these here as well. One wrinkle is that these values are generally a uint64_t; however, we use an off_t, which is a signed quantity. If we have something in that upper bit, we're unlikely to be able to represent it anyways and do anything useful with it and that we'd need a new DDI interface.


Related issues

Related to illumos gate - Bug #8702: PCI addresses with physaddr > 0xffffffff can't be mapped in Closed 2017-10-04

History

#1 Updated by Robert Mustacchi 4 months ago

  • Related to Bug #8702: PCI addresses with physaddr > 0xffffffff can't be mapped in added

#2 Updated by Electric Monk about 2 months ago

  • Status changed from New to Closed

git commit 1f0c5e612d8dfd7d1a8f4487cef753357b9909f5

commit  1f0c5e612d8dfd7d1a8f4487cef753357b9909f5
Author: Robert Mustacchi <rm@joyent.com>
Date:   2017-12-04T17:23:22.000Z

    8702 PCI addresses with physaddr > 0xffffffff can't be mapped in
    8703 pci/npe DDI_CTLOPS_REGSIZE should be 64-bit aware
    8704 want OFF_MAX in the kernel
    8705 unsupported 64-bit prefetch memory on pci-pci bridge
    Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
    Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
    Reviewed by: Albert Lee <trisk@forkgnu.org>
    Approved by: Gordon Ross <gwr@nexenta.com>

Also available in: Atom