diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-12-14 20:25:18 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-12-14 20:25:18 -0500 |
| commit | a57cb1c1d7974c62a5c80f7869e35b492ace12cd (patch) | |
| tree | 5a42ee9a668f171143464bc86013954c1bbe94ad /arch/sh/kernel | |
| parent | cf1b3341afab9d3ad02a76b3a619ea027dcf4e28 (diff) | |
| parent | e1e14ab8411df344a17687821f8f78f0a1e73cbb (diff) | |
Merge branch 'akpm' (patches from Andrew)
Merge more updates from Andrew Morton:
- a few misc things
- kexec updates
- DMA-mapping updates to better support networking DMA operations
- IPC updates
- various MM changes to improve DAX fault handling
- lots of radix-tree changes, mainly to the test suite. All leading up
to reimplementing the IDA/IDR code to be a wrapper layer over the
radix-tree. However the final trigger-pulling patch is held off for
4.11.
* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (114 commits)
radix tree test suite: delete unused rcupdate.c
radix tree test suite: add new tag check
radix-tree: ensure counts are initialised
radix tree test suite: cache recently freed objects
radix tree test suite: add some more functionality
idr: reduce the number of bits per level from 8 to 6
rxrpc: abstract away knowledge of IDR internals
tpm: use idr_find(), not idr_find_slowpath()
idr: add ida_is_empty
radix tree test suite: check multiorder iteration
radix-tree: fix replacement for multiorder entries
radix-tree: add radix_tree_split_preload()
radix-tree: add radix_tree_split
radix-tree: add radix_tree_join
radix-tree: delete radix_tree_range_tag_if_tagged()
radix-tree: delete radix_tree_locate_item()
radix-tree: improve multiorder iterators
btrfs: fix race in btrfs_free_dummy_fs_info()
radix-tree: improve dump output
radix-tree: make radix_tree_find_next_bit more useful
...
Diffstat (limited to 'arch/sh/kernel')
| -rw-r--r-- | arch/sh/kernel/dma-nommu.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/sh/kernel/dma-nommu.c b/arch/sh/kernel/dma-nommu.c index eadb669a7329..47fee3b6e29c 100644 --- a/arch/sh/kernel/dma-nommu.c +++ b/arch/sh/kernel/dma-nommu.c | |||
| @@ -18,7 +18,9 @@ static dma_addr_t nommu_map_page(struct device *dev, struct page *page, | |||
| 18 | dma_addr_t addr = page_to_phys(page) + offset; | 18 | dma_addr_t addr = page_to_phys(page) + offset; |
| 19 | 19 | ||
| 20 | WARN_ON(size == 0); | 20 | WARN_ON(size == 0); |
| 21 | dma_cache_sync(dev, page_address(page) + offset, size, dir); | 21 | |
| 22 | if (!(attrs & DMA_ATTR_SKIP_CPU_SYNC)) | ||
| 23 | dma_cache_sync(dev, page_address(page) + offset, size, dir); | ||
| 22 | 24 | ||
| 23 | return addr; | 25 | return addr; |
| 24 | } | 26 | } |
| @@ -35,7 +37,8 @@ static int nommu_map_sg(struct device *dev, struct scatterlist *sg, | |||
| 35 | for_each_sg(sg, s, nents, i) { | 37 | for_each_sg(sg, s, nents, i) { |
| 36 | BUG_ON(!sg_page(s)); | 38 | BUG_ON(!sg_page(s)); |
| 37 | 39 | ||
| 38 | dma_cache_sync(dev, sg_virt(s), s->length, dir); | 40 | if (!(attrs & DMA_ATTR_SKIP_CPU_SYNC)) |
| 41 | dma_cache_sync(dev, sg_virt(s), s->length, dir); | ||
| 39 | 42 | ||
| 40 | s->dma_address = sg_phys(s); | 43 | s->dma_address = sg_phys(s); |
| 41 | s->dma_length = s->length; | 44 | s->dma_length = s->length; |
