diff options
author | Dave Jiang <dave.jiang@intel.com> | 2017-02-24 17:56:41 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-02-24 20:46:54 -0500 |
commit | 11bac80004499ea59f361ef2a5516c84b6eab675 (patch) | |
tree | b971df98b3fa9d4e62b8f4f7b5ec950181df4daa /sound | |
parent | 374ad05ab64d696303cec5cc8ec3a65d457b7b1c (diff) |
mm, fs: reduce fault, page_mkwrite, and pfn_mkwrite to take only vmf
->fault(), ->page_mkwrite(), and ->pfn_mkwrite() calls do not need to
take a vma and vmf parameter when the vma already resides in vmf.
Remove the vma parameter to simplify things.
[arnd@arndb.de: fix ARM build]
Link: http://lkml.kernel.org/r/20170125223558.1451224-1-arnd@arndb.de
Link: http://lkml.kernel.org/r/148521301778.19116.10840599906674778980.stgit@djiang5-desk3.ch.intel.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Cc: Theodore Ts'o <tytso@mit.edu>
Cc: Darrick J. Wong <darrick.wong@oracle.com>
Cc: Matthew Wilcox <mawilcox@microsoft.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Jan Kara <jack@suse.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/core/pcm_native.c | 15 | ||||
-rw-r--r-- | sound/usb/usx2y/us122l.c | 5 | ||||
-rw-r--r-- | sound/usb/usx2y/usX2Yhwdep.c | 7 | ||||
-rw-r--r-- | sound/usb/usx2y/usx2yhwdeppcm.c | 5 |
4 files changed, 13 insertions, 19 deletions
diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c index 9d33c1e85c79..aec9c92250fd 100644 --- a/sound/core/pcm_native.c +++ b/sound/core/pcm_native.c | |||
@@ -3245,10 +3245,9 @@ static unsigned int snd_pcm_capture_poll(struct file *file, poll_table * wait) | |||
3245 | /* | 3245 | /* |
3246 | * mmap status record | 3246 | * mmap status record |
3247 | */ | 3247 | */ |
3248 | static int snd_pcm_mmap_status_fault(struct vm_area_struct *area, | 3248 | static int snd_pcm_mmap_status_fault(struct vm_fault *vmf) |
3249 | struct vm_fault *vmf) | ||
3250 | { | 3249 | { |
3251 | struct snd_pcm_substream *substream = area->vm_private_data; | 3250 | struct snd_pcm_substream *substream = vmf->vma->vm_private_data; |
3252 | struct snd_pcm_runtime *runtime; | 3251 | struct snd_pcm_runtime *runtime; |
3253 | 3252 | ||
3254 | if (substream == NULL) | 3253 | if (substream == NULL) |
@@ -3282,10 +3281,9 @@ static int snd_pcm_mmap_status(struct snd_pcm_substream *substream, struct file | |||
3282 | /* | 3281 | /* |
3283 | * mmap control record | 3282 | * mmap control record |
3284 | */ | 3283 | */ |
3285 | static int snd_pcm_mmap_control_fault(struct vm_area_struct *area, | 3284 | static int snd_pcm_mmap_control_fault(struct vm_fault *vmf) |
3286 | struct vm_fault *vmf) | ||
3287 | { | 3285 | { |
3288 | struct snd_pcm_substream *substream = area->vm_private_data; | 3286 | struct snd_pcm_substream *substream = vmf->vma->vm_private_data; |
3289 | struct snd_pcm_runtime *runtime; | 3287 | struct snd_pcm_runtime *runtime; |
3290 | 3288 | ||
3291 | if (substream == NULL) | 3289 | if (substream == NULL) |
@@ -3341,10 +3339,9 @@ snd_pcm_default_page_ops(struct snd_pcm_substream *substream, unsigned long ofs) | |||
3341 | /* | 3339 | /* |
3342 | * fault callback for mmapping a RAM page | 3340 | * fault callback for mmapping a RAM page |
3343 | */ | 3341 | */ |
3344 | static int snd_pcm_mmap_data_fault(struct vm_area_struct *area, | 3342 | static int snd_pcm_mmap_data_fault(struct vm_fault *vmf) |
3345 | struct vm_fault *vmf) | ||
3346 | { | 3343 | { |
3347 | struct snd_pcm_substream *substream = area->vm_private_data; | 3344 | struct snd_pcm_substream *substream = vmf->vma->vm_private_data; |
3348 | struct snd_pcm_runtime *runtime; | 3345 | struct snd_pcm_runtime *runtime; |
3349 | unsigned long offset; | 3346 | unsigned long offset; |
3350 | struct page * page; | 3347 | struct page * page; |
diff --git a/sound/usb/usx2y/us122l.c b/sound/usb/usx2y/us122l.c index cf5dc33f4a6d..cf45bf1f7ee0 100644 --- a/sound/usb/usx2y/us122l.c +++ b/sound/usb/usx2y/us122l.c | |||
@@ -137,13 +137,12 @@ static void usb_stream_hwdep_vm_open(struct vm_area_struct *area) | |||
137 | snd_printdd(KERN_DEBUG "%i\n", atomic_read(&us122l->mmap_count)); | 137 | snd_printdd(KERN_DEBUG "%i\n", atomic_read(&us122l->mmap_count)); |
138 | } | 138 | } |
139 | 139 | ||
140 | static int usb_stream_hwdep_vm_fault(struct vm_area_struct *area, | 140 | static int usb_stream_hwdep_vm_fault(struct vm_fault *vmf) |
141 | struct vm_fault *vmf) | ||
142 | { | 141 | { |
143 | unsigned long offset; | 142 | unsigned long offset; |
144 | struct page *page; | 143 | struct page *page; |
145 | void *vaddr; | 144 | void *vaddr; |
146 | struct us122l *us122l = area->vm_private_data; | 145 | struct us122l *us122l = vmf->vma->vm_private_data; |
147 | struct usb_stream *s; | 146 | struct usb_stream *s; |
148 | 147 | ||
149 | mutex_lock(&us122l->mutex); | 148 | mutex_lock(&us122l->mutex); |
diff --git a/sound/usb/usx2y/usX2Yhwdep.c b/sound/usb/usx2y/usX2Yhwdep.c index 0b34dbc8f302..605e1047c01d 100644 --- a/sound/usb/usx2y/usX2Yhwdep.c +++ b/sound/usb/usx2y/usX2Yhwdep.c | |||
@@ -31,19 +31,18 @@ | |||
31 | #include "usbusx2y.h" | 31 | #include "usbusx2y.h" |
32 | #include "usX2Yhwdep.h" | 32 | #include "usX2Yhwdep.h" |
33 | 33 | ||
34 | static int snd_us428ctls_vm_fault(struct vm_area_struct *area, | 34 | static int snd_us428ctls_vm_fault(struct vm_fault *vmf) |
35 | struct vm_fault *vmf) | ||
36 | { | 35 | { |
37 | unsigned long offset; | 36 | unsigned long offset; |
38 | struct page * page; | 37 | struct page * page; |
39 | void *vaddr; | 38 | void *vaddr; |
40 | 39 | ||
41 | snd_printdd("ENTER, start %lXh, pgoff %ld\n", | 40 | snd_printdd("ENTER, start %lXh, pgoff %ld\n", |
42 | area->vm_start, | 41 | vmf->vma->vm_start, |
43 | vmf->pgoff); | 42 | vmf->pgoff); |
44 | 43 | ||
45 | offset = vmf->pgoff << PAGE_SHIFT; | 44 | offset = vmf->pgoff << PAGE_SHIFT; |
46 | vaddr = (char*)((struct usX2Ydev *)area->vm_private_data)->us428ctls_sharedmem + offset; | 45 | vaddr = (char *)((struct usX2Ydev *)vmf->vma->vm_private_data)->us428ctls_sharedmem + offset; |
47 | page = virt_to_page(vaddr); | 46 | page = virt_to_page(vaddr); |
48 | get_page(page); | 47 | get_page(page); |
49 | vmf->page = page; | 48 | vmf->page = page; |
diff --git a/sound/usb/usx2y/usx2yhwdeppcm.c b/sound/usb/usx2y/usx2yhwdeppcm.c index 90766a92e7fd..f95164b91152 100644 --- a/sound/usb/usx2y/usx2yhwdeppcm.c +++ b/sound/usb/usx2y/usx2yhwdeppcm.c | |||
@@ -652,14 +652,13 @@ static void snd_usX2Y_hwdep_pcm_vm_close(struct vm_area_struct *area) | |||
652 | } | 652 | } |
653 | 653 | ||
654 | 654 | ||
655 | static int snd_usX2Y_hwdep_pcm_vm_fault(struct vm_area_struct *area, | 655 | static int snd_usX2Y_hwdep_pcm_vm_fault(struct vm_fault *vmf) |
656 | struct vm_fault *vmf) | ||
657 | { | 656 | { |
658 | unsigned long offset; | 657 | unsigned long offset; |
659 | void *vaddr; | 658 | void *vaddr; |
660 | 659 | ||
661 | offset = vmf->pgoff << PAGE_SHIFT; | 660 | offset = vmf->pgoff << PAGE_SHIFT; |
662 | vaddr = (char*)((struct usX2Ydev *)area->vm_private_data)->hwdep_pcm_shm + offset; | 661 | vaddr = (char *)((struct usX2Ydev *)vmf->vma->vm_private_data)->hwdep_pcm_shm + offset; |
663 | vmf->page = virt_to_page(vaddr); | 662 | vmf->page = virt_to_page(vaddr); |
664 | get_page(vmf->page); | 663 | get_page(vmf->page); |
665 | return 0; | 664 | return 0; |