Pull powerpc updates from Michael Ellerman: - support "hybrid" iommu/direct DMA ops for coherent_mask < dma_mask from Benjamin Herrenschmidt - EEH fixes for SRIOV from Gavin - introduce rtas_get_sensor_fast() for IRQ handlers from Thomas Huth - use hardware RNG for arch_get_random_seed_* not arch_get_random_* from Paul Mackerras - seccomp filter support from Michael Ellerman - opal_cec_reboot2() handling for HMIs & machine checks from Mahesh Salgaonkar - add powerpc timebase as a trace clock source from Naveen N. Rao - misc cleanups in the xmon, signal & SLB code from Anshuman Khandual - add an inline function to update POWER8 HID0 from Gautham R. Shenoy - fix pte_pagesize_index() crash on 4K w/64K hash from Michael Ellerman - drop support for 64K local store on 4K kernels from Michael Ellerman - move dma_get_required_mask() from pnv_phb to pci_controller_ops from Andrew Donnellan - initialize distance lookup table from drconf path from Nikunj A Dadhania - enable RTC class support from Vaibhav Jain - disable automatically blocked PCI config from Gavin Shan - add LEDs driver for PowerNV platform from Vasant Hegde - fix endianness issues in the HVSI driver from Laurent Dufour - kexec endian fixes from Samuel Mendoza-Jonas - fix corrupted pdn list from Gavin Shan - fix fenced PHB caused by eeh_slot_error_detail() from Gavin Shan - Freescale updates from Scott: Highlights include 32-bit memcpy/memset optimizations, checksum optimizations, 85xx config fragments and updates, device tree updates, e6500 fixes for non-SMP, and misc cleanup and minor fixes. - a ton of cxl updates & fixes: - add explicit precision specifiers from Rasmus Villemoes - use more common format specifier from Rasmus Villemoes - destroy cxl_adapter_idr on module_exit from Johannes Thumshirn - destroy afu->contexts_idr on release of an afu from Johannes Thumshirn - compile with -Werror from Daniel Axtens - EEH support from Daniel Axtens - plug irq_bitmap getting leaked in cxl_context from Vaibhav Jain - add alternate MMIO error handling from Ian Munsie - allow release of contexts which have been OPENED but not STARTED from Andrew Donnellan - remove use of macro DEFINE_PCI_DEVICE_TABLE from Vaishali Thakkar - release irqs if memory allocation fails from Vaibhav Jain - remove racy attempt to force EEH invocation in reset from Daniel Axtens - fix + cleanup error paths in cxl_dev_context_init from Ian Munsie - fix force unmapping mmaps of contexts allocated through the kernel api from Ian Munsie - set up and enable PSL Timebase from Philippe Bergheaud * tag 'powerpc-4.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (140 commits) cxl: Set up and enable PSL Timebase cxl: Fix force unmapping mmaps of contexts allocated through the kernel api cxl: Fix + cleanup error paths in cxl_dev_context_init powerpc/eeh: Fix fenced PHB caused by eeh_slot_error_detail() powerpc/pseries: Cleanup on pci_dn_reconfig_notifier() powerpc/pseries: Fix corrupted pdn list powerpc/powernv: Enable LEDS support powerpc/iommu: Set default DMA offset in dma_dev_setup cxl: Remove racy attempt to force EEH invocation in reset cxl: Release irqs if memory allocation fails cxl: Remove use of macro DEFINE_PCI_DEVICE_TABLE powerpc/powernv: Fix mis-merge of OPAL support for LEDS driver powerpc/powernv: Reset HILE before kexec_sequence() powerpc/kexec: Reset secondary cpu endianness before kexec powerpc/hvsi: Fix endianness issues in the HVSI driver leds/powernv: Add driver for PowerNV platform powerpc/powernv: Create LED platform device powerpc/powernv: Add OPAL interfaces for accessing and modifying system LED states powerpc/powernv: Fix the log message when disabling VF cxl: Allow release of contexts which have been OPENED but not STARTED ...
Showing the changes to tools/testing (2 of 146 files). Show all
Unified · Split
| @@ -2,8 +2,9 @@ noarg: · 1 unmodified line | |||
| 2 | $(MAKE) -C ../ | 2 | $(MAKE) -C ../ |
| 3 | 3 | ||
| 4 | TEST_PROGS := hugetlb_vs_thp_test subpage_prot | 4 | TEST_PROGS := hugetlb_vs_thp_test subpage_prot |
| 5 | TEST_FILES := tempfile | ||
| 5 | 6 | ||
| 6 | all: $(TEST_PROGS) tempfile | 7 | all: $(TEST_PROGS) $(TEST_FILES) |
| 7 | 8 | ||
| 8 | $(TEST_PROGS): ../harness.c | 9 | $(TEST_PROGS): ../harness.c |
| 9 | 10 | ||
| @@ -14,6 +14,7 @@ · 13 unmodified lines | |||
| 14 | #include <linux/filter.h> | 14 | #include <linux/filter.h> |
| 15 | #include <sys/prctl.h> | 15 | #include <sys/prctl.h> |
| 16 | #include <sys/ptrace.h> | 16 | #include <sys/ptrace.h> |
| 17 | #include <sys/types.h> | ||
| 17 | #include <sys/user.h> | 18 | #include <sys/user.h> |
| 18 | #include <linux/prctl.h> | 19 | #include <linux/prctl.h> |
| 19 | #include <linux/ptrace.h> | 20 | #include <linux/ptrace.h> |
| @@ -82,7 +83,13 @@ struct seccomp_data { · 62 unmodified lines | |||
| 82 | }; | 83 | }; |
| 83 | #endif | 84 | #endif |
| 84 | 85 | ||
| 86 | #if __BYTE_ORDER == __LITTLE_ENDIAN | ||
| 85 | #define syscall_arg(_n) (offsetof(struct seccomp_data, args[_n])) | 87 | #define syscall_arg(_n) (offsetof(struct seccomp_data, args[_n])) |
| 88 | #elif __BYTE_ORDER == __BIG_ENDIAN | ||
| 89 | #define syscall_arg(_n) (offsetof(struct seccomp_data, args[_n]) + sizeof(__u32)) | ||
| 90 | #else | ||
| 91 | #error "wut? Unknown __BYTE_ORDER?!" | ||
| 92 | #endif | ||
| 86 | 93 | ||
| 87 | #define SIBLING_EXIT_UNKILLED 0xbadbeef | 94 | #define SIBLING_EXIT_UNKILLED 0xbadbeef |
| 88 | #define SIBLING_EXIT_FAILURE 0xbadface | 95 | #define SIBLING_EXIT_FAILURE 0xbadface |
| @@ -1199,6 +1206,10 @@ TEST_F(TRACE_poke, getpid_runs_normally) · 1110 unmodified lines | |||
| 1199 | # define ARCH_REGS struct user_pt_regs | 1206 | # define ARCH_REGS struct user_pt_regs |
| 1200 | # define SYSCALL_NUM regs[8] | 1207 | # define SYSCALL_NUM regs[8] |
| 1201 | # define SYSCALL_RET regs[0] | 1208 | # define SYSCALL_RET regs[0] |
| 1209 | #elif defined(__powerpc__) | ||
| 1210 | # define ARCH_REGS struct pt_regs | ||
| 1211 | # define SYSCALL_NUM gpr[0] | ||
| 1212 | # define SYSCALL_RET gpr[3] | ||
| 1202 | #else | 1213 | #else |
| 1203 | # error "Do not know how to find your architecture's registers and syscalls" | 1214 | # error "Do not know how to find your architecture's registers and syscalls" |
| 1204 | #endif | 1215 | #endif |
| @@ -1232,7 +1243,7 @@ void change_syscall(struct __test_metadata *_metadata, · 27 unmodified lines | |||
| 1232 | ret = ptrace(PTRACE_GETREGSET, tracee, NT_PRSTATUS, &iov); | 1243 | ret = ptrace(PTRACE_GETREGSET, tracee, NT_PRSTATUS, &iov); |
| 1233 | EXPECT_EQ(0, ret); | 1244 | EXPECT_EQ(0, ret); |
| 1234 | 1245 | ||
| 1235 | #if defined(__x86_64__) || defined(__i386__) || defined(__aarch64__) | 1246 | #if defined(__x86_64__) || defined(__i386__) || defined(__aarch64__) || defined(__powerpc__) |
| 1236 | { | 1247 | { |
| 1237 | regs.SYSCALL_NUM = syscall; | 1248 | regs.SYSCALL_NUM = syscall; |
| 1238 | } | 1249 | } |
| @@ -1396,6 +1407,8 @@ TEST_F(TRACE_syscall, syscall_dropped) · 157 unmodified lines | |||
| 1396 | # define __NR_seccomp 383 | 1407 | # define __NR_seccomp 383 |
| 1397 | # elif defined(__aarch64__) | 1408 | # elif defined(__aarch64__) |
| 1398 | # define __NR_seccomp 277 | 1409 | # define __NR_seccomp 277 |
| 1410 | # elif defined(__powerpc__) | ||
| 1411 | # define __NR_seccomp 358 | ||
| 1399 | # else | 1412 | # else |
| 1400 | # warning "seccomp syscall number unknown for this architecture" | 1413 | # warning "seccomp syscall number unknown for this architecture" |
| 1401 | # define __NR_seccomp 0xffff | 1414 | # define __NR_seccomp 0xffff |