All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] Use hmm_range_fault to populate user page
@ 2024-03-14  3:35 Oak Zeng
  2024-03-14  3:28 ` ✓ CI.Patch_applied: success for " Patchwork
                   ` (7 more replies)
  0 siblings, 8 replies; 54+ messages in thread
From: Oak Zeng @ 2024-03-14  3:35 UTC (permalink / raw)
  To: intel-xe
  Cc: thomas.hellstrom, matthew.brost, airlied, brian.welty,
	himal.prasad.ghimiray

This is an effort to unify hmmptr (system allocator) and userptr.
A helper xe_hmm_populate_range is created to populate a user
page using hmm_range_fault, instead of using get_user_pages_fast.
This helper is then used to replace some userptr codes.

The same help will be used later for hmmptr.

This is part of the hmmptr (system allocator) codes. Since this
part can be merged separately, send it out for CI and review first.
It will be followed by other hmmptr codes.

Oak Zeng (5):
  drm/xe/svm: Remap and provide memmap backing for GPU vram
  drm/xe: Helper to get memory region from tile
  drm/xe: Helper to get dpa from pfn
  drm/xe: Helper to populate a userptr or hmmptr
  drm/xe: Use hmm_range_fault to populate user pages

 drivers/gpu/drm/xe/Makefile          |   4 +-
 drivers/gpu/drm/xe/xe_device_types.h |  22 +++
 drivers/gpu/drm/xe/xe_hmm.c          | 213 +++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_hmm.h          |  12 ++
 drivers/gpu/drm/xe/xe_mmio.c         |   8 +
 drivers/gpu/drm/xe/xe_svm.h          |  14 ++
 drivers/gpu/drm/xe/xe_svm_devmem.c   |  91 ++++++++++++
 drivers/gpu/drm/xe/xe_vm.c           | 105 +------------
 8 files changed, 367 insertions(+), 102 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.c
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.h
 create mode 100644 drivers/gpu/drm/xe/xe_svm.h
 create mode 100644 drivers/gpu/drm/xe/xe_svm_devmem.c

-- 
2.26.3


^ permalink raw reply	[flat|nested] 54+ messages in thread
* [PATCH 0/8] Use hmm_range_fault to populate user page
@ 2024-03-20  3:44 Oak Zeng
  2024-03-20  3:37 ` ✗ CI.checkpatch: warning for " Patchwork
  0 siblings, 1 reply; 54+ messages in thread
From: Oak Zeng @ 2024-03-20  3:44 UTC (permalink / raw)
  To: intel-xe
  Cc: thomas.hellstrom, matthew.brost, brian.welty, himal.prasad.ghimiray

This is an effort to unify hmmptr (system allocator) and userptr.
A helper xe_hmm_populate_range is created to populate a user
page using hmm_range_fault, instead of using get_user_pages_fast.
This helper is then used to replace some userptr codes.

The same help will be used later for hmmptr.

This is part of the hmmptr (system allocator) codes. Since this
part can be merged separately, send it out for CI and review first.
It will be followed by other hmmptr codes.

Oak Zeng (8):
  drm/xe/svm: Remap and provide memmap backing for GPU vram
  drm/xe/svm: Introduce DRM_XE_SVM kernel config
  drm/xe: Introduce helper to get tile from memory region
  drm/xe: Introduce a helper to get dpa from pfn
  drm/xe/svm: Get xe memory region from page
  drm/xe: Introduce helper to populate userptr
  drm/xe: Introduce a helper to free sg table
  drm/xe: Use hmm_range_fault to populate user pages

 drivers/gpu/drm/xe/Kconfig           |  21 +++
 drivers/gpu/drm/xe/Makefile          |   2 +
 drivers/gpu/drm/xe/xe_device.h       |   9 +
 drivers/gpu/drm/xe/xe_device_types.h |   8 +
 drivers/gpu/drm/xe/xe_hmm.c          | 255 +++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_hmm.h          |  11 ++
 drivers/gpu/drm/xe/xe_mmio.c         |   6 +
 drivers/gpu/drm/xe/xe_svm.h          |  49 +++++
 drivers/gpu/drm/xe/xe_svm_devmem.c   |  89 ++++++++++
 drivers/gpu/drm/xe/xe_tile.c         |   6 +
 drivers/gpu/drm/xe/xe_vm.c           | 122 ++-----------
 11 files changed, 468 insertions(+), 110 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.c
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.h
 create mode 100644 drivers/gpu/drm/xe/xe_svm.h
 create mode 100644 drivers/gpu/drm/xe/xe_svm_devmem.c

-- 
2.26.3


^ permalink raw reply	[flat|nested] 54+ messages in thread
* [PATCH 0/3] Use hmm_range_fault to populate user page
@ 2024-03-22  3:55 Oak Zeng
  2024-03-22  4:52 ` ✗ CI.checkpatch: warning for " Patchwork
  0 siblings, 1 reply; 54+ messages in thread
From: Oak Zeng @ 2024-03-22  3:55 UTC (permalink / raw)
  To: intel-xe
  Cc: thomas.hellstrom, matthew.brost, brian.welty, himal.prasad.ghimiray

