The only slightly tricky merge conflict was the netdevsim because the mutex locking fix overlapped a lot of driver reload reorganization. The rest were (relatively) trivial in nature.
Showing the changes to tools/include/uapi/linux (2 of 623 files). Show all
Unified · Split
| @@ -999,6 +999,7 @@ struct kvm_ppc_resize_hpt { · 998 unmodified lines | |||
| 999 | #define KVM_CAP_ARM_PTRAUTH_GENERIC 172 | 999 | #define KVM_CAP_ARM_PTRAUTH_GENERIC 172 |
| 1000 | #define KVM_CAP_PMU_EVENT_FILTER 173 | 1000 | #define KVM_CAP_PMU_EVENT_FILTER 173 |
| 1001 | #define KVM_CAP_ARM_IRQ_LINE_LAYOUT_2 174 | 1001 | #define KVM_CAP_ARM_IRQ_LINE_LAYOUT_2 174 |
| 1002 | #define KVM_CAP_HYPERV_DIRECT_TLBFLUSH 175 | ||
| 1002 | 1003 | ||
| 1003 | #ifdef KVM_CAP_IRQ_ROUTING | 1004 | #ifdef KVM_CAP_IRQ_ROUTING |
| 1004 | 1005 | ||
| @@ -1145,6 +1146,7 @@ struct kvm_dirty_tlb { · 140 unmodified lines | |||
| 1145 | #define KVM_REG_S390 0x5000000000000000ULL | 1146 | #define KVM_REG_S390 0x5000000000000000ULL |
| 1146 | #define KVM_REG_ARM64 0x6000000000000000ULL | 1147 | #define KVM_REG_ARM64 0x6000000000000000ULL |
| 1147 | #define KVM_REG_MIPS 0x7000000000000000ULL | 1148 | #define KVM_REG_MIPS 0x7000000000000000ULL |
| 1149 | #define KVM_REG_RISCV 0x8000000000000000ULL | ||
| 1148 | 1150 | ||
| 1149 | #define KVM_REG_SIZE_SHIFT 52 | 1151 | #define KVM_REG_SIZE_SHIFT 52 |
| 1150 | #define KVM_REG_SIZE_MASK 0x00f0000000000000ULL | 1152 | #define KVM_REG_SIZE_MASK 0x00f0000000000000ULL |
| @@ -33,8 +33,31 @@ · 32 unmodified lines | |||
| 33 | #define CLONE_NEWNET 0x40000000 /* New network namespace */ | 33 | #define CLONE_NEWNET 0x40000000 /* New network namespace */ |
| 34 | #define CLONE_IO 0x80000000 /* Clone io context */ | 34 | #define CLONE_IO 0x80000000 /* Clone io context */ |
| 35 | 35 | ||
| 36 | /* | 36 | #ifndef __ASSEMBLY__ |
| 37 | * Arguments for the clone3 syscall | 37 | /** |
| 38 | * struct clone_args - arguments for the clone3 syscall | ||
| 39 | * @flags: Flags for the new process as listed above. | ||
| 40 | * All flags are valid except for CSIGNAL and | ||
| 41 | * CLONE_DETACHED. | ||
| 42 | * @pidfd: If CLONE_PIDFD is set, a pidfd will be | ||
| 43 | * returned in this argument. | ||
| 44 | * @child_tid: If CLONE_CHILD_SETTID is set, the TID of the | ||
| 45 | * child process will be returned in the child's | ||
| 46 | * memory. | ||
| 47 | * @parent_tid: If CLONE_PARENT_SETTID is set, the TID of | ||
| 48 | * the child process will be returned in the | ||
| 49 | * parent's memory. | ||
| 50 | * @exit_signal: The exit_signal the parent process will be | ||
| 51 | * sent when the child exits. | ||
| 52 | * @stack: Specify the location of the stack for the | ||
| 53 | * child process. | ||
| 54 | * @stack_size: The size of the stack for the child process. | ||
| 55 | * @tls: If CLONE_SETTLS is set, the tls descriptor | ||
| 56 | * is set to tls. | ||
| 57 | * | ||
| 58 | * The structure is versioned by size and thus extensible. | ||
| 59 | * New struct members must go at the end of the struct and | ||
| 60 | * must be properly 64bit aligned. | ||
| 38 | */ | 61 | */ |
| 39 | struct clone_args { | 62 | struct clone_args { |
| 40 | __aligned_u64 flags; | 63 | __aligned_u64 flags; |
| @@ -46,6 +69,9 @@ struct clone_args { · 5 unmodified lines | |||
| 46 | __aligned_u64 stack_size; | 69 | __aligned_u64 stack_size; |
| 47 | __aligned_u64 tls; | 70 | __aligned_u64 tls; |
| 48 | }; | 71 | }; |
| 72 | #endif | ||
| 73 | |||
| 74 | #define CLONE_ARGS_SIZE_VER0 64 /* sizeof first published struct */ | ||
| 49 | 75 | ||
| 50 | /* | 76 | /* |
| 51 | * Scheduling policies | 77 | * Scheduling policies |