diff options
| author | Ingo Molnar <mingo@kernel.org> | 2018-05-16 11:56:43 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2018-05-16 11:56:43 -0400 |
| commit | 5aafae8d097e2161ee5c6a12ad532100f8885d2b (patch) | |
| tree | 6ac544e378616c0522a0162d5ed1d42bab7efe81 /lib | |
| parent | eaeb1f4d892936133c5f8d3aafb36b7f384fe59c (diff) | |
| parent | 7a36a287de9fbb1ba906e70573d3f2315f7fd609 (diff) | |
Merge tag 'perf-core-for-mingo-4.18-20180516' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
- Add '-e intel_pt//u' test to the 'parse-events' 'perf test' entry,
to help avoiding regressions in the events parser such as one
that caused a revert in v4.17-rc (Arnaldo Carvalho de Melo)
- Fix NULL return handling in bpf__prepare_load() (YueHaibing)
- Warn about 'perf buildid-cache --purge-all' failures (Ravi Bangoria)
- Add infrastructure to help in writing eBPF C programs to be used
with '-e name.c' type events in tools such as 'record' and 'trace',
with headers for common constructs and an examples directory that
will get populated as we add more such helpers and the 'perf bpf'
branch that Jiri Olsa has been working on (Arnaldo Carvalho de Melo)
- Handle uncore event aliases in small groups properly (Kan Liang)
- Use the "_stest" symbol to identify the kernel map when loading kcore (Adrian Hunter)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/find_bit_benchmark.c | 7 | ||||
| -rw-r--r-- | lib/swiotlb.c | 4 |
2 files changed, 8 insertions, 3 deletions
diff --git a/lib/find_bit_benchmark.c b/lib/find_bit_benchmark.c index 5985a25e6cbc..5367ffa5c18f 100644 --- a/lib/find_bit_benchmark.c +++ b/lib/find_bit_benchmark.c | |||
| @@ -132,7 +132,12 @@ static int __init find_bit_test(void) | |||
| 132 | test_find_next_bit(bitmap, BITMAP_LEN); | 132 | test_find_next_bit(bitmap, BITMAP_LEN); |
| 133 | test_find_next_zero_bit(bitmap, BITMAP_LEN); | 133 | test_find_next_zero_bit(bitmap, BITMAP_LEN); |
| 134 | test_find_last_bit(bitmap, BITMAP_LEN); | 134 | test_find_last_bit(bitmap, BITMAP_LEN); |
| 135 | test_find_first_bit(bitmap, BITMAP_LEN); | 135 | |
| 136 | /* | ||
| 137 | * test_find_first_bit() may take some time, so | ||
| 138 | * traverse only part of bitmap to avoid soft lockup. | ||
| 139 | */ | ||
| 140 | test_find_first_bit(bitmap, BITMAP_LEN / 10); | ||
| 136 | test_find_next_and_bit(bitmap, bitmap2, BITMAP_LEN); | 141 | test_find_next_and_bit(bitmap, bitmap2, BITMAP_LEN); |
| 137 | 142 | ||
| 138 | pr_err("\nStart testing find_bit() with sparse bitmap\n"); | 143 | pr_err("\nStart testing find_bit() with sparse bitmap\n"); |
diff --git a/lib/swiotlb.c b/lib/swiotlb.c index fece57566d45..cc640588f145 100644 --- a/lib/swiotlb.c +++ b/lib/swiotlb.c | |||
| @@ -714,7 +714,7 @@ swiotlb_alloc_buffer(struct device *dev, size_t size, dma_addr_t *dma_handle, | |||
| 714 | 714 | ||
| 715 | phys_addr = swiotlb_tbl_map_single(dev, | 715 | phys_addr = swiotlb_tbl_map_single(dev, |
| 716 | __phys_to_dma(dev, io_tlb_start), | 716 | __phys_to_dma(dev, io_tlb_start), |
| 717 | 0, size, DMA_FROM_DEVICE, 0); | 717 | 0, size, DMA_FROM_DEVICE, attrs); |
| 718 | if (phys_addr == SWIOTLB_MAP_ERROR) | 718 | if (phys_addr == SWIOTLB_MAP_ERROR) |
| 719 | goto out_warn; | 719 | goto out_warn; |
| 720 | 720 | ||
| @@ -737,7 +737,7 @@ out_unmap: | |||
| 737 | swiotlb_tbl_unmap_single(dev, phys_addr, size, DMA_TO_DEVICE, | 737 | swiotlb_tbl_unmap_single(dev, phys_addr, size, DMA_TO_DEVICE, |
| 738 | DMA_ATTR_SKIP_CPU_SYNC); | 738 | DMA_ATTR_SKIP_CPU_SYNC); |
| 739 | out_warn: | 739 | out_warn: |
| 740 | if ((attrs & DMA_ATTR_NO_WARN) && printk_ratelimit()) { | 740 | if (!(attrs & DMA_ATTR_NO_WARN) && printk_ratelimit()) { |
| 741 | dev_warn(dev, | 741 | dev_warn(dev, |
| 742 | "swiotlb: coherent allocation failed, size=%zu\n", | 742 | "swiotlb: coherent allocation failed, size=%zu\n", |
| 743 | size); | 743 | size); |
