diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-08-18 23:40:33 -0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-08-18 23:40:33 -0400 |
| commit | 5bc0b123dcb2bb65b0b1ec57e591459dcf583d3d (patch) | |
| tree | 6ee79d18fd716755d49d18c465c1b25fabc43597 /include/linux | |
| parent | eefbc594abbb1b7e6e7eeadb65ae7c7538474210 (diff) | |
| parent | b36f4be3de1b123d8601de062e7dbfc904f305fb (diff) | |
Merge 3.11-rc6 into char-misc-next
We want these fixes in this tree.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/firewire.h | 1 | ||||
| -rw-r--r-- | include/linux/ftrace_event.h | 12 | ||||
| -rw-r--r-- | include/linux/iio/trigger.h | 3 | ||||
| -rw-r--r-- | include/linux/kernel.h | 2 | ||||
| -rw-r--r-- | include/linux/mfd/ti_am335x_tscadc.h | 16 | ||||
| -rw-r--r-- | include/linux/mlx5/device.h | 42 | ||||
| -rw-r--r-- | include/linux/mlx5/driver.h | 11 | ||||
| -rw-r--r-- | include/linux/mod_devicetable.h | 5 | ||||
| -rw-r--r-- | include/linux/netdevice.h | 2 | ||||
| -rw-r--r-- | include/linux/regmap.h | 1 | ||||
| -rw-r--r-- | include/linux/sched.h | 8 | ||||
| -rw-r--r-- | include/linux/skbuff.h | 2 | ||||
| -rw-r--r-- | include/linux/spinlock.h | 14 | ||||
| -rw-r--r-- | include/linux/sunrpc/sched.h | 1 | ||||
| -rw-r--r-- | include/linux/swapops.h | 2 | ||||
| -rw-r--r-- | include/linux/syscalls.h | 5 | ||||
| -rw-r--r-- | include/linux/tick.h | 6 | ||||
| -rw-r--r-- | include/linux/user_namespace.h | 1 | ||||
| -rw-r--r-- | include/linux/vmpressure.h | 3 |
19 files changed, 98 insertions, 39 deletions
diff --git a/include/linux/firewire.h b/include/linux/firewire.h index 3b0e820375ab..5d7782e42b8f 100644 --- a/include/linux/firewire.h +++ b/include/linux/firewire.h | |||
| @@ -436,6 +436,7 @@ struct fw_iso_context { | |||
| 436 | int type; | 436 | int type; |
| 437 | int channel; | 437 | int channel; |
| 438 | int speed; | 438 | int speed; |
| 439 | bool drop_overflow_headers; | ||
| 439 | size_t header_size; | 440 | size_t header_size; |
| 440 | union { | 441 | union { |
| 441 | fw_iso_callback_t sc; | 442 | fw_iso_callback_t sc; |
diff --git a/include/linux/ftrace_event.h b/include/linux/ftrace_event.h index 4372658c73ae..120d57a1c3a5 100644 --- a/include/linux/ftrace_event.h +++ b/include/linux/ftrace_event.h | |||
| @@ -78,6 +78,11 @@ struct trace_iterator { | |||
| 78 | /* trace_seq for __print_flags() and __print_symbolic() etc. */ | 78 | /* trace_seq for __print_flags() and __print_symbolic() etc. */ |
| 79 | struct trace_seq tmp_seq; | 79 | struct trace_seq tmp_seq; |
| 80 | 80 | ||
| 81 | cpumask_var_t started; | ||
| 82 | |||
| 83 | /* it's true when current open file is snapshot */ | ||
| 84 | bool snapshot; | ||
| 85 | |||
| 81 | /* The below is zeroed out in pipe_read */ | 86 | /* The below is zeroed out in pipe_read */ |
| 82 | struct trace_seq seq; | 87 | struct trace_seq seq; |
| 83 | struct trace_entry *ent; | 88 | struct trace_entry *ent; |
| @@ -90,10 +95,7 @@ struct trace_iterator { | |||
| 90 | loff_t pos; | 95 | loff_t pos; |
| 91 | long idx; | 96 | long idx; |
| 92 | 97 | ||
| 93 | cpumask_var_t started; | 98 | /* All new field here will be zeroed out in pipe_read */ |
| 94 | |||
| 95 | /* it's true when current open file is snapshot */ | ||
| 96 | bool snapshot; | ||
| 97 | }; | 99 | }; |
| 98 | 100 | ||
| 99 | enum trace_iter_flags { | 101 | enum trace_iter_flags { |
| @@ -332,7 +334,7 @@ extern int trace_define_field(struct ftrace_event_call *call, const char *type, | |||
| 332 | const char *name, int offset, int size, | 334 | const char *name, int offset, int size, |
| 333 | int is_signed, int filter_type); | 335 | int is_signed, int filter_type); |
| 334 | extern int trace_add_event_call(struct ftrace_event_call *call); | 336 | extern int trace_add_event_call(struct ftrace_event_call *call); |
| 335 | extern void trace_remove_event_call(struct ftrace_event_call *call); | 337 | extern int trace_remove_event_call(struct ftrace_event_call *call); |
| 336 | 338 | ||
| 337 | #define is_signed_type(type) (((type)(-1)) < (type)1) | 339 | #define is_signed_type(type) (((type)(-1)) < (type)1) |
| 338 | 340 | ||
diff --git a/include/linux/iio/trigger.h b/include/linux/iio/trigger.h index 3869c525b052..369cf2cd5144 100644 --- a/include/linux/iio/trigger.h +++ b/include/linux/iio/trigger.h | |||
| @@ -8,6 +8,7 @@ | |||
| 8 | */ | 8 | */ |
| 9 | #include <linux/irq.h> | 9 | #include <linux/irq.h> |
| 10 | #include <linux/module.h> | 10 | #include <linux/module.h> |
| 11 | #include <linux/atomic.h> | ||
| 11 | 12 | ||
| 12 | #ifndef _IIO_TRIGGER_H_ | 13 | #ifndef _IIO_TRIGGER_H_ |
| 13 | #define _IIO_TRIGGER_H_ | 14 | #define _IIO_TRIGGER_H_ |
| @@ -61,7 +62,7 @@ struct iio_trigger { | |||
| 61 | 62 | ||
| 62 | struct list_head list; | 63 | struct list_head list; |
| 63 | struct list_head alloc_list; | 64 | struct list_head alloc_list; |
| 64 | int use_count; | 65 | atomic_t use_count; |
| 65 | 66 | ||
| 66 | struct irq_chip subirq_chip; | 67 | struct irq_chip subirq_chip; |
| 67 | int subirq_base; | 68 | int subirq_base; |
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 3bef14c6586b..482ad2d84a32 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h | |||
| @@ -629,7 +629,7 @@ extern void ftrace_dump(enum ftrace_dump_mode oops_dump_mode); | |||
| 629 | static inline void tracing_start(void) { } | 629 | static inline void tracing_start(void) { } |
| 630 | static inline void tracing_stop(void) { } | 630 | static inline void tracing_stop(void) { } |
| 631 | static inline void ftrace_off_permanent(void) { } | 631 | static inline void ftrace_off_permanent(void) { } |
| 632 | static inline void trace_dump_stack(void) { } | 632 | static inline void trace_dump_stack(int skip) { } |
| 633 | 633 | ||
| 634 | static inline void tracing_on(void) { } | 634 | static inline void tracing_on(void) { } |
| 635 | static inline void tracing_off(void) { } | 635 | static inline void tracing_off(void) { } |
diff --git a/include/linux/mfd/ti_am335x_tscadc.h b/include/linux/mfd/ti_am335x_tscadc.h index 8d73fe29796a..db1791bb997a 100644 --- a/include/linux/mfd/ti_am335x_tscadc.h +++ b/include/linux/mfd/ti_am335x_tscadc.h | |||
| @@ -113,11 +113,27 @@ | |||
| 113 | #define CNTRLREG_8WIRE CNTRLREG_AFE_CTRL(3) | 113 | #define CNTRLREG_8WIRE CNTRLREG_AFE_CTRL(3) |
| 114 | #define CNTRLREG_TSCENB BIT(7) | 114 | #define CNTRLREG_TSCENB BIT(7) |
| 115 | 115 | ||
| 116 | /* FIFO READ Register */ | ||
| 117 | #define FIFOREAD_DATA_MASK (0xfff << 0) | ||
| 118 | #define FIFOREAD_CHNLID_MASK (0xf << 16) | ||
| 119 | |||
| 120 | /* Sequencer Status */ | ||
| 121 | #define SEQ_STATUS BIT(5) | ||
| 122 | |||
| 116 | #define ADC_CLK 3000000 | 123 | #define ADC_CLK 3000000 |
| 117 | #define MAX_CLK_DIV 7 | 124 | #define MAX_CLK_DIV 7 |
| 118 | #define TOTAL_STEPS 16 | 125 | #define TOTAL_STEPS 16 |
| 119 | #define TOTAL_CHANNELS 8 | 126 | #define TOTAL_CHANNELS 8 |
| 120 | 127 | ||
| 128 | /* | ||
| 129 | * ADC runs at 3MHz, and it takes | ||
| 130 | * 15 cycles to latch one data output. | ||
| 131 | * Hence the idle time for ADC to | ||
| 132 | * process one sample data would be | ||
| 133 | * around 5 micro seconds. | ||
| 134 | */ | ||
| 135 | #define IDLE_TIMEOUT 5 /* microsec */ | ||
| 136 | |||
| 121 | #define TSCADC_CELLS 2 | 137 | #define TSCADC_CELLS 2 |
| 122 | 138 | ||
| 123 | struct ti_tscadc_dev { | 139 | struct ti_tscadc_dev { |
diff --git a/include/linux/mlx5/device.h b/include/linux/mlx5/device.h index 8de8d8f22384..68029b30c3dc 100644 --- a/include/linux/mlx5/device.h +++ b/include/linux/mlx5/device.h | |||
| @@ -309,21 +309,20 @@ struct mlx5_hca_cap { | |||
| 309 | __be16 max_desc_sz_rq; | 309 | __be16 max_desc_sz_rq; |
| 310 | u8 rsvd21[2]; | 310 | u8 rsvd21[2]; |
| 311 | __be16 max_desc_sz_sq_dc; | 311 | __be16 max_desc_sz_sq_dc; |
| 312 | u8 rsvd22[4]; | 312 | __be32 max_qp_mcg; |
| 313 | __be16 max_qp_mcg; | 313 | u8 rsvd22[3]; |
| 314 | u8 rsvd23; | ||
| 315 | u8 log_max_mcg; | 314 | u8 log_max_mcg; |
| 316 | u8 rsvd24; | 315 | u8 rsvd23; |
| 317 | u8 log_max_pd; | 316 | u8 log_max_pd; |
| 318 | u8 rsvd25; | 317 | u8 rsvd24; |
| 319 | u8 log_max_xrcd; | 318 | u8 log_max_xrcd; |
| 320 | u8 rsvd26[42]; | 319 | u8 rsvd25[42]; |
| 321 | __be16 log_uar_page_sz; | 320 | __be16 log_uar_page_sz; |
| 322 | u8 rsvd27[28]; | 321 | u8 rsvd26[28]; |
| 323 | u8 log_msx_atomic_size_qp; | 322 | u8 log_msx_atomic_size_qp; |
| 324 | u8 rsvd28[2]; | 323 | u8 rsvd27[2]; |
| 325 | u8 log_msx_atomic_size_dc; | 324 | u8 log_msx_atomic_size_dc; |
| 326 | u8 rsvd29[76]; | 325 | u8 rsvd28[76]; |
| 327 | }; | 326 | }; |
| 328 | 327 | ||
| 329 | 328 | ||
| @@ -472,9 +471,8 @@ struct mlx5_eqe_cmd { | |||
| 472 | struct mlx5_eqe_page_req { | 471 | struct mlx5_eqe_page_req { |
| 473 | u8 rsvd0[2]; | 472 | u8 rsvd0[2]; |
| 474 | __be16 func_id; | 473 | __be16 func_id; |
| 475 | u8 rsvd1[2]; | 474 | __be32 num_pages; |
| 476 | __be16 num_pages; | 475 | __be32 rsvd1[5]; |
| 477 | __be32 rsvd2[5]; | ||
| 478 | }; | 476 | }; |
| 479 | 477 | ||
| 480 | union ev_data { | 478 | union ev_data { |
| @@ -690,6 +688,26 @@ struct mlx5_query_cq_mbox_out { | |||
| 690 | __be64 pas[0]; | 688 | __be64 pas[0]; |
| 691 | }; | 689 | }; |
| 692 | 690 | ||
| 691 | struct mlx5_enable_hca_mbox_in { | ||
| 692 | struct mlx5_inbox_hdr hdr; | ||
| 693 | u8 rsvd[8]; | ||
| 694 | }; | ||
| 695 | |||
| 696 | struct mlx5_enable_hca_mbox_out { | ||
| 697 | struct mlx5_outbox_hdr hdr; | ||
| 698 | u8 rsvd[8]; | ||
| 699 | }; | ||
| 700 | |||
| 701 | struct mlx5_disable_hca_mbox_in { | ||
| 702 | struct mlx5_inbox_hdr hdr; | ||
| 703 | u8 rsvd[8]; | ||
| 704 | }; | ||
| 705 | |||
| 706 | struct mlx5_disable_hca_mbox_out { | ||
| 707 | struct mlx5_outbox_hdr hdr; | ||
| 708 | u8 rsvd[8]; | ||
| 709 | }; | ||
| 710 | |||
| 693 | struct mlx5_eq_context { | 711 | struct mlx5_eq_context { |
| 694 | u8 status; | 712 | u8 status; |
| 695 | u8 ec_oi; | 713 | u8 ec_oi; |
diff --git a/include/linux/mlx5/driver.h b/include/linux/mlx5/driver.h index f22e4419839b..8888381fc150 100644 --- a/include/linux/mlx5/driver.h +++ b/include/linux/mlx5/driver.h | |||
| @@ -101,6 +101,8 @@ enum { | |||
| 101 | MLX5_CMD_OP_QUERY_ADAPTER = 0x101, | 101 | MLX5_CMD_OP_QUERY_ADAPTER = 0x101, |
| 102 | MLX5_CMD_OP_INIT_HCA = 0x102, | 102 | MLX5_CMD_OP_INIT_HCA = 0x102, |
| 103 | MLX5_CMD_OP_TEARDOWN_HCA = 0x103, | 103 | MLX5_CMD_OP_TEARDOWN_HCA = 0x103, |
| 104 | MLX5_CMD_OP_ENABLE_HCA = 0x104, | ||
| 105 | MLX5_CMD_OP_DISABLE_HCA = 0x105, | ||
| 104 | MLX5_CMD_OP_QUERY_PAGES = 0x107, | 106 | MLX5_CMD_OP_QUERY_PAGES = 0x107, |
| 105 | MLX5_CMD_OP_MANAGE_PAGES = 0x108, | 107 | MLX5_CMD_OP_MANAGE_PAGES = 0x108, |
| 106 | MLX5_CMD_OP_SET_HCA_CAP = 0x109, | 108 | MLX5_CMD_OP_SET_HCA_CAP = 0x109, |
| @@ -356,7 +358,7 @@ struct mlx5_caps { | |||
| 356 | u32 reserved_lkey; | 358 | u32 reserved_lkey; |
| 357 | u8 local_ca_ack_delay; | 359 | u8 local_ca_ack_delay; |
| 358 | u8 log_max_mcg; | 360 | u8 log_max_mcg; |
| 359 | u16 max_qp_mcg; | 361 | u32 max_qp_mcg; |
| 360 | int min_page_sz; | 362 | int min_page_sz; |
| 361 | }; | 363 | }; |
| 362 | 364 | ||
| @@ -689,8 +691,8 @@ void mlx5_pagealloc_cleanup(struct mlx5_core_dev *dev); | |||
| 689 | int mlx5_pagealloc_start(struct mlx5_core_dev *dev); | 691 | int mlx5_pagealloc_start(struct mlx5_core_dev *dev); |
| 690 | void mlx5_pagealloc_stop(struct mlx5_core_dev *dev); | 692 | void mlx5_pagealloc_stop(struct mlx5_core_dev *dev); |
| 691 | void mlx5_core_req_pages_handler(struct mlx5_core_dev *dev, u16 func_id, | 693 | void mlx5_core_req_pages_handler(struct mlx5_core_dev *dev, u16 func_id, |
| 692 | s16 npages); | 694 | s32 npages); |
| 693 | int mlx5_satisfy_startup_pages(struct mlx5_core_dev *dev); | 695 | int mlx5_satisfy_startup_pages(struct mlx5_core_dev *dev, int boot); |
| 694 | int mlx5_reclaim_startup_pages(struct mlx5_core_dev *dev); | 696 | int mlx5_reclaim_startup_pages(struct mlx5_core_dev *dev); |
| 695 | void mlx5_register_debugfs(void); | 697 | void mlx5_register_debugfs(void); |
| 696 | void mlx5_unregister_debugfs(void); | 698 | void mlx5_unregister_debugfs(void); |
| @@ -729,9 +731,6 @@ void mlx5_cq_debugfs_cleanup(struct mlx5_core_dev *dev); | |||
| 729 | int mlx5_db_alloc(struct mlx5_core_dev *dev, struct mlx5_db *db); | 731 | int mlx5_db_alloc(struct mlx5_core_dev *dev, struct mlx5_db *db); |
| 730 | void mlx5_db_free(struct mlx5_core_dev *dev, struct mlx5_db *db); | 732 | void mlx5_db_free(struct mlx5_core_dev *dev, struct mlx5_db *db); |
| 731 | 733 | ||
| 732 | typedef void (*health_handler_t)(struct pci_dev *pdev, struct health_buffer __iomem *buf, int size); | ||
| 733 | int mlx5_register_health_report_handler(health_handler_t handler); | ||
| 734 | void mlx5_unregister_health_report_handler(void); | ||
| 735 | const char *mlx5_command_str(int command); | 734 | const char *mlx5_command_str(int command); |
| 736 | int mlx5_cmdif_debugfs_init(struct mlx5_core_dev *dev); | 735 | int mlx5_cmdif_debugfs_init(struct mlx5_core_dev *dev); |
| 737 | void mlx5_cmdif_debugfs_cleanup(struct mlx5_core_dev *dev); | 736 | void mlx5_cmdif_debugfs_cleanup(struct mlx5_core_dev *dev); |
diff --git a/include/linux/mod_devicetable.h b/include/linux/mod_devicetable.h index b62d4af6c667..45e921401b06 100644 --- a/include/linux/mod_devicetable.h +++ b/include/linux/mod_devicetable.h | |||
| @@ -361,7 +361,8 @@ struct ssb_device_id { | |||
| 361 | __u16 vendor; | 361 | __u16 vendor; |
| 362 | __u16 coreid; | 362 | __u16 coreid; |
| 363 | __u8 revision; | 363 | __u8 revision; |
| 364 | }; | 364 | __u8 __pad; |
| 365 | } __attribute__((packed, aligned(2))); | ||
| 365 | #define SSB_DEVICE(_vendor, _coreid, _revision) \ | 366 | #define SSB_DEVICE(_vendor, _coreid, _revision) \ |
| 366 | { .vendor = _vendor, .coreid = _coreid, .revision = _revision, } | 367 | { .vendor = _vendor, .coreid = _coreid, .revision = _revision, } |
| 367 | #define SSB_DEVTABLE_END \ | 368 | #define SSB_DEVTABLE_END \ |
| @@ -377,7 +378,7 @@ struct bcma_device_id { | |||
| 377 | __u16 id; | 378 | __u16 id; |
| 378 | __u8 rev; | 379 | __u8 rev; |
| 379 | __u8 class; | 380 | __u8 class; |
| 380 | }; | 381 | } __attribute__((packed,aligned(2))); |
| 381 | #define BCMA_CORE(_manuf, _id, _rev, _class) \ | 382 | #define BCMA_CORE(_manuf, _id, _rev, _class) \ |
| 382 | { .manuf = _manuf, .id = _id, .rev = _rev, .class = _class, } | 383 | { .manuf = _manuf, .id = _id, .rev = _rev, .class = _class, } |
| 383 | #define BCMA_CORETABLE_END \ | 384 | #define BCMA_CORETABLE_END \ |
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 0741a1e919a5..9a4156845e93 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
| @@ -973,7 +973,7 @@ struct net_device_ops { | |||
| 973 | gfp_t gfp); | 973 | gfp_t gfp); |
| 974 | void (*ndo_netpoll_cleanup)(struct net_device *dev); | 974 | void (*ndo_netpoll_cleanup)(struct net_device *dev); |
| 975 | #endif | 975 | #endif |
| 976 | #ifdef CONFIG_NET_LL_RX_POLL | 976 | #ifdef CONFIG_NET_RX_BUSY_POLL |
| 977 | int (*ndo_busy_poll)(struct napi_struct *dev); | 977 | int (*ndo_busy_poll)(struct napi_struct *dev); |
| 978 | #endif | 978 | #endif |
| 979 | int (*ndo_set_vf_mac)(struct net_device *dev, | 979 | int (*ndo_set_vf_mac)(struct net_device *dev, |
diff --git a/include/linux/regmap.h b/include/linux/regmap.h index 75981d0b57dc..580a5320cc96 100644 --- a/include/linux/regmap.h +++ b/include/linux/regmap.h | |||
| @@ -15,6 +15,7 @@ | |||
| 15 | 15 | ||
| 16 | #include <linux/list.h> | 16 | #include <linux/list.h> |
| 17 | #include <linux/rbtree.h> | 17 | #include <linux/rbtree.h> |
| 18 | #include <linux/err.h> | ||
| 18 | 19 | ||
| 19 | struct module; | 20 | struct module; |
| 20 | struct device; | 21 | struct device; |
diff --git a/include/linux/sched.h b/include/linux/sched.h index 50d04b92ceda..e9995eb5985c 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
| @@ -314,6 +314,7 @@ struct nsproxy; | |||
| 314 | struct user_namespace; | 314 | struct user_namespace; |
| 315 | 315 | ||
| 316 | #ifdef CONFIG_MMU | 316 | #ifdef CONFIG_MMU |
| 317 | extern unsigned long mmap_legacy_base(void); | ||
| 317 | extern void arch_pick_mmap_layout(struct mm_struct *mm); | 318 | extern void arch_pick_mmap_layout(struct mm_struct *mm); |
| 318 | extern unsigned long | 319 | extern unsigned long |
| 319 | arch_get_unmapped_area(struct file *, unsigned long, unsigned long, | 320 | arch_get_unmapped_area(struct file *, unsigned long, unsigned long, |
| @@ -1532,6 +1533,8 @@ static inline pid_t task_pgrp_nr(struct task_struct *tsk) | |||
| 1532 | * Test if a process is not yet dead (at most zombie state) | 1533 | * Test if a process is not yet dead (at most zombie state) |
| 1533 | * If pid_alive fails, then pointers within the task structure | 1534 | * If pid_alive fails, then pointers within the task structure |
| 1534 | * can be stale and must not be dereferenced. | 1535 | * can be stale and must not be dereferenced. |
| 1536 | * | ||
| 1537 | * Return: 1 if the process is alive. 0 otherwise. | ||
| 1535 | */ | 1538 | */ |
| 1536 | static inline int pid_alive(struct task_struct *p) | 1539 | static inline int pid_alive(struct task_struct *p) |
| 1537 | { | 1540 | { |
| @@ -1543,6 +1546,8 @@ static inline int pid_alive(struct task_struct *p) | |||
| 1543 | * @tsk: Task structure to be checked. | 1546 | * @tsk: Task structure to be checked. |
| 1544 | * | 1547 | * |
| 1545 | * Check if a task structure is the first user space task the kernel created. | 1548 | * Check if a task structure is the first user space task the kernel created. |
| 1549 | * | ||
| 1550 | * Return: 1 if the task structure is init. 0 otherwise. | ||
| 1546 | */ | 1551 | */ |
| 1547 | static inline int is_global_init(struct task_struct *tsk) | 1552 | static inline int is_global_init(struct task_struct *tsk) |
| 1548 | { | 1553 | { |
| @@ -1628,6 +1633,7 @@ extern void thread_group_cputime_adjusted(struct task_struct *p, cputime_t *ut, | |||
| 1628 | #define PF_MEMPOLICY 0x10000000 /* Non-default NUMA mempolicy */ | 1633 | #define PF_MEMPOLICY 0x10000000 /* Non-default NUMA mempolicy */ |
| 1629 | #define PF_MUTEX_TESTER 0x20000000 /* Thread belongs to the rt mutex tester */ | 1634 | #define PF_MUTEX_TESTER 0x20000000 /* Thread belongs to the rt mutex tester */ |
| 1630 | #define PF_FREEZER_SKIP 0x40000000 /* Freezer should not count it as freezable */ | 1635 | #define PF_FREEZER_SKIP 0x40000000 /* Freezer should not count it as freezable */ |
| 1636 | #define PF_SUSPEND_TASK 0x80000000 /* this thread called freeze_processes and should not be frozen */ | ||
| 1631 | 1637 | ||
| 1632 | /* | 1638 | /* |
| 1633 | * Only the _current_ task can read/write to tsk->flags, but other | 1639 | * Only the _current_ task can read/write to tsk->flags, but other |
| @@ -1893,6 +1899,8 @@ extern struct task_struct *idle_task(int cpu); | |||
| 1893 | /** | 1899 | /** |
| 1894 | * is_idle_task - is the specified task an idle task? | 1900 | * is_idle_task - is the specified task an idle task? |
| 1895 | * @p: the task in question. | 1901 | * @p: the task in question. |
| 1902 | * | ||
| 1903 | * Return: 1 if @p is an idle task. 0 otherwise. | ||
| 1896 | */ | 1904 | */ |
| 1897 | static inline bool is_idle_task(const struct task_struct *p) | 1905 | static inline bool is_idle_task(const struct task_struct *p) |
| 1898 | { | 1906 | { |
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index 5afefa01a13c..3b71a4e83642 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
| @@ -501,7 +501,7 @@ struct sk_buff { | |||
| 501 | /* 7/9 bit hole (depending on ndisc_nodetype presence) */ | 501 | /* 7/9 bit hole (depending on ndisc_nodetype presence) */ |
| 502 | kmemcheck_bitfield_end(flags2); | 502 | kmemcheck_bitfield_end(flags2); |
| 503 | 503 | ||
| 504 | #if defined CONFIG_NET_DMA || defined CONFIG_NET_LL_RX_POLL | 504 | #if defined CONFIG_NET_DMA || defined CONFIG_NET_RX_BUSY_POLL |
| 505 | union { | 505 | union { |
| 506 | unsigned int napi_id; | 506 | unsigned int napi_id; |
| 507 | dma_cookie_t dma_cookie; | 507 | dma_cookie_t dma_cookie; |
diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h index 7d537ced949a..75f34949d9ab 100644 --- a/include/linux/spinlock.h +++ b/include/linux/spinlock.h | |||
| @@ -117,9 +117,17 @@ do { \ | |||
| 117 | #endif /*arch_spin_is_contended*/ | 117 | #endif /*arch_spin_is_contended*/ |
| 118 | #endif | 118 | #endif |
| 119 | 119 | ||
| 120 | /* The lock does not imply full memory barrier. */ | 120 | /* |
| 121 | #ifndef ARCH_HAS_SMP_MB_AFTER_LOCK | 121 | * Despite its name it doesn't necessarily has to be a full barrier. |
| 122 | static inline void smp_mb__after_lock(void) { smp_mb(); } | 122 | * It should only guarantee that a STORE before the critical section |
| 123 | * can not be reordered with a LOAD inside this section. | ||
| 124 | * spin_lock() is the one-way barrier, this LOAD can not escape out | ||
| 125 | * of the region. So the default implementation simply ensures that | ||
| 126 | * a STORE can not move into the critical section, smp_wmb() should | ||
| 127 | * serialize it with another STORE done by spin_lock(). | ||
| 128 | */ | ||
| 129 | #ifndef smp_mb__before_spinlock | ||
| 130 | #define smp_mb__before_spinlock() smp_wmb() | ||
| 123 | #endif | 131 | #endif |
| 124 | 132 | ||
| 125 | /** | 133 | /** |
diff --git a/include/linux/sunrpc/sched.h b/include/linux/sunrpc/sched.h index 6d870353674a..1821445708d6 100644 --- a/include/linux/sunrpc/sched.h +++ b/include/linux/sunrpc/sched.h | |||
| @@ -121,6 +121,7 @@ struct rpc_task_setup { | |||
| 121 | #define RPC_TASK_SOFTCONN 0x0400 /* Fail if can't connect */ | 121 | #define RPC_TASK_SOFTCONN 0x0400 /* Fail if can't connect */ |
| 122 | #define RPC_TASK_SENT 0x0800 /* message was sent */ | 122 | #define RPC_TASK_SENT 0x0800 /* message was sent */ |
| 123 | #define RPC_TASK_TIMEOUT 0x1000 /* fail with ETIMEDOUT on timeout */ | 123 | #define RPC_TASK_TIMEOUT 0x1000 /* fail with ETIMEDOUT on timeout */ |
| 124 | #define RPC_TASK_NOCONNECT 0x2000 /* return ENOTCONN if not connected */ | ||
| 124 | 125 | ||
| 125 | #define RPC_IS_ASYNC(t) ((t)->tk_flags & RPC_TASK_ASYNC) | 126 | #define RPC_IS_ASYNC(t) ((t)->tk_flags & RPC_TASK_ASYNC) |
| 126 | #define RPC_IS_SWAPPER(t) ((t)->tk_flags & RPC_TASK_SWAPPER) | 127 | #define RPC_IS_SWAPPER(t) ((t)->tk_flags & RPC_TASK_SWAPPER) |
diff --git a/include/linux/swapops.h b/include/linux/swapops.h index c5fd30d2a415..8d4fa82bfb91 100644 --- a/include/linux/swapops.h +++ b/include/linux/swapops.h | |||
| @@ -67,6 +67,8 @@ static inline swp_entry_t pte_to_swp_entry(pte_t pte) | |||
| 67 | swp_entry_t arch_entry; | 67 | swp_entry_t arch_entry; |
| 68 | 68 | ||
| 69 | BUG_ON(pte_file(pte)); | 69 | BUG_ON(pte_file(pte)); |
| 70 | if (pte_swp_soft_dirty(pte)) | ||
| 71 | pte = pte_swp_clear_soft_dirty(pte); | ||
| 70 | arch_entry = __pte_to_swp_entry(pte); | 72 | arch_entry = __pte_to_swp_entry(pte); |
| 71 | return swp_entry(__swp_type(arch_entry), __swp_offset(arch_entry)); | 73 | return swp_entry(__swp_type(arch_entry), __swp_offset(arch_entry)); |
| 72 | } | 74 | } |
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index 4147d700a293..84662ecc7b51 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h | |||
| @@ -802,9 +802,14 @@ asmlinkage long sys_vfork(void); | |||
| 802 | asmlinkage long sys_clone(unsigned long, unsigned long, int __user *, int, | 802 | asmlinkage long sys_clone(unsigned long, unsigned long, int __user *, int, |
| 803 | int __user *); | 803 | int __user *); |
| 804 | #else | 804 | #else |
| 805 | #ifdef CONFIG_CLONE_BACKWARDS3 | ||
| 806 | asmlinkage long sys_clone(unsigned long, unsigned long, int, int __user *, | ||
| 807 | int __user *, int); | ||
| 808 | #else | ||
| 805 | asmlinkage long sys_clone(unsigned long, unsigned long, int __user *, | 809 | asmlinkage long sys_clone(unsigned long, unsigned long, int __user *, |
| 806 | int __user *, int); | 810 | int __user *, int); |
| 807 | #endif | 811 | #endif |
| 812 | #endif | ||
| 808 | 813 | ||
| 809 | asmlinkage long sys_execve(const char __user *filename, | 814 | asmlinkage long sys_execve(const char __user *filename, |
| 810 | const char __user *const __user *argv, | 815 | const char __user *const __user *argv, |
diff --git a/include/linux/tick.h b/include/linux/tick.h index 9180f4b85e6d..62bd8b72873c 100644 --- a/include/linux/tick.h +++ b/include/linux/tick.h | |||
| @@ -174,10 +174,4 @@ static inline void tick_nohz_task_switch(struct task_struct *tsk) { } | |||
| 174 | #endif | 174 | #endif |
| 175 | 175 | ||
| 176 | 176 | ||
| 177 | # ifdef CONFIG_CPU_IDLE_GOV_MENU | ||
| 178 | extern void menu_hrtimer_cancel(void); | ||
| 179 | # else | ||
| 180 | static inline void menu_hrtimer_cancel(void) {} | ||
| 181 | # endif /* CONFIG_CPU_IDLE_GOV_MENU */ | ||
| 182 | |||
| 183 | #endif | 177 | #endif |
diff --git a/include/linux/user_namespace.h b/include/linux/user_namespace.h index b6b215f13b45..14105c26a836 100644 --- a/include/linux/user_namespace.h +++ b/include/linux/user_namespace.h | |||
| @@ -23,6 +23,7 @@ struct user_namespace { | |||
| 23 | struct uid_gid_map projid_map; | 23 | struct uid_gid_map projid_map; |
| 24 | atomic_t count; | 24 | atomic_t count; |
| 25 | struct user_namespace *parent; | 25 | struct user_namespace *parent; |
| 26 | int level; | ||
| 26 | kuid_t owner; | 27 | kuid_t owner; |
| 27 | kgid_t group; | 28 | kgid_t group; |
| 28 | unsigned int proc_inum; | 29 | unsigned int proc_inum; |
diff --git a/include/linux/vmpressure.h b/include/linux/vmpressure.h index 76be077340ea..7dc17e2456de 100644 --- a/include/linux/vmpressure.h +++ b/include/linux/vmpressure.h | |||
| @@ -12,7 +12,7 @@ struct vmpressure { | |||
| 12 | unsigned long scanned; | 12 | unsigned long scanned; |
| 13 | unsigned long reclaimed; | 13 | unsigned long reclaimed; |
| 14 | /* The lock is used to keep the scanned/reclaimed above in sync. */ | 14 | /* The lock is used to keep the scanned/reclaimed above in sync. */ |
| 15 | struct mutex sr_lock; | 15 | struct spinlock sr_lock; |
| 16 | 16 | ||
| 17 | /* The list of vmpressure_event structs. */ | 17 | /* The list of vmpressure_event structs. */ |
| 18 | struct list_head events; | 18 | struct list_head events; |
| @@ -30,6 +30,7 @@ extern void vmpressure(gfp_t gfp, struct mem_cgroup *memcg, | |||
| 30 | extern void vmpressure_prio(gfp_t gfp, struct mem_cgroup *memcg, int prio); | 30 | extern void vmpressure_prio(gfp_t gfp, struct mem_cgroup *memcg, int prio); |
| 31 | 31 | ||
| 32 | extern void vmpressure_init(struct vmpressure *vmpr); | 32 | extern void vmpressure_init(struct vmpressure *vmpr); |
| 33 | extern void vmpressure_cleanup(struct vmpressure *vmpr); | ||
| 33 | extern struct vmpressure *memcg_to_vmpressure(struct mem_cgroup *memcg); | 34 | extern struct vmpressure *memcg_to_vmpressure(struct mem_cgroup *memcg); |
| 34 | extern struct cgroup_subsys_state *vmpressure_to_css(struct vmpressure *vmpr); | 35 | extern struct cgroup_subsys_state *vmpressure_to_css(struct vmpressure *vmpr); |
| 35 | extern struct vmpressure *css_to_vmpressure(struct cgroup_subsys_state *css); | 36 | extern struct vmpressure *css_to_vmpressure(struct cgroup_subsys_state *css); |
