linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] Compact userptr object backing store allocation
@ 2016-11-11  8:50 Tvrtko Ursulin
  2016-11-11  8:50 ` [PATCH 1/4] lib/scatterlist: Fix offset type in sg_alloc_table_from_pages Tvrtko Ursulin
                   ` (4 more replies)
  0 siblings, 5 replies; 21+ messages in thread
From: Tvrtko Ursulin @ 2016-11-11  8:50 UTC (permalink / raw)
  To: Intel-gfx; +Cc: linux-kernel, Tvrtko Ursulin

From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

Userptr backing store with SWIOTBL active is currently allocated in the same
inefficient manner, with one sg entry per object page, as what the commit
871dfbd67d4e ("drm/i915: Allow compaction upto SWIOTLB max segment size") fixed
for regular GEM objects.

We can fix that by adding new a __sg_alloc_table_from_pages core function which
allows us to control the maximum desired coalesced segment size.

Other than that the series starts with two simple fixes to
sg_alloc_table_from_pages which deal with incorrect data type usage and a
theoretical overflow condition. Fixing the latter enables easy addition of the
above mentioned __sg_alloc_table_from_pages.

Tvrtko Ursulin (4):
  lib/scatterlist: Fix offset type in sg_alloc_table_from_pages
  lib/scatterlist: Avoid potential scatterlist entry overflow
  lib/scatterlist: Introduce and export __sg_alloc_table_from_pages
  drm/i915: Use __sg_alloc_table_from_pages for userptr allocations

 drivers/gpu/drm/i915/i915_drv.h                |  9 +++
 drivers/gpu/drm/i915/i915_gem.c                | 15 +----
 drivers/gpu/drm/i915/i915_gem_userptr.c        | 28 ++-------
 drivers/media/v4l2-core/videobuf2-dma-contig.c |  4 +-
 drivers/rapidio/devices/rio_mport_cdev.c       |  4 +-
 include/linux/scatterlist.h                    | 11 ++--
 lib/scatterlist.c                              | 78 ++++++++++++++++++++------
 7 files changed, 87 insertions(+), 62 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 21+ messages in thread
[parent not found: <20170727090504.15812-1-tvrtko.ursulin@linux.intel.com>]

end of thread, other threads:[~2017-08-03  9:21 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-11  8:50 [PATCH 0/4] Compact userptr object backing store allocation Tvrtko Ursulin
2016-11-11  8:50 ` [PATCH 1/4] lib/scatterlist: Fix offset type in sg_alloc_table_from_pages Tvrtko Ursulin
2016-11-14  9:55   ` [Intel-gfx] " Chris Wilson
2016-11-22 14:31     ` Mauro Carvalho Chehab
2016-11-11  8:50 ` [PATCH 2/4] lib/scatterlist: Avoid potential scatterlist entry overflow Tvrtko Ursulin
2016-11-11 10:19   ` [Intel-gfx] " Chris Wilson
2016-11-11  8:50 ` [PATCH 3/4] lib/scatterlist: Introduce and export __sg_alloc_table_from_pages Tvrtko Ursulin
2016-11-11 10:24   ` [Intel-gfx] " Chris Wilson
2016-11-11 12:35     ` [PATCH v2 " Tvrtko Ursulin
2016-11-11 14:17     ` [PATCH v3 " Tvrtko Ursulin
2016-11-14  9:51       ` Chris Wilson
2016-11-11  8:50 ` [PATCH 4/4] drm/i915: Use __sg_alloc_table_from_pages for userptr allocations Tvrtko Ursulin
2016-11-11  8:59   ` [PATCH v3 " Tvrtko Ursulin
2016-11-11 10:23   ` [PATCH " Chris Wilson
2016-11-11 12:36     ` [PATCH v4 " Tvrtko Ursulin
2016-11-14  9:52       ` Chris Wilson
2016-11-14 11:45 ` [Intel-gfx] [PATCH 0/4] Compact userptr object backing store allocation Tvrtko Ursulin
2016-11-28 10:23   ` Tvrtko Ursulin
     [not found] <20170727090504.15812-1-tvrtko.ursulin@linux.intel.com>
2017-07-27  9:05 ` [PATCH 3/4] lib/scatterlist: Introduce and export __sg_alloc_table_from_pages Tvrtko Ursulin
2017-08-02 13:06   ` [Intel-gfx] " Tvrtko Ursulin
2017-08-02 23:01     ` Andrew Morton
2017-08-03  9:21       ` Tvrtko Ursulin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).