mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 10:34:43 +03:00
gpu: nvgpu: Avoid 64 bit division
Avoid doing 64bit division in the page allocator. This causes problems on 32 bit platforms. Bug 1799159 Change-Id: I5166a71a4e84454686cce6d6cdca678a862a7ae7 Signed-off-by: Alex Waterman <alexw@nvidia.com> Reviewed-on: http://git-master/r/1236799 (cherry picked from commit 21c091d1c00433acb9965c3d348d16fbb4c50c1a) Reviewed-on: http://git-master/r/1236195 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
fc4f0ddddb
commit
ba3dbc452c
@@ -229,7 +229,7 @@ static struct page_alloc_slab_page *alloc_slab_page(
|
||||
|
||||
INIT_LIST_HEAD(&slab_page->list_entry);
|
||||
slab_page->slab_size = slab->slab_size;
|
||||
slab_page->nr_objects = a->page_size / slab->slab_size;
|
||||
slab_page->nr_objects = (u32)a->page_size / slab->slab_size;
|
||||
slab_page->nr_objects_alloced = 0;
|
||||
slab_page->owner = slab;
|
||||
slab_page->state = SP_NONE;
|
||||
@@ -389,7 +389,7 @@ static void __gk20a_free_slab(struct gk20a_page_allocator *a,
|
||||
enum slab_page_state new_state;
|
||||
int offs;
|
||||
|
||||
offs = (alloc->base - slab_page->page_addr) / slab_page->slab_size;
|
||||
offs = (u32)(alloc->base - slab_page->page_addr) / slab_page->slab_size;
|
||||
bitmap_clear(&slab_page->bitmap, offs, 1);
|
||||
|
||||
slab_page->nr_objects_alloced--;
|
||||
|
||||
Reference in New Issue
Block a user