[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20070511154251.GJ4523@rhun.ibm.com>
Date: Fri, 11 May 2007 18:42:51 +0300
From: Muli Ben-Yehuda <muli@...ibm.com>
To: David Miller <davem@...emloft.net>
Cc: maheshk@...c.in, linux-kernel@...r.kernel.org,
kernelnewbies@...linux.org
Subject: Re: [HOWTO] accessing the DMA mapped data
On Thu, May 10, 2007 at 04:47:32AM -0700, David Miller wrote:
> From: Mahesh <maheshk@...c.in>
> Date: Thu, 10 May 2007 17:11:17 +0530
>
> > Hi, > You haven't given an example of where this might actually
> > happen. > > The driver is where the DMA mappings almost always
> > occur because > that is the layer that knows the bus technology and
> > therefore > the correct DMA interfaces to call. > > What kind of
> > driver do you have and what is this upper layer > doing the mappings
> > for you but not giving you a pointer to > the kernel buffer as well?
> > > Here I am dealing with a infiniband (see www.openfabrics.org)
> > network device driver. The layer above the driver is the standard
> > infiniband core interface. Now I have a situation where I need to
> > peek into the packets and do some modifications(some hacking). So I
> > just want know whether I can access the original data region using
> > the bus address generated by the dma_map_single.
>
> You can't, therefore you need to ask the Inifiniband guys to perhaps
> tweak the infiniband driver interfaces so that you can get at the
> buffer or provide some other mechanism by which you can accomplish
> what you're trying to do.
AFAICR the ipath driver had the same problem, which resulted in the
addition of ib specific DMA-API wrappers. See usage of struct
ipath_dma_mapping_ops in ipath_dma.c.
Cheers,
Muli
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists