aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/asm-generic/cputime_nsecs.h5
-rw-r--r--include/linux/blkdev.h9
-rw-r--r--include/linux/devpts_fs.h4
-rw-r--r--include/linux/intel-iommu.h3
-rw-r--r--include/linux/lockdep.h4
-rw-r--r--include/linux/pfn.h2
-rw-r--r--include/linux/pfn_t.h19
-rw-r--r--include/linux/skbuff.h1
-rw-r--r--include/net/af_unix.h4
-rw-r--r--include/net/ip_tunnels.h1
-rw-r--r--include/net/scm.h1
-rw-r--r--include/net/tcp.h2
-rw-r--r--include/target/target_core_backend.h3
-rw-r--r--include/target/target_core_base.h9
14 files changed, 42 insertions, 25 deletions
diff --git a/include/asm-generic/cputime_nsecs.h b/include/asm-generic/cputime_nsecs.h
index 0419485891f2..0f1c6f315cdc 100644
--- a/include/asm-generic/cputime_nsecs.h
+++ b/include/asm-generic/cputime_nsecs.h
@@ -75,7 +75,7 @@ typedef u64 __nocast cputime64_t;
75 */ 75 */
76static inline cputime_t timespec_to_cputime(const struct timespec *val) 76static inline cputime_t timespec_to_cputime(const struct timespec *val)
77{ 77{
78 u64 ret = val->tv_sec * NSEC_PER_SEC + val->tv_nsec; 78 u64 ret = (u64)val->tv_sec * NSEC_PER_SEC + val->tv_nsec;
79 return (__force cputime_t) ret; 79 return (__force cputime_t) ret;
80} 80}
81static inline void cputime_to_timespec(const cputime_t ct, struct timespec *val) 81static inline void cputime_to_timespec(const cputime_t ct, struct timespec *val)
@@ -91,7 +91,8 @@ static inline void cputime_to_timespec(const cputime_t ct, struct timespec *val)
91 */ 91 */
92static inline cputime_t timeval_to_cputime(const struct timeval *val) 92static inline cputime_t timeval_to_cputime(const struct timeval *val)
93{ 93{
94 u64 ret = val->tv_sec * NSEC_PER_SEC + val->tv_usec * NSEC_PER_USEC; 94 u64 ret = (u64)val->tv_sec * NSEC_PER_SEC +
95 val->tv_usec * NSEC_PER_USEC;
95 return (__force cputime_t) ret; 96 return (__force cputime_t) ret;
96} 97}
97static inline void cputime_to_timeval(const cputime_t ct, struct timeval *val) 98static inline void cputime_to_timeval(const cputime_t ct, struct timeval *val)
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 29189aeace19..4571ef1a12a9 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -682,9 +682,12 @@ static inline bool blk_write_same_mergeable(struct bio *a, struct bio *b)
682/* 682/*
683 * q->prep_rq_fn return values 683 * q->prep_rq_fn return values
684 */ 684 */
685#define BLKPREP_OK 0 /* serve it */ 685enum {
686#define BLKPREP_KILL 1 /* fatal error, kill */ 686 BLKPREP_OK, /* serve it */
687#define BLKPREP_DEFER 2 /* leave on queue */ 687 BLKPREP_KILL, /* fatal error, kill, return -EIO */
688 BLKPREP_DEFER, /* leave on queue */
689 BLKPREP_INVALID, /* invalid command, kill, return -EREMOTEIO */
690};
688 691
689extern unsigned long blk_max_low_pfn, blk_max_pfn; 692extern unsigned long blk_max_low_pfn, blk_max_pfn;
690 693
diff --git a/include/linux/devpts_fs.h b/include/linux/devpts_fs.h
index 251a2090a554..e0ee0b3000b2 100644
--- a/include/linux/devpts_fs.h
+++ b/include/linux/devpts_fs.h
@@ -19,6 +19,8 @@
19 19
20int devpts_new_index(struct inode *ptmx_inode); 20int devpts_new_index(struct inode *ptmx_inode);
21void devpts_kill_index(struct inode *ptmx_inode, int idx); 21void devpts_kill_index(struct inode *ptmx_inode, int idx);
22void devpts_add_ref(struct inode *ptmx_inode);
23void devpts_del_ref(struct inode *ptmx_inode);
22/* mknod in devpts */ 24/* mknod in devpts */
23struct inode *devpts_pty_new(struct inode *ptmx_inode, dev_t device, int index, 25struct inode *devpts_pty_new(struct inode *ptmx_inode, dev_t device, int index,
24 void *priv); 26 void *priv);
@@ -32,6 +34,8 @@ void devpts_pty_kill(struct inode *inode);
32/* Dummy stubs in the no-pty case */ 34/* Dummy stubs in the no-pty case */
33static inline int devpts_new_index(struct inode *ptmx_inode) { return -EINVAL; } 35static inline int devpts_new_index(struct inode *ptmx_inode) { return -EINVAL; }
34static inline void devpts_kill_index(struct inode *ptmx_inode, int idx) { } 36static inline void devpts_kill_index(struct inode *ptmx_inode, int idx) { }
37static inline void devpts_add_ref(struct inode *ptmx_inode) { }
38static inline void devpts_del_ref(struct inode *ptmx_inode) { }
35static inline struct inode *devpts_pty_new(struct inode *ptmx_inode, 39static inline struct inode *devpts_pty_new(struct inode *ptmx_inode,
36 dev_t device, int index, void *priv) 40 dev_t device, int index, void *priv)
37{ 41{
diff --git a/include/linux/intel-iommu.h b/include/linux/intel-iommu.h
index 821273ca4873..2d9b650047a5 100644
--- a/include/linux/intel-iommu.h
+++ b/include/linux/intel-iommu.h
@@ -235,6 +235,9 @@ static inline void dmar_writeq(void __iomem *addr, u64 val)
235/* low 64 bit */ 235/* low 64 bit */
236#define dma_frcd_page_addr(d) (d & (((u64)-1) << PAGE_SHIFT)) 236#define dma_frcd_page_addr(d) (d & (((u64)-1) << PAGE_SHIFT))
237 237
238/* PRS_REG */
239#define DMA_PRS_PPR ((u32)1)
240
238#define IOMMU_WAIT_OP(iommu, offset, op, cond, sts) \ 241#define IOMMU_WAIT_OP(iommu, offset, op, cond, sts) \
239do { \ 242do { \
240 cycles_t start_time = get_cycles(); \ 243 cycles_t start_time = get_cycles(); \
diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h
index c57e424d914b..4dca42fd32f5 100644
--- a/include/linux/lockdep.h
+++ b/include/linux/lockdep.h
@@ -66,7 +66,7 @@ struct lock_class {
66 /* 66 /*
67 * class-hash: 67 * class-hash:
68 */ 68 */
69 struct list_head hash_entry; 69 struct hlist_node hash_entry;
70 70
71 /* 71 /*
72 * global list of all lock-classes: 72 * global list of all lock-classes:
@@ -199,7 +199,7 @@ struct lock_chain {
199 u8 irq_context; 199 u8 irq_context;
200 u8 depth; 200 u8 depth;
201 u16 base; 201 u16 base;
202 struct list_head entry; 202 struct hlist_node entry;
203 u64 chain_key; 203 u64 chain_key;
204}; 204};
205 205
diff --git a/include/linux/pfn.h b/include/linux/pfn.h
index 2d8e49711b63..1132953235c0 100644
--- a/include/linux/pfn.h
+++ b/include/linux/pfn.h
@@ -10,7 +10,7 @@
10 * backing is indicated by flags in the high bits of the value. 10 * backing is indicated by flags in the high bits of the value.
11 */ 11 */
12typedef struct { 12typedef struct {
13 unsigned long val; 13 u64 val;
14} pfn_t; 14} pfn_t;
15#endif 15#endif
16 16
diff --git a/include/linux/pfn_t.h b/include/linux/pfn_t.h
index 37448ab5fb5c..94994810c7c0 100644
--- a/include/linux/pfn_t.h
+++ b/include/linux/pfn_t.h
@@ -9,14 +9,13 @@
9 * PFN_DEV - pfn is not covered by system memmap by default 9 * PFN_DEV - pfn is not covered by system memmap by default
10 * PFN_MAP - pfn has a dynamic page mapping established by a device driver 10 * PFN_MAP - pfn has a dynamic page mapping established by a device driver
11 */ 11 */
12#define PFN_FLAGS_MASK (((unsigned long) ~PAGE_MASK) \ 12#define PFN_FLAGS_MASK (((u64) ~PAGE_MASK) << (BITS_PER_LONG_LONG - PAGE_SHIFT))
13 << (BITS_PER_LONG - PAGE_SHIFT)) 13#define PFN_SG_CHAIN (1ULL << (BITS_PER_LONG_LONG - 1))
14#define PFN_SG_CHAIN (1UL << (BITS_PER_LONG - 1)) 14#define PFN_SG_LAST (1ULL << (BITS_PER_LONG_LONG - 2))
15#define PFN_SG_LAST (1UL << (BITS_PER_LONG - 2)) 15#define PFN_DEV (1ULL << (BITS_PER_LONG_LONG - 3))
16#define PFN_DEV (1UL << (BITS_PER_LONG - 3)) 16#define PFN_MAP (1ULL << (BITS_PER_LONG_LONG - 4))
17#define PFN_MAP (1UL << (BITS_PER_LONG - 4)) 17
18 18static inline pfn_t __pfn_to_pfn_t(unsigned long pfn, u64 flags)
19static inline pfn_t __pfn_to_pfn_t(unsigned long pfn, unsigned long flags)
20{ 19{
21 pfn_t pfn_t = { .val = pfn | (flags & PFN_FLAGS_MASK), }; 20 pfn_t pfn_t = { .val = pfn | (flags & PFN_FLAGS_MASK), };
22 21
@@ -29,7 +28,7 @@ static inline pfn_t pfn_to_pfn_t(unsigned long pfn)
29 return __pfn_to_pfn_t(pfn, 0); 28 return __pfn_to_pfn_t(pfn, 0);
30} 29}
31 30
32extern pfn_t phys_to_pfn_t(phys_addr_t addr, unsigned long flags); 31extern pfn_t phys_to_pfn_t(phys_addr_t addr, u64 flags);
33 32
34static inline bool pfn_t_has_page(pfn_t pfn) 33static inline bool pfn_t_has_page(pfn_t pfn)
35{ 34{
@@ -87,7 +86,7 @@ static inline pmd_t pfn_t_pmd(pfn_t pfn, pgprot_t pgprot)
87#ifdef __HAVE_ARCH_PTE_DEVMAP 86#ifdef __HAVE_ARCH_PTE_DEVMAP
88static inline bool pfn_t_devmap(pfn_t pfn) 87static inline bool pfn_t_devmap(pfn_t pfn)
89{ 88{
90 const unsigned long flags = PFN_DEV|PFN_MAP; 89 const u64 flags = PFN_DEV|PFN_MAP;
91 90
92 return (pfn.val & flags) == flags; 91 return (pfn.val & flags) == flags;
93} 92}
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 11f935c1a090..4ce9ff7086f4 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -299,6 +299,7 @@ struct sk_buff;
299#else 299#else
300#define MAX_SKB_FRAGS (65536/PAGE_SIZE + 1) 300#define MAX_SKB_FRAGS (65536/PAGE_SIZE + 1)
301#endif 301#endif
302extern int sysctl_max_skb_frags;
302 303
303typedef struct skb_frag_struct skb_frag_t; 304typedef struct skb_frag_struct skb_frag_t;
304 305
diff --git a/include/net/af_unix.h b/include/net/af_unix.h
index 2a91a0561a47..9b4c418bebd8 100644
--- a/include/net/af_unix.h
+++ b/include/net/af_unix.h
@@ -6,8 +6,8 @@
6#include <linux/mutex.h> 6#include <linux/mutex.h>
7#include <net/sock.h> 7#include <net/sock.h>
8 8
9void unix_inflight(struct file *fp); 9void unix_inflight(struct user_struct *user, struct file *fp);
10void unix_notinflight(struct file *fp); 10void unix_notinflight(struct user_struct *user, struct file *fp);
11void unix_gc(void); 11void unix_gc(void);
12void wait_for_unix_gc(void); 12void wait_for_unix_gc(void);
13struct sock *unix_get_socket(struct file *filp); 13struct sock *unix_get_socket(struct file *filp);
diff --git a/include/net/ip_tunnels.h b/include/net/ip_tunnels.h
index 6db96ea0144f..dda9abf6b89c 100644
--- a/include/net/ip_tunnels.h
+++ b/include/net/ip_tunnels.h
@@ -230,6 +230,7 @@ void ip_tunnel_xmit(struct sk_buff *skb, struct net_device *dev,
230int ip_tunnel_ioctl(struct net_device *dev, struct ip_tunnel_parm *p, int cmd); 230int ip_tunnel_ioctl(struct net_device *dev, struct ip_tunnel_parm *p, int cmd);
231int ip_tunnel_encap(struct sk_buff *skb, struct ip_tunnel *t, 231int ip_tunnel_encap(struct sk_buff *skb, struct ip_tunnel *t,
232 u8 *protocol, struct flowi4 *fl4); 232 u8 *protocol, struct flowi4 *fl4);
233int __ip_tunnel_change_mtu(struct net_device *dev, int new_mtu, bool strict);
233int ip_tunnel_change_mtu(struct net_device *dev, int new_mtu); 234int ip_tunnel_change_mtu(struct net_device *dev, int new_mtu);
234 235
235struct rtnl_link_stats64 *ip_tunnel_get_stats64(struct net_device *dev, 236struct rtnl_link_stats64 *ip_tunnel_get_stats64(struct net_device *dev,
diff --git a/include/net/scm.h b/include/net/scm.h
index 262532d111f5..59fa93c01d2a 100644
--- a/include/net/scm.h
+++ b/include/net/scm.h
@@ -21,6 +21,7 @@ struct scm_creds {
21struct scm_fp_list { 21struct scm_fp_list {
22 short count; 22 short count;
23 short max; 23 short max;
24 struct user_struct *user;
24 struct file *fp[SCM_MAX_FD]; 25 struct file *fp[SCM_MAX_FD];
25}; 26};
26 27
diff --git a/include/net/tcp.h b/include/net/tcp.h
index f6f8f032c73e..ae6468f5c9f3 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
@@ -447,7 +447,7 @@ const u8 *tcp_parse_md5sig_option(const struct tcphdr *th);
447 447
448void tcp_v4_send_check(struct sock *sk, struct sk_buff *skb); 448void tcp_v4_send_check(struct sock *sk, struct sk_buff *skb);
449void tcp_v4_mtu_reduced(struct sock *sk); 449void tcp_v4_mtu_reduced(struct sock *sk);
450void tcp_req_err(struct sock *sk, u32 seq); 450void tcp_req_err(struct sock *sk, u32 seq, bool abort);
451int tcp_v4_conn_request(struct sock *sk, struct sk_buff *skb); 451int tcp_v4_conn_request(struct sock *sk, struct sk_buff *skb);
452struct sock *tcp_create_openreq_child(const struct sock *sk, 452struct sock *tcp_create_openreq_child(const struct sock *sk,
453 struct request_sock *req, 453 struct request_sock *req,
diff --git a/include/target/target_core_backend.h b/include/target/target_core_backend.h
index 56cf8e485ef2..28ee5c2e6bcd 100644
--- a/include/target/target_core_backend.h
+++ b/include/target/target_core_backend.h
@@ -94,5 +94,8 @@ sense_reason_t passthrough_parse_cdb(struct se_cmd *cmd,
94 sense_reason_t (*exec_cmd)(struct se_cmd *cmd)); 94 sense_reason_t (*exec_cmd)(struct se_cmd *cmd));
95 95
96bool target_sense_desc_format(struct se_device *dev); 96bool target_sense_desc_format(struct se_device *dev);
97sector_t target_to_linux_sector(struct se_device *dev, sector_t lb);
98bool target_configure_unmap_from_queue(struct se_dev_attrib *attrib,
99 struct request_queue *q, int block_size);
97 100
98#endif /* TARGET_CORE_BACKEND_H */ 101#endif /* TARGET_CORE_BACKEND_H */
diff --git a/include/target/target_core_base.h b/include/target/target_core_base.h
index 5d82816cc4e3..e8c8c08bf575 100644
--- a/include/target/target_core_base.h
+++ b/include/target/target_core_base.h
@@ -140,6 +140,8 @@ enum se_cmd_flags_table {
140 SCF_COMPARE_AND_WRITE = 0x00080000, 140 SCF_COMPARE_AND_WRITE = 0x00080000,
141 SCF_COMPARE_AND_WRITE_POST = 0x00100000, 141 SCF_COMPARE_AND_WRITE_POST = 0x00100000,
142 SCF_PASSTHROUGH_PROT_SG_TO_MEM_NOALLOC = 0x00200000, 142 SCF_PASSTHROUGH_PROT_SG_TO_MEM_NOALLOC = 0x00200000,
143 SCF_ACK_KREF = 0x00400000,
144 SCF_USE_CPUID = 0x00800000,
143}; 145};
144 146
145/* struct se_dev_entry->lun_flags and struct se_lun->lun_access */ 147/* struct se_dev_entry->lun_flags and struct se_lun->lun_access */
@@ -187,6 +189,7 @@ enum target_sc_flags_table {
187 TARGET_SCF_BIDI_OP = 0x01, 189 TARGET_SCF_BIDI_OP = 0x01,
188 TARGET_SCF_ACK_KREF = 0x02, 190 TARGET_SCF_ACK_KREF = 0x02,
189 TARGET_SCF_UNKNOWN_SIZE = 0x04, 191 TARGET_SCF_UNKNOWN_SIZE = 0x04,
192 TARGET_SCF_USE_CPUID = 0x08,
190}; 193};
191 194
192/* fabric independent task management function values */ 195/* fabric independent task management function values */
@@ -490,8 +493,9 @@ struct se_cmd {
490#define CMD_T_SENT (1 << 4) 493#define CMD_T_SENT (1 << 4)
491#define CMD_T_STOP (1 << 5) 494#define CMD_T_STOP (1 << 5)
492#define CMD_T_DEV_ACTIVE (1 << 7) 495#define CMD_T_DEV_ACTIVE (1 << 7)
493#define CMD_T_REQUEST_STOP (1 << 8)
494#define CMD_T_BUSY (1 << 9) 496#define CMD_T_BUSY (1 << 9)
497#define CMD_T_TAS (1 << 10)
498#define CMD_T_FABRIC_STOP (1 << 11)
495 spinlock_t t_state_lock; 499 spinlock_t t_state_lock;
496 struct kref cmd_kref; 500 struct kref cmd_kref;
497 struct completion t_transport_stop_comp; 501 struct completion t_transport_stop_comp;
@@ -511,9 +515,6 @@ struct se_cmd {
511 515
512 struct list_head state_list; 516 struct list_head state_list;
513 517
514 /* old task stop completion, consider merging with some of the above */
515 struct completion task_stop_comp;
516
517 /* backend private data */ 518 /* backend private data */
518 void *priv; 519 void *priv;
519 520