diff options
author | Alexey Dobriyan <adobriyan@gmail.com> | 2016-09-02 00:38:52 +0300 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2016-09-27 18:47:38 -0400 |
commit | 9b80a184eaadc117f27faad522008f31d571621b (patch) | |
tree | 36662ceb861f8a88fdaba205472375e61df3665d /include/linux/fdtable.h | |
parent | 85e7340f21d3a88883e54cd2a5d7ebf04e827eeb (diff) | |
download | linux-stable-9b80a184eaadc117f27faad522008f31d571621b.tar.gz linux-stable-9b80a184eaadc117f27faad522008f31d571621b.tar.bz2 linux-stable-9b80a184eaadc117f27faad522008f31d571621b.zip |
fs/file: more unsigned file descriptors
Propagate unsignedness for grand total of 149 bytes:
$ ./scripts/bloat-o-meter ../vmlinux-000 ../obj/vmlinux
add/remove: 0/0 grow/shrink: 0/10 up/down: 0/-149 (-149)
function old new delta
set_close_on_exec 99 98 -1
put_files_struct 201 200 -1
get_close_on_exec 59 58 -1
do_prlimit 498 497 -1
do_execveat_common.isra 1662 1661 -1
__close_fd 178 173 -5
do_dup2 219 204 -15
seq_show 685 660 -25
__alloc_fd 384 357 -27
dup_fd 718 646 -72
It mostly comes from converting "unsigned int" to "long" for bit operations.
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include/linux/fdtable.h')
-rw-r--r-- | include/linux/fdtable.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/include/linux/fdtable.h b/include/linux/fdtable.h index 5295535b60c6..aca2a6a1d035 100644 --- a/include/linux/fdtable.h +++ b/include/linux/fdtable.h @@ -30,12 +30,12 @@ struct fdtable { struct rcu_head rcu; }; -static inline bool close_on_exec(int fd, const struct fdtable *fdt) +static inline bool close_on_exec(unsigned int fd, const struct fdtable *fdt) { return test_bit(fd, fdt->close_on_exec); } -static inline bool fd_is_open(int fd, const struct fdtable *fdt) +static inline bool fd_is_open(unsigned int fd, const struct fdtable *fdt) { return test_bit(fd, fdt->open_fds); } @@ -57,7 +57,7 @@ struct files_struct { * written part on a separate cache line in SMP */ spinlock_t file_lock ____cacheline_aligned_in_smp; - int next_fd; + unsigned int next_fd; unsigned long close_on_exec_init[1]; unsigned long open_fds_init[1]; unsigned long full_fds_bits_init[1]; |