On 11/11/2013 01:35 PM, Daniel Vetter wrote: > On Mon, Nov 11, 2013 at 11:19:07AM -0800, Ian Romanick wrote: >> From: Ian Romanick <[email protected]> >> >> Systems with little physical memory installed will report less than >> 2GiB, and some systems may (hypothetically?) have a larger address space >> for the GPU. My IVB still reports 1534. >> >> Signed-off-by: Ian Romanick <[email protected]> >> Cc: Daniel Vetter <[email protected]> >> Cc: "10.0" <[email protected]> >> --- >> src/mesa/drivers/dri/i965/intel_screen.c | 10 +++++++--- >> 1 file changed, 7 insertions(+), 3 deletions(-) >> >> diff --git a/src/mesa/drivers/dri/i965/intel_screen.c >> b/src/mesa/drivers/dri/i965/intel_screen.c >> index e39d654..592150b 100644 >> --- a/src/mesa/drivers/dri/i965/intel_screen.c >> +++ b/src/mesa/drivers/dri/i965/intel_screen.c >> @@ -823,10 +823,14 @@ brw_query_renderer_integer(__DRIscreen *psp, int >> param, int *value) >> /* Once a batch uses more than 75% of the maximum mappable size, we >> * assume that there's some fragmentation, and we start doing extra >> * flushing, etc. That's the big cliff apps will care about. >> - * >> - * Can only map 2G onto the GPU through the GTT. >> */ >> - const unsigned gpu_mappable_megabytes = 2 * 1024 * 3 / 4; >> + size_t aper_size; >> + size_t mappable_size; >> + >> + drm_intel_get_aperture_sizes(psp->fd, &mappable_size, &aper_size); > > Hm, I haven't seen the (presumably) libdrm patch that adds this yet float > by, but you really want to match the uint64_t libdrm uses internally for > gtt_size here ... ;-) > > With that fixed both patches are > Reviewed-by: Daniel Vetter <[email protected]> > I'll look at the wrapper as soon as it hits my inbox.
Eh... drm_intel_get_aperture_sizes has been around for almost 2.5 years. commit 9d77603d8b95aee4f2408e437c55af15ee05b608 Author: Chris Wilson <[email protected]> AuthorDate: Sat Jun 4 12:47:19 2011 +0100 Commit: Chris Wilson <[email protected]> CommitDate: Sat Jun 4 13:01:11 2011 +0100 intel: Add interface to query aperture sizes. Signed-off-by: Chris Wilson <[email protected]> Should I submit a libdrm patch to change it's interface from size_t to uint64_t? > -Daniel > > >> + >> + const unsigned gpu_mappable_megabytes = >> + (aper_size / (1024 * 1024)) * 3 / 4; >> >> const long system_memory_pages = sysconf(_SC_PHYS_PAGES); >> const long system_page_size = sysconf(_SC_PAGE_SIZE); >> -- >> 1.8.1.4 _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
