net: ipv4: tcp: Get tcpi_count via file_count() not direct access

Commit 0a1544a1d, which implements a Qualcomm feature called
Smart Wireless Interface Manager, added a tcpi_count member to
struct tcp_info, and populates it using:

    atomic_read(&filep->f_count);

This causes compiler warnings on 64-bit architectures (e.g.,
64-bit ARCH_UM, used by net_test) because f_count is actually an
atomic_long_t, and on 64-bit architectures atomic_long_t is a
64-bit number. The difference doesn't matter in practice because
the value is cast to a __u8 anyway, but it causes build breaks
because we build with -Werror.

Instead of using atomic_long_t directly, use the the file_count
macro which exists for this purpose.

Change-Id: Ie09a0b4e7a5cf128b21eff10c1b34faf5c995356
Signed-off-by: Lorenzo Colitti <lorenzo@google.com>
Git commit: b520801b4df5ac65d4a936ce12f1a27c985c7b15
Git repo: https://github.com/RonGokhale/android_Kernel_sony_msm8x27
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
This commit is contained in:
Lorenzo Colitti 2015-03-03 12:34:57 +09:00 committed by Gerrit - the friendly Code Review server
parent 96a3f68ab5
commit a9435aa574
1 changed files with 1 additions and 1 deletions

View File

@ -2772,7 +2772,7 @@ void tcp_get_info(const struct sock *sk, struct tcp_info *info)
if (sk->sk_socket) {
struct file *filep = sk->sk_socket->file;
if (filep)
info->tcpi_count = atomic_read(&filep->f_count);
info->tcpi_count = file_count(filep);
}
}
EXPORT_SYMBOL_GPL(tcp_get_info);