Showing the changes to include/linux (5 of 195 files). Show all
Unified · Split
| @@ -65,5 +65,6 @@ extern void can_rx_unregister(struct net *net, struct net_device *dev, · 64 unmodified lines | |||
| 65 | void *data); | 65 | void *data); |
| 66 | 66 | ||
| 67 | extern int can_send(struct sk_buff *skb, int loop); | 67 | extern int can_send(struct sk_buff *skb, int loop); |
| 68 | void can_sock_destruct(struct sock *sk); | ||
| 68 | 69 | ||
| 69 | #endif /* !_CAN_CORE_H */ | 70 | #endif /* !_CAN_CORE_H */ |
| @@ -59,6 +59,11 @@ extern ssize_t cpu_show_l1tf(struct device *dev, · 58 unmodified lines | |||
| 59 | struct device_attribute *attr, char *buf); | 59 | struct device_attribute *attr, char *buf); |
| 60 | extern ssize_t cpu_show_mds(struct device *dev, | 60 | extern ssize_t cpu_show_mds(struct device *dev, |
| 61 | struct device_attribute *attr, char *buf); | 61 | struct device_attribute *attr, char *buf); |
| 62 | extern ssize_t cpu_show_tsx_async_abort(struct device *dev, | ||
| 63 | struct device_attribute *attr, | ||
| 64 | char *buf); | ||
| 65 | extern ssize_t cpu_show_itlb_multihit(struct device *dev, | ||
| 66 | struct device_attribute *attr, char *buf); | ||
| 62 | 67 | ||
| 63 | extern __printf(4, 5) | 68 | extern __printf(4, 5) |
| 64 | struct device *cpu_device_create(struct device *parent, void *drvdata, | 69 | struct device *cpu_device_create(struct device *parent, void *drvdata, |
| @@ -213,28 +218,7 @@ static inline int cpuhp_smt_enable(void) { return 0; } · 148 unmodified lines | |||
| 213 | static inline int cpuhp_smt_disable(enum cpuhp_smt_control ctrlval) { return 0; } | 218 | static inline int cpuhp_smt_disable(enum cpuhp_smt_control ctrlval) { return 0; } |
| 214 | #endif | 219 | #endif |
| 215 | 220 | ||
| 216 | /* | 221 | extern bool cpu_mitigations_off(void); |
| 217 | * These are used for a global "mitigations=" cmdline option for toggling | 222 | extern bool cpu_mitigations_auto_nosmt(void); |
| 218 | * optional CPU mitigations. | ||
| 219 | */ | ||
| 220 | enum cpu_mitigations { | ||
| 221 | CPU_MITIGATIONS_OFF, | ||
| 222 | CPU_MITIGATIONS_AUTO, | ||
| 223 | CPU_MITIGATIONS_AUTO_NOSMT, | ||
| 224 | }; | ||
| 225 | |||
| 226 | extern enum cpu_mitigations cpu_mitigations; | ||
| 227 | |||
| 228 | /* mitigations=off */ | ||
| 229 | static inline bool cpu_mitigations_off(void) | ||
| 230 | { | ||
| 231 | return cpu_mitigations == CPU_MITIGATIONS_OFF; | ||
| 232 | } | ||
| 233 | |||
| 234 | /* mitigations=auto,nosmt */ | ||
| 235 | static inline bool cpu_mitigations_auto_nosmt(void) | ||
| 236 | { | ||
| 237 | return cpu_mitigations == CPU_MITIGATIONS_AUTO_NOSMT; | ||
| 238 | } | ||
| 239 | 223 | ||
| 240 | #endif /* _LINUX_CPU_H_ */ | 224 | #endif /* _LINUX_CPU_H_ */ |
| @@ -336,7 +336,8 @@ enum { · 335 unmodified lines | |||
| 336 | #define QI_DEV_IOTLB_SID(sid) ((u64)((sid) & 0xffff) << 32) | 336 | #define QI_DEV_IOTLB_SID(sid) ((u64)((sid) & 0xffff) << 32) |
| 337 | #define QI_DEV_IOTLB_QDEP(qdep) (((qdep) & 0x1f) << 16) | 337 | #define QI_DEV_IOTLB_QDEP(qdep) (((qdep) & 0x1f) << 16) |
| 338 | #define QI_DEV_IOTLB_ADDR(addr) ((u64)(addr) & VTD_PAGE_MASK) | 338 | #define QI_DEV_IOTLB_ADDR(addr) ((u64)(addr) & VTD_PAGE_MASK) |
| 339 | #define QI_DEV_IOTLB_PFSID(pfsid) (((u64)(pfsid & 0xf) << 12) | ((u64)(pfsid & 0xfff) << 52)) | 339 | #define QI_DEV_IOTLB_PFSID(pfsid) (((u64)(pfsid & 0xf) << 12) | \ |
| 340 | ((u64)((pfsid >> 4) & 0xfff) << 52)) | ||
| 340 | #define QI_DEV_IOTLB_SIZE 1 | 341 | #define QI_DEV_IOTLB_SIZE 1 |
| 341 | #define QI_DEV_IOTLB_MAX_INVS 32 | 342 | #define QI_DEV_IOTLB_MAX_INVS 32 |
| 342 | 343 | ||
| @@ -360,7 +361,8 @@ enum { · 17 unmodified lines | |||
| 360 | #define QI_DEV_EIOTLB_PASID(p) (((u64)p) << 32) | 361 | #define QI_DEV_EIOTLB_PASID(p) (((u64)p) << 32) |
| 361 | #define QI_DEV_EIOTLB_SID(sid) ((u64)((sid) & 0xffff) << 16) | 362 | #define QI_DEV_EIOTLB_SID(sid) ((u64)((sid) & 0xffff) << 16) |
| 362 | #define QI_DEV_EIOTLB_QDEP(qd) ((u64)((qd) & 0x1f) << 4) | 363 | #define QI_DEV_EIOTLB_QDEP(qd) ((u64)((qd) & 0x1f) << 4) |
| 363 | #define QI_DEV_EIOTLB_PFSID(pfsid) (((u64)(pfsid & 0xf) << 12) | ((u64)(pfsid & 0xfff) << 52)) | 364 | #define QI_DEV_EIOTLB_PFSID(pfsid) (((u64)(pfsid & 0xf) << 12) | \ |
| 365 | ((u64)((pfsid >> 4) & 0xfff) << 52)) | ||
| 364 | #define QI_DEV_EIOTLB_MAX_INVS 32 | 366 | #define QI_DEV_EIOTLB_MAX_INVS 32 |
| 365 | 367 | ||
| 366 | /* Page group response descriptor QW0 */ | 368 | /* Page group response descriptor QW0 */ |
| @@ -966,6 +966,7 @@ int kvm_cpu_has_pending_timer(struct kvm_vcpu *vcpu); · 965 unmodified lines | |||
| 966 | void kvm_vcpu_kick(struct kvm_vcpu *vcpu); | 966 | void kvm_vcpu_kick(struct kvm_vcpu *vcpu); |
| 967 | 967 | ||
| 968 | bool kvm_is_reserved_pfn(kvm_pfn_t pfn); | 968 | bool kvm_is_reserved_pfn(kvm_pfn_t pfn); |
| 969 | bool kvm_is_zone_device_pfn(kvm_pfn_t pfn); | ||
| 969 | 970 | ||
| 970 | struct kvm_irq_ack_notifier { | 971 | struct kvm_irq_ack_notifier { |
| 971 | struct hlist_node link; | 972 | struct hlist_node link; |
| @@ -1382,4 +1383,10 @@ static inline int kvm_arch_vcpu_run_pid_change(struct kvm_vcpu *vcpu) · 410 unmodified lines | |||
| 1382 | } | 1383 | } |
| 1383 | #endif /* CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE */ | 1384 | #endif /* CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE */ |
| 1384 | 1385 | ||
| 1386 | typedef int (*kvm_vm_thread_fn_t)(struct kvm *kvm, uintptr_t data); | ||
| 1387 | |||
| 1388 | int kvm_vm_create_worker_thread(struct kvm *kvm, kvm_vm_thread_fn_t thread_fn, | ||
| 1389 | uintptr_t data, const char *name, | ||
| 1390 | struct task_struct **thread_ptr); | ||
| 1391 | |||
| 1385 | #endif | 1392 | #endif |
| @@ -119,6 +119,7 @@ extern struct memory_block *find_memory_block(struct mem_section *); · 118 unmodified lines | |||
| 119 | typedef int (*walk_memory_blocks_func_t)(struct memory_block *, void *); | 119 | typedef int (*walk_memory_blocks_func_t)(struct memory_block *, void *); |
| 120 | extern int walk_memory_blocks(unsigned long start, unsigned long size, | 120 | extern int walk_memory_blocks(unsigned long start, unsigned long size, |
| 121 | void *arg, walk_memory_blocks_func_t func); | 121 | void *arg, walk_memory_blocks_func_t func); |
| 122 | extern int for_each_memory_block(void *arg, walk_memory_blocks_func_t func); | ||
| 122 | #define CONFIG_MEM_BLOCK_SIZE (PAGES_PER_SECTION<<PAGE_SHIFT) | 123 | #define CONFIG_MEM_BLOCK_SIZE (PAGES_PER_SECTION<<PAGE_SHIFT) |
| 123 | #endif /* CONFIG_MEMORY_HOTPLUG_SPARSE */ | 124 | #endif /* CONFIG_MEMORY_HOTPLUG_SPARSE */ |
| 124 | 125 | ||