This is an effort to unify hmmptr (system allocator) and userptr.
A helper xe_userptr_populate_range is created to populate a user
page using hmm_range_fault, instead of using get_user_pages_fast.
This helper is then used to replace some userptr codes.

The same help will be used later for hmmptr.

This is part of the hmmptr (system allocator) codes. Since this
part can be merged separately, send it out for CI and review first.
It will be followed by other hmmptr codes.

Oak Zeng (3):
  drm/xe: Introduce helper to populate userptr
  drm/xe: Introduce a helper to free sg table
  drm/xe: Use hmm_range_fault to populate user pages

 drivers/gpu/drm/xe/Kconfig  |   1 +
 drivers/gpu/drm/xe/Makefile |   2 +
 drivers/gpu/drm/xe/xe_hmm.c | 254 ++++++++++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_hmm.h |  18 +++
 drivers/gpu/drm/xe/xe_vm.c  | 122 ++---------------
 5 files changed, 287 insertions(+), 110 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.c
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.h

-- 
2.26.3


^ permalink raw reply	[flat|nested] 54+ messages in thread
* [PATCH v3 0/2] Use hmm_range_fault to populate user page
@ 2024-04-04  6:16 Himal Prasad Ghimiray
  2024-04-04  6:08 ` ✗ CI.checkpatch: warning for " Patchwork
  0 siblings, 1 reply; 54+ messages in thread
From: Himal Prasad Ghimiray @ 2024-04-04  6:16 UTC (permalink / raw)
  To: intel-xe; +Cc: Himal Prasad Ghimiray

This is an effort to unify hmmptr (system allocator) and userptr.
A helper xe_userptr_populate_range is created to populate a user
page using hmm_range_fault, instead of using get_user_pages_fast.
This helper is then used to replace some userptr codes.

The same helper will be used later for hmmptr.

This is part of the hmmptr (system allocator) codes. Since this
part can be merged separately, send it out for CI and review first.
It will be followed by other hmmptr codes.

-v3
Squashed patches 1 and 2.
Address review comments.

Oak Zeng (2):
  drm/xe: Introduce helper to populate userptr
  drm/xe: Use hmm_range_fault to populate user pages

 drivers/gpu/drm/xe/Kconfig  |   1 +
 drivers/gpu/drm/xe/Makefile |   2 +
 drivers/gpu/drm/xe/xe_hmm.c | 253 ++++++++++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_hmm.h |  18 +++
 drivers/gpu/drm/xe/xe_vm.c  | 118 ++---------------
 5 files changed, 282 insertions(+), 110 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.c
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.h

-- 
2.25.1


^ permalink raw reply	[flat|nested] 54+ messages in thread
* [PATCH v3 0/2] Use hmm_range_fault to populate user page
@ 2024-04-05 19:05 Himal Prasad Ghimiray
  2024-04-05 20:47 ` ✗ CI.checkpatch: warning for " Patchwork
  0 siblings, 1 reply; 54+ messages in thread
From: Himal Prasad Ghimiray @ 2024-04-05 19:05 UTC (permalink / raw)
  To: intel-xe; +Cc: Himal Prasad Ghimiray

This is an effort to unify hmmptr (system allocator) and userptr.
A helper xe_userptr_populate_range is created to populate a user
page using hmm_range_fault, instead of using get_user_pages_fast.
This helper is then used to replace some userptr codes.

The same helper will be used later for hmmptr.

This is part of the hmmptr (system allocator) codes. Since this
part can be merged separately, send it out for CI and review first.
It will be followed by other hmmptr codes.

-v3
Squashed patches 1 and 2.
Address review comments.

Oak Zeng (2):
  drm/xe: Introduce helper to populate userptr
  drm/xe: Use hmm_range_fault to populate user pages

 drivers/gpu/drm/xe/Kconfig  |   1 +
 drivers/gpu/drm/xe/Makefile |   2 +
 drivers/gpu/drm/xe/xe_hmm.c | 253 ++++++++++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_hmm.h |  11 ++
 drivers/gpu/drm/xe/xe_vm.c  | 117 +----------------
 5 files changed, 273 insertions(+), 111 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.c
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.h

-- 
2.25.1


