Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 Nov 2008 15:02:04 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-hackers@freebsd.org
Cc:        Marc =?iso-8859-1?q?L=F6rner?= <marc.loerner@hob.de>
Subject:   Re: ide with DMA and ram > 4GB
Message-ID:  <200811131502.04370.jhb@freebsd.org>
In-Reply-To: <200811121823.14400.marc.loerner@hob.de>
References:  <200811121823.14400.marc.loerner@hob.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 12 November 2008 12:23:14 pm Marc L=F6rner wrote:
> Hello,
> I just stepped over a problem with my IDE disk running in DMA-mode
> and having more than 4GB of RAM.
> It seems that the whole way down GEOM, ata-disk, ata-dma never is checked
> whether physical address of buffer is less than 4GB an so fits in 32bits.
> =3D> when PRD is set the address is rigorously truncated to fit into 32bi=
t,
>        with buffer < 4GB all is quite fine.

bus_dmamap_load() in ata-dma.c should result in bounce pages being allocate=
d=20
and having the data copied to pages below 4GB and having those addresses=20
passed to the callback and stored in the PRD.

=2D-=20
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200811131502.04370.jhb>