[openib-general] [ANNOUNCE] tvflash: userspace-only Mellanox HCA flash tool

Tom Duffy tduffy at sun.com
Tue Sep 14 15:36:31 PDT 2004


On Tue, 2004-09-14 at 15:01 -0700, Roland Dreier wrote:
>     Tom> ib_mthca 0000:81:00.0: Warning: couldn't set 64-bit PCI DMA mask.
>     Tom> ib_mthca 0000:81:00.0: Warning: couldn't set 64-bit consistent PCI DMA mask.
> 
> Hmm, I wonder what's up with that.  Does sparc64 limit PCI addresses
> to the low 4G or something?

from (mainline) pci.c:

int
pci_set_dma_mask(struct pci_dev *dev, u64 mask)
{
        if (!pci_dma_supported(dev, mask))
                return -EIO;
...

and sparc's implementation of pci_dma_supported:

...
        if (device_mask >= (1UL << 32UL))
                return 0;
...

which seems to me that it does not support >4G.

>     Tom> [KERNEL_IB][ib_mad_handle_wc][/build1/tduffy/openib-work/linux-2.6.9-rc2-openib/drivers/infiniband/core/mad_ib.c:179]completion status 4 for mthca0 index 0 port 1 qpn 0 send 0 bytes 2
> 
> Probably the kernel isn't mapping RAM to DMA addresses in the range
> 0...(high_memory - PAGE_OFFSET) (ib_mad_register_memory() kind of
> implicitly assumes this).  It might be interesting to dump the value of
> high_memory - PAGE_OFFSET, and what scatter_list.addr is getting back
> from pci_map_single in ib_mad_post_receive().
> 
> I know how to fix this properly, it just requires a couple small API
> extensions.

high_memory - PAGE_OFFSET = 0x000000007fecc000

scatter_list.addr = 0x00000000c3b7a360 through 00000000c3f96d80

-tduffy

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.openfabrics.org/pipermail/general/attachments/20040914/1240459d/attachment.sig>


More information about the general mailing list