Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1570053 > unrolled thread
| Started by | Ross Zwisler <ross.zwisler@linux.intel.com> |
|---|---|
| First post | 2017-01-30 20:30 +0100 |
| Last post | 2017-01-31 15:50 +0100 |
| Articles | 6 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH] drm: remove unnecessary fault wrappers Ross Zwisler <ross.zwisler@linux.intel.com> - 2017-01-30 20:30 +0100
Re: [PATCH] drm: remove unnecessary fault wrappers Sean Paul <seanpaul@chromium.org> - 2017-01-30 21:40 +0100
[PATCH v2] drm: remove unnecessary fault wrappers Ross Zwisler <ross.zwisler@linux.intel.com> - 2017-01-30 23:20 +0100
Re: [PATCH v2] drm: remove unnecessary fault wrappers Ross Zwisler <ross.zwisler@linux.intel.com> - 2017-01-30 23:20 +0100
Re: [PATCH v2] drm: remove unnecessary fault wrappers Daniel Vetter <daniel@ffwll.ch> - 2017-01-31 09:50 +0100
Re: [PATCH v2] drm: remove unnecessary fault wrappers Sean Paul <seanpaul@chromium.org> - 2017-01-31 15:50 +0100
| From | Ross Zwisler <ross.zwisler@linux.intel.com> |
|---|---|
| Date | 2017-01-30 20:30 +0100 |
| Subject | [PATCH] drm: remove unnecessary fault wrappers |
| Message-ID | <t5pOi-7RS-9@gated-at.bofh.it> |
The fault wrappers drm_vm_fault(), drm_vm_shm_fault(), drm_vm_dma_fault()
and drm_vm_sg_fault() used to provide extra logic beyond what was in the
"drm_do_*" versions of these functions, but as of this commit:
commit ca0b07d9a969 ("drm: convert drm from nopage to fault.")
They are just unnecessary wrappers that do nothing. Remove them.
Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
---
drivers/gpu/drm/drm_vm.c | 28 ++++------------------------
1 file changed, 4 insertions(+), 24 deletions(-)
diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
index bae6e26..e677b11 100644
--- a/drivers/gpu/drm/drm_vm.c
+++ b/drivers/gpu/drm/drm_vm.c
@@ -349,50 +349,30 @@ static int drm_do_vm_sg_fault(struct vm_fault *vmf)
return 0;
}
-static int drm_vm_fault(struct vm_fault *vmf)
-{
- return drm_do_vm_fault(vmf);
-}
-
-static int drm_vm_shm_fault(struct vm_fault *vmf)
-{
- return drm_do_vm_shm_fault(vmf);
-}
-
-static int drm_vm_dma_fault(struct vm_fault *vmf)
-{
- return drm_do_vm_dma_fault(vmf);
-}
-
-static int drm_vm_sg_fault(struct vm_fault *vmf)
-{
- return drm_do_vm_sg_fault(vmf);
-}
-
/** AGP virtual memory operations */
static const struct vm_operations_struct drm_vm_ops = {
- .fault = drm_vm_fault,
+ .fault = drm_do_vm_fault,
.open = drm_vm_open,
.close = drm_vm_close,
};
/** Shared virtual memory operations */
static const struct vm_operations_struct drm_vm_shm_ops = {
- .fault = drm_vm_shm_fault,
+ .fault = drm_do_vm_shm_fault,
.open = drm_vm_open,
.close = drm_vm_shm_close,
};
/** DMA virtual memory operations */
static const struct vm_operations_struct drm_vm_dma_ops = {
- .fault = drm_vm_dma_fault,
+ .fault = drm_do_vm_dma_fault,
.open = drm_vm_open,
.close = drm_vm_close,
};
/** Scatter-gather virtual memory operations */
static const struct vm_operations_struct drm_vm_sg_ops = {
- .fault = drm_vm_sg_fault,
+ .fault = drm_do_vm_sg_fault,
.open = drm_vm_open,
.close = drm_vm_close,
};
--
2.7.4
[toc] | [next] | [standalone]
| From | Sean Paul <seanpaul@chromium.org> |
|---|---|
| Date | 2017-01-30 21:40 +0100 |
| Message-ID | <t5qU2-4V-17@gated-at.bofh.it> |
| In reply to | #1570053 |
On Mon, Jan 30, 2017 at 12:20:02PM -0700, Ross Zwisler wrote:
> The fault wrappers drm_vm_fault(), drm_vm_shm_fault(), drm_vm_dma_fault()
> and drm_vm_sg_fault() used to provide extra logic beyond what was in the
> "drm_do_*" versions of these functions, but as of this commit:
>
> commit ca0b07d9a969 ("drm: convert drm from nopage to fault.")
>
> They are just unnecessary wrappers that do nothing. Remove them.
Can we rename the drm_do_* functions to remove "do_" instead? I don't think it
adds anything and this seems like a good time to fix that.
Sean
>
> Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> ---
> drivers/gpu/drm/drm_vm.c | 28 ++++------------------------
> 1 file changed, 4 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
> index bae6e26..e677b11 100644
> --- a/drivers/gpu/drm/drm_vm.c
> +++ b/drivers/gpu/drm/drm_vm.c
> @@ -349,50 +349,30 @@ static int drm_do_vm_sg_fault(struct vm_fault *vmf)
> return 0;
> }
>
> -static int drm_vm_fault(struct vm_fault *vmf)
> -{
> - return drm_do_vm_fault(vmf);
> -}
> -
> -static int drm_vm_shm_fault(struct vm_fault *vmf)
> -{
> - return drm_do_vm_shm_fault(vmf);
> -}
> -
> -static int drm_vm_dma_fault(struct vm_fault *vmf)
> -{
> - return drm_do_vm_dma_fault(vmf);
> -}
> -
> -static int drm_vm_sg_fault(struct vm_fault *vmf)
> -{
> - return drm_do_vm_sg_fault(vmf);
> -}
> -
> /** AGP virtual memory operations */
> static const struct vm_operations_struct drm_vm_ops = {
> - .fault = drm_vm_fault,
> + .fault = drm_do_vm_fault,
> .open = drm_vm_open,
> .close = drm_vm_close,
> };
>
> /** Shared virtual memory operations */
> static const struct vm_operations_struct drm_vm_shm_ops = {
> - .fault = drm_vm_shm_fault,
> + .fault = drm_do_vm_shm_fault,
> .open = drm_vm_open,
> .close = drm_vm_shm_close,
> };
>
> /** DMA virtual memory operations */
> static const struct vm_operations_struct drm_vm_dma_ops = {
> - .fault = drm_vm_dma_fault,
> + .fault = drm_do_vm_dma_fault,
> .open = drm_vm_open,
> .close = drm_vm_close,
> };
>
> /** Scatter-gather virtual memory operations */
> static const struct vm_operations_struct drm_vm_sg_ops = {
> - .fault = drm_vm_sg_fault,
> + .fault = drm_do_vm_sg_fault,
> .open = drm_vm_open,
> .close = drm_vm_close,
> };
> --
> 2.7.4
--
Sean Paul, Software Engineer, Google / Chromium OS
[toc] | [prev] | [next] | [standalone]
| From | Ross Zwisler <ross.zwisler@linux.intel.com> |
|---|---|
| Date | 2017-01-30 23:20 +0100 |
| Subject | [PATCH v2] drm: remove unnecessary fault wrappers |
| Message-ID | <t5ssN-15O-13@gated-at.bofh.it> |
| In reply to | #1570108 |
The fault wrappers drm_vm_fault(), drm_vm_shm_fault(), drm_vm_dma_fault()
and drm_vm_sg_fault() used to provide extra logic beyond what was in the
"drm_do_*" versions of these functions, but as of this commit:
commit ca0b07d9a969 ("drm: convert drm from nopage to fault.")
They are just unnecessary wrappers that do nothing. Remove them, and
rename the the drm_do_* fault handlers to remove the "do_" since they no
longer have corresponding wrappers.
Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
---
This patch applies cleanly to mmots/master, which is currently at
v4.10-rc5-mmots-2017-01-26-15-49.
---
drivers/gpu/drm/drm_vm.c | 30 +++++-------------------------
1 file changed, 5 insertions(+), 25 deletions(-)
diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
index 0cd993a..039a1e0 100644
--- a/drivers/gpu/drm/drm_vm.c
+++ b/drivers/gpu/drm/drm_vm.c
@@ -95,7 +95,7 @@ static pgprot_t drm_dma_prot(uint32_t map_type, struct vm_area_struct *vma)
* map, get the page, increment the use count and return it.
*/
#if IS_ENABLED(CONFIG_AGP)
-static int drm_do_vm_fault(struct vm_fault *vmf)
+static int drm_vm_fault(struct vm_fault *vmf)
{
struct vm_area_struct *vma = vmf->vma;
struct drm_file *priv = vma->vm_file->private_data;
@@ -168,7 +168,7 @@ static int drm_do_vm_fault(struct vm_fault *vmf)
return VM_FAULT_SIGBUS; /* Disallow mremap */
}
#else
-static int drm_do_vm_fault(struct vm_fault *vmf)
+static int drm_vm_fault(struct vm_fault *vmf)
{
return VM_FAULT_SIGBUS;
}
@@ -183,7 +183,7 @@ static int drm_do_vm_fault(struct vm_fault *vmf)
* Get the mapping, find the real physical page to map, get the page, and
* return it.
*/
-static int drm_do_vm_shm_fault(struct vm_fault *vmf)
+static int drm_vm_shm_fault(struct vm_fault *vmf)
{
struct vm_area_struct *vma = vmf->vma;
struct drm_local_map *map = vma->vm_private_data;
@@ -285,7 +285,7 @@ static void drm_vm_shm_close(struct vm_area_struct *vma)
*
* Determine the page number from the page offset and get it from drm_device_dma::pagelist.
*/
-static int drm_do_vm_dma_fault(struct vm_fault *vmf)
+static int drm_vm_dma_fault(struct vm_fault *vmf)
{
struct vm_area_struct *vma = vmf->vma;
struct drm_file *priv = vma->vm_file->private_data;
@@ -320,7 +320,7 @@ static int drm_do_vm_dma_fault(struct vm_fault *vmf)
*
* Determine the map offset from the page offset and get it from drm_sg_mem::pagelist.
*/
-static int drm_do_vm_sg_fault(struct vm_fault *vmf)
+static int drm_vm_sg_fault(struct vm_fault *vmf)
{
struct vm_area_struct *vma = vmf->vma;
struct drm_local_map *map = vma->vm_private_data;
@@ -347,26 +347,6 @@ static int drm_do_vm_sg_fault(struct vm_fault *vmf)
return 0;
}
-static int drm_vm_fault(struct vm_fault *vmf)
-{
- return drm_do_vm_fault(vmf);
-}
-
-static int drm_vm_shm_fault(struct vm_fault *vmf)
-{
- return drm_do_vm_shm_fault(vmf);
-}
-
-static int drm_vm_dma_fault(struct vm_fault *vmf)
-{
- return drm_do_vm_dma_fault(vmf);
-}
-
-static int drm_vm_sg_fault(struct vm_fault *vmf)
-{
- return drm_do_vm_sg_fault(vmf);
-}
-
/** AGP virtual memory operations */
static const struct vm_operations_struct drm_vm_ops = {
.fault = drm_vm_fault,
--
2.7.4
[toc] | [prev] | [next] | [standalone]
| From | Ross Zwisler <ross.zwisler@linux.intel.com> |
|---|---|
| Date | 2017-01-30 23:20 +0100 |
| Subject | Re: [PATCH v2] drm: remove unnecessary fault wrappers |
| Message-ID | <t5ssO-15O-21@gated-at.bofh.it> |
| In reply to | #1570150 |
On Mon, Jan 30, 2017 at 03:09:39PM -0700, Ross Zwisler wrote: > This patch applies cleanly to mmots/master, which is currently at > v4.10-rc5-mmots-2017-01-26-15-49. Which may not be what you want... The reason I was looking at this code was because it was recently changed by Dave Jiang to remove the 'vma' argument from all the fault handlers. So, would you rather: 1) Take it through the -mm tree to avoid merge conflicts, in which case I'll add akpm to the thread. 2) Take it through your tree & deal with merge conflicts later, in which case I can rebase on your tree or on v4.10-rc6. 3) Just drop it and keep the extra 20 lines or whatever that the complier will just optimize out. I'm fine with any of the above.
[toc] | [prev] | [next] | [standalone]
| From | Daniel Vetter <daniel@ffwll.ch> |
|---|---|
| Date | 2017-01-31 09:50 +0100 |
| Subject | Re: [PATCH v2] drm: remove unnecessary fault wrappers |
| Message-ID | <t5Ciu-6WK-11@gated-at.bofh.it> |
| In reply to | #1570152 |
On Mon, Jan 30, 2017 at 03:14:38PM -0700, Ross Zwisler wrote: > On Mon, Jan 30, 2017 at 03:09:39PM -0700, Ross Zwisler wrote: > > > This patch applies cleanly to mmots/master, which is currently at > > v4.10-rc5-mmots-2017-01-26-15-49. > > Which may not be what you want... The reason I was looking at this code was > because it was recently changed by Dave Jiang to remove the 'vma' argument > from all the fault handlers. > > So, would you rather: > > 1) Take it through the -mm tree to avoid merge conflicts, in which case I'll > add akpm to the thread. > > 2) Take it through your tree & deal with merge conflicts later, in which case > I can rebase on your tree or on v4.10-rc6. > > 3) Just drop it and keep the extra 20 lines or whatever that the complier will > just optimize out. > > I'm fine with any of the above. drm_vm.c is legacy horror shows, we're not going to touch in in the drm tree (except for other trivial clenaups). So perfectly fine to merge it all through -mm. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch
[toc] | [prev] | [next] | [standalone]
| From | Sean Paul <seanpaul@chromium.org> |
|---|---|
| Date | 2017-01-31 15:50 +0100 |
| Subject | Re: [PATCH v2] drm: remove unnecessary fault wrappers |
| Message-ID | <t5HUS-1S1-19@gated-at.bofh.it> |
| In reply to | #1570150 |
On Mon, Jan 30, 2017 at 03:09:39PM -0700, Ross Zwisler wrote:
> The fault wrappers drm_vm_fault(), drm_vm_shm_fault(), drm_vm_dma_fault()
> and drm_vm_sg_fault() used to provide extra logic beyond what was in the
> "drm_do_*" versions of these functions, but as of this commit:
>
> commit ca0b07d9a969 ("drm: convert drm from nopage to fault.")
>
> They are just unnecessary wrappers that do nothing. Remove them, and
> rename the the drm_do_* fault handlers to remove the "do_" since they no
> longer have corresponding wrappers.
>
Thanks for humoring my nit :-)
Reviewed-by: Sean Paul <seanpaul@chromium.org>
> Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> ---
>
> This patch applies cleanly to mmots/master, which is currently at
> v4.10-rc5-mmots-2017-01-26-15-49.
>
> ---
> drivers/gpu/drm/drm_vm.c | 30 +++++-------------------------
> 1 file changed, 5 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
> index 0cd993a..039a1e0 100644
> --- a/drivers/gpu/drm/drm_vm.c
> +++ b/drivers/gpu/drm/drm_vm.c
> @@ -95,7 +95,7 @@ static pgprot_t drm_dma_prot(uint32_t map_type, struct vm_area_struct *vma)
> * map, get the page, increment the use count and return it.
> */
> #if IS_ENABLED(CONFIG_AGP)
> -static int drm_do_vm_fault(struct vm_fault *vmf)
> +static int drm_vm_fault(struct vm_fault *vmf)
> {
> struct vm_area_struct *vma = vmf->vma;
> struct drm_file *priv = vma->vm_file->private_data;
> @@ -168,7 +168,7 @@ static int drm_do_vm_fault(struct vm_fault *vmf)
> return VM_FAULT_SIGBUS; /* Disallow mremap */
> }
> #else
> -static int drm_do_vm_fault(struct vm_fault *vmf)
> +static int drm_vm_fault(struct vm_fault *vmf)
> {
> return VM_FAULT_SIGBUS;
> }
> @@ -183,7 +183,7 @@ static int drm_do_vm_fault(struct vm_fault *vmf)
> * Get the mapping, find the real physical page to map, get the page, and
> * return it.
> */
> -static int drm_do_vm_shm_fault(struct vm_fault *vmf)
> +static int drm_vm_shm_fault(struct vm_fault *vmf)
> {
> struct vm_area_struct *vma = vmf->vma;
> struct drm_local_map *map = vma->vm_private_data;
> @@ -285,7 +285,7 @@ static void drm_vm_shm_close(struct vm_area_struct *vma)
> *
> * Determine the page number from the page offset and get it from drm_device_dma::pagelist.
> */
> -static int drm_do_vm_dma_fault(struct vm_fault *vmf)
> +static int drm_vm_dma_fault(struct vm_fault *vmf)
> {
> struct vm_area_struct *vma = vmf->vma;
> struct drm_file *priv = vma->vm_file->private_data;
> @@ -320,7 +320,7 @@ static int drm_do_vm_dma_fault(struct vm_fault *vmf)
> *
> * Determine the map offset from the page offset and get it from drm_sg_mem::pagelist.
> */
> -static int drm_do_vm_sg_fault(struct vm_fault *vmf)
> +static int drm_vm_sg_fault(struct vm_fault *vmf)
> {
> struct vm_area_struct *vma = vmf->vma;
> struct drm_local_map *map = vma->vm_private_data;
> @@ -347,26 +347,6 @@ static int drm_do_vm_sg_fault(struct vm_fault *vmf)
> return 0;
> }
>
> -static int drm_vm_fault(struct vm_fault *vmf)
> -{
> - return drm_do_vm_fault(vmf);
> -}
> -
> -static int drm_vm_shm_fault(struct vm_fault *vmf)
> -{
> - return drm_do_vm_shm_fault(vmf);
> -}
> -
> -static int drm_vm_dma_fault(struct vm_fault *vmf)
> -{
> - return drm_do_vm_dma_fault(vmf);
> -}
> -
> -static int drm_vm_sg_fault(struct vm_fault *vmf)
> -{
> - return drm_do_vm_sg_fault(vmf);
> -}
> -
> /** AGP virtual memory operations */
> static const struct vm_operations_struct drm_vm_ops = {
> .fault = drm_vm_fault,
> --
> 2.7.4
--
Sean Paul, Software Engineer, Google / Chromium OS
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web