diff options
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/dcache.h | 12 | ||||
-rw-r--r-- | include/linux/kernfs.h | 2 | ||||
-rw-r--r-- | include/linux/mfd/samsung/s2mps11.h | 2 | ||||
-rw-r--r-- | include/linux/mm.h | 9 | ||||
-rw-r--r-- | include/linux/namei.h | 2 | ||||
-rw-r--r-- | include/linux/swap.h | 6 | ||||
-rw-r--r-- | include/linux/uio.h | 1 |
7 files changed, 31 insertions, 3 deletions
diff --git a/include/linux/dcache.h b/include/linux/dcache.h index 4bb4de8d95ea..7e9422cb5989 100644 --- a/include/linux/dcache.h +++ b/include/linux/dcache.h | |||
@@ -565,4 +565,16 @@ static inline struct dentry *d_real(struct dentry *dentry) | |||
565 | return dentry; | 565 | return dentry; |
566 | } | 566 | } |
567 | 567 | ||
568 | static inline struct inode *vfs_select_inode(struct dentry *dentry, | ||
569 | unsigned open_flags) | ||
570 | { | ||
571 | struct inode *inode = d_inode(dentry); | ||
572 | |||
573 | if (inode && unlikely(dentry->d_flags & DCACHE_OP_SELECT_INODE)) | ||
574 | inode = dentry->d_op->d_select_inode(dentry, open_flags); | ||
575 | |||
576 | return inode; | ||
577 | } | ||
578 | |||
579 | |||
568 | #endif /* __LINUX_DCACHE_H */ | 580 | #endif /* __LINUX_DCACHE_H */ |
diff --git a/include/linux/kernfs.h b/include/linux/kernfs.h index c06c44242f39..30f089ebe0a4 100644 --- a/include/linux/kernfs.h +++ b/include/linux/kernfs.h | |||
@@ -152,6 +152,8 @@ struct kernfs_syscall_ops { | |||
152 | int (*rmdir)(struct kernfs_node *kn); | 152 | int (*rmdir)(struct kernfs_node *kn); |
153 | int (*rename)(struct kernfs_node *kn, struct kernfs_node *new_parent, | 153 | int (*rename)(struct kernfs_node *kn, struct kernfs_node *new_parent, |
154 | const char *new_name); | 154 | const char *new_name); |
155 | int (*show_path)(struct seq_file *sf, struct kernfs_node *kn, | ||
156 | struct kernfs_root *root); | ||
155 | }; | 157 | }; |
156 | 158 | ||
157 | struct kernfs_root { | 159 | struct kernfs_root { |
diff --git a/include/linux/mfd/samsung/s2mps11.h b/include/linux/mfd/samsung/s2mps11.h index b288965e8101..2c14eeca46f0 100644 --- a/include/linux/mfd/samsung/s2mps11.h +++ b/include/linux/mfd/samsung/s2mps11.h | |||
@@ -173,10 +173,12 @@ enum s2mps11_regulators { | |||
173 | 173 | ||
174 | #define S2MPS11_LDO_VSEL_MASK 0x3F | 174 | #define S2MPS11_LDO_VSEL_MASK 0x3F |
175 | #define S2MPS11_BUCK_VSEL_MASK 0xFF | 175 | #define S2MPS11_BUCK_VSEL_MASK 0xFF |
176 | #define S2MPS11_BUCK9_VSEL_MASK 0x1F | ||
176 | #define S2MPS11_ENABLE_MASK (0x03 << S2MPS11_ENABLE_SHIFT) | 177 | #define S2MPS11_ENABLE_MASK (0x03 << S2MPS11_ENABLE_SHIFT) |
177 | #define S2MPS11_ENABLE_SHIFT 0x06 | 178 | #define S2MPS11_ENABLE_SHIFT 0x06 |
178 | #define S2MPS11_LDO_N_VOLTAGES (S2MPS11_LDO_VSEL_MASK + 1) | 179 | #define S2MPS11_LDO_N_VOLTAGES (S2MPS11_LDO_VSEL_MASK + 1) |
179 | #define S2MPS11_BUCK_N_VOLTAGES (S2MPS11_BUCK_VSEL_MASK + 1) | 180 | #define S2MPS11_BUCK_N_VOLTAGES (S2MPS11_BUCK_VSEL_MASK + 1) |
181 | #define S2MPS11_BUCK9_N_VOLTAGES (S2MPS11_BUCK9_VSEL_MASK + 1) | ||
180 | #define S2MPS11_RAMP_DELAY 25000 /* uV/us */ | 182 | #define S2MPS11_RAMP_DELAY 25000 /* uV/us */ |
181 | 183 | ||
182 | #define S2MPS11_CTRL1_PWRHOLD_MASK BIT(4) | 184 | #define S2MPS11_CTRL1_PWRHOLD_MASK BIT(4) |
diff --git a/include/linux/mm.h b/include/linux/mm.h index 864d7221de84..8f468e0d2534 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
@@ -500,11 +500,20 @@ static inline int page_mapcount(struct page *page) | |||
500 | 500 | ||
501 | #ifdef CONFIG_TRANSPARENT_HUGEPAGE | 501 | #ifdef CONFIG_TRANSPARENT_HUGEPAGE |
502 | int total_mapcount(struct page *page); | 502 | int total_mapcount(struct page *page); |
503 | int page_trans_huge_mapcount(struct page *page, int *total_mapcount); | ||
503 | #else | 504 | #else |
504 | static inline int total_mapcount(struct page *page) | 505 | static inline int total_mapcount(struct page *page) |
505 | { | 506 | { |
506 | return page_mapcount(page); | 507 | return page_mapcount(page); |
507 | } | 508 | } |
509 | static inline int page_trans_huge_mapcount(struct page *page, | ||
510 | int *total_mapcount) | ||
511 | { | ||
512 | int mapcount = page_mapcount(page); | ||
513 | if (total_mapcount) | ||
514 | *total_mapcount = mapcount; | ||
515 | return mapcount; | ||
516 | } | ||
508 | #endif | 517 | #endif |
509 | 518 | ||
510 | static inline struct page *virt_to_head_page(const void *x) | 519 | static inline struct page *virt_to_head_page(const void *x) |
diff --git a/include/linux/namei.h b/include/linux/namei.h index 77d01700daf7..ec5ec2818a28 100644 --- a/include/linux/namei.h +++ b/include/linux/namei.h | |||
@@ -79,6 +79,8 @@ extern int kern_path_mountpoint(int, const char *, struct path *, unsigned int); | |||
79 | 79 | ||
80 | extern struct dentry *lookup_one_len(const char *, struct dentry *, int); | 80 | extern struct dentry *lookup_one_len(const char *, struct dentry *, int); |
81 | extern struct dentry *lookup_one_len_unlocked(const char *, struct dentry *, int); | 81 | extern struct dentry *lookup_one_len_unlocked(const char *, struct dentry *, int); |
82 | struct qstr; | ||
83 | extern struct dentry *lookup_hash(const struct qstr *, struct dentry *); | ||
82 | 84 | ||
83 | extern int follow_down_one(struct path *); | 85 | extern int follow_down_one(struct path *); |
84 | extern int follow_down(struct path *); | 86 | extern int follow_down(struct path *); |
diff --git a/include/linux/swap.h b/include/linux/swap.h index 0a4cd4703f40..ad220359f1b0 100644 --- a/include/linux/swap.h +++ b/include/linux/swap.h | |||
@@ -418,7 +418,7 @@ extern sector_t swapdev_block(int, pgoff_t); | |||
418 | extern int page_swapcount(struct page *); | 418 | extern int page_swapcount(struct page *); |
419 | extern int swp_swapcount(swp_entry_t entry); | 419 | extern int swp_swapcount(swp_entry_t entry); |
420 | extern struct swap_info_struct *page_swap_info(struct page *); | 420 | extern struct swap_info_struct *page_swap_info(struct page *); |
421 | extern int reuse_swap_page(struct page *); | 421 | extern bool reuse_swap_page(struct page *, int *); |
422 | extern int try_to_free_swap(struct page *); | 422 | extern int try_to_free_swap(struct page *); |
423 | struct backing_dev_info; | 423 | struct backing_dev_info; |
424 | 424 | ||
@@ -513,8 +513,8 @@ static inline int swp_swapcount(swp_entry_t entry) | |||
513 | return 0; | 513 | return 0; |
514 | } | 514 | } |
515 | 515 | ||
516 | #define reuse_swap_page(page) \ | 516 | #define reuse_swap_page(page, total_mapcount) \ |
517 | (!PageTransCompound(page) && page_mapcount(page) == 1) | 517 | (page_trans_huge_mapcount(page, total_mapcount) == 1) |
518 | 518 | ||
519 | static inline int try_to_free_swap(struct page *page) | 519 | static inline int try_to_free_swap(struct page *page) |
520 | { | 520 | { |
diff --git a/include/linux/uio.h b/include/linux/uio.h index fd9bcfedad42..1b5d1cd796e2 100644 --- a/include/linux/uio.h +++ b/include/linux/uio.h | |||
@@ -87,6 +87,7 @@ size_t copy_from_iter(void *addr, size_t bytes, struct iov_iter *i); | |||
87 | size_t copy_from_iter_nocache(void *addr, size_t bytes, struct iov_iter *i); | 87 | size_t copy_from_iter_nocache(void *addr, size_t bytes, struct iov_iter *i); |
88 | size_t iov_iter_zero(size_t bytes, struct iov_iter *); | 88 | size_t iov_iter_zero(size_t bytes, struct iov_iter *); |
89 | unsigned long iov_iter_alignment(const struct iov_iter *i); | 89 | unsigned long iov_iter_alignment(const struct iov_iter *i); |
90 | unsigned long iov_iter_gap_alignment(const struct iov_iter *i); | ||
90 | void iov_iter_init(struct iov_iter *i, int direction, const struct iovec *iov, | 91 | void iov_iter_init(struct iov_iter *i, int direction, const struct iovec *iov, |
91 | unsigned long nr_segs, size_t count); | 92 | unsigned long nr_segs, size_t count); |
92 | void iov_iter_kvec(struct iov_iter *i, int direction, const struct kvec *kvec, | 93 | void iov_iter_kvec(struct iov_iter *i, int direction, const struct kvec *kvec, |