^ permalink raw reply	[flat|nested] 54+ messages in thread
* [PATCH v3 0/2] Use hmm_range_fault to populate user page
@ 2024-04-12  9:52 Himal Prasad Ghimiray
  2024-04-12 11:14 ` ✗ CI.checkpatch: warning for " Patchwork
  0 siblings, 1 reply; 54+ messages in thread
From: Himal Prasad Ghimiray @ 2024-04-12  9:52 UTC (permalink / raw)
  To: intel-xe; +Cc: Himal Prasad Ghimiray

This is an effort to unify hmmptr (system allocator) and userptr.
A helper xe_userptr_populate_range is created to populate a user
page using hmm_range_fault, instead of using get_user_pages_fast.
This helper is then used to replace some userptr codes.

The same helper will be used later for hmmptr.

This is part of the hmmptr (system allocator) codes. Since this
part can be merged separately, send it out for CI and review first.
It will be followed by other hmmptr codes.

-v3
Squashed patches 1 and 2.
Address review comments.

-v4
Fix commit message.

Oak Zeng (2):
  drm/xe: Introduce helper to populate userptr
  drm/xe: Use hmm_range_fault to populate user pages

 drivers/gpu/drm/xe/Kconfig  |   1 +
 drivers/gpu/drm/xe/Makefile |   2 +
 drivers/gpu/drm/xe/xe_hmm.c | 253 ++++++++++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_hmm.h |  11 ++
 drivers/gpu/drm/xe/xe_vm.c  | 117 +----------------
 5 files changed, 273 insertions(+), 111 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.c
 create mode 100644 drivers/gpu/drm/xe/xe_hmm.h

-- 
2.25.1


^ permalink raw reply	[flat|nested] 54+ messages in thread

end of thread, other threads:[~2024-04-12 11:14 UTC | newest]

Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-14  3:35 [PATCH 0/5] Use hmm_range_fault to populate user page Oak Zeng
2024-03-14  3:28 ` ✓ CI.Patch_applied: success for " Patchwork
2024-03-14  3:28 ` ✗ CI.checkpatch: warning " Patchwork
2024-03-14  3:29 ` ✗ CI.KUnit: failure " Patchwork
2024-03-14  3:35 ` [PATCH 1/5] drm/xe/svm: Remap and provide memmap backing for GPU vram Oak Zeng
2024-03-14 17:17   ` Matthew Brost
2024-03-14 18:32     ` Zeng, Oak
2024-03-14 20:49       ` Matthew Brost
2024-03-15 16:00         ` Zeng, Oak
2024-03-15 20:39           ` Matthew Brost
2024-03-15 21:31             ` Zeng, Oak
2024-03-16  1:25               ` Matthew Brost
2024-03-18 10:16                 ` Hellstrom, Thomas
2024-03-18 15:02                   ` Zeng, Oak
2024-03-18 15:46                     ` Hellstrom, Thomas
2024-03-18 14:51                 ` Zeng, Oak
2024-03-15  1:45   ` Welty, Brian
2024-03-15  3:10     ` Zeng, Oak
2024-03-15  3:16       ` Zeng, Oak
2024-03-15 18:05         ` Welty, Brian
2024-03-15 23:11           ` Zeng, Oak
2024-03-14  3:35 ` [PATCH 2/5] drm/xe: Helper to get memory region from tile Oak Zeng
2024-03-14 17:33   ` Matthew Brost
2024-03-14 17:44   ` Matthew Brost
2024-03-15  2:48     ` Zeng, Oak
2024-03-14  3:35 ` [PATCH 3/5] drm/xe: Helper to get dpa from pfn Oak Zeng
2024-03-14 17:39   ` Matthew Brost
2024-03-15 17:29     ` Zeng, Oak
2024-03-16  1:33       ` Matthew Brost
2024-03-18 19:25         ` Zeng, Oak
2024-03-18 12:09     ` Hellstrom, Thomas
2024-03-18 19:27       ` Zeng, Oak
2024-03-14  3:35 ` [PATCH 4/5] drm/xe: Helper to populate a userptr or hmmptr Oak Zeng
2024-03-14 20:25   ` Matthew Brost
2024-03-16  1:35     ` Zeng, Oak
2024-03-18  0:29       ` Matthew Brost
2024-03-18 11:53   ` Hellstrom, Thomas
2024-03-18 19:50     ` Zeng, Oak
2024-03-19  8:41       ` Hellstrom, Thomas
2024-03-19 16:13         ` Zeng, Oak
2024-03-19 19:52           ` Hellstrom, Thomas
2024-03-19 20:01             ` Zeng, Oak
2024-03-18 13:12   ` Hellstrom, Thomas
2024-03-18 14:49     ` Zeng, Oak
2024-03-18 15:40       ` Hellstrom, Thomas
2024-03-18 16:09         ` Zeng, Oak
2024-03-14  3:35 ` [PATCH 5/5] drm/xe: Use hmm_range_fault to populate user pages Oak Zeng
2024-03-14 20:54   ` Matthew Brost
2024-03-19  2:36     ` Zeng, Oak
2024-03-20  3:44 [PATCH 0/8] Use hmm_range_fault to populate user page Oak Zeng
2024-03-20  3:37 ` ✗ CI.checkpatch: warning for " Patchwork
2024-03-22  3:55 [PATCH 0/3] " Oak Zeng
2024-03-22  4:52 ` ✗ CI.checkpatch: warning for " Patchwork
2024-04-04  6:16 [PATCH v3 0/2] " Himal Prasad Ghimiray
2024-04-04  6:08 ` ✗ CI.checkpatch: warning for " Patchwork
2024-04-05 19:05 [PATCH v3 0/2] " Himal Prasad Ghimiray
2024-04-05 20:47 ` ✗ CI.checkpatch: warning for " Patchwork
2024-04-12  9:52 [PATCH v3 0/2] " Himal Prasad Ghimiray
2024-04-12 11:14 ` ✗ CI.checkpatch: warning for " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.