iwlwifi: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning
authorStephen Boyd <sboyd@codeaurora.org>
Thu, 12 May 2011 23:50:05 +0000 (16:50 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 16 May 2011 18:10:39 +0000 (14:10 -0400)
Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following
warning:

In file included from arch/x86/include/asm/uaccess.h:573,
                 from include/net/checksum.h:25,
                 from include/linux/skbuff.h:28,
                 from drivers/net/wireless/iwlwifi/iwl-agn-rs.c:28:
In function 'copy_from_user',
    inlined from 'rs_sta_dbgfs_scale_table_write' at
    drivers/net/wireless/iwlwifi/iwl-agn-rs.c:3099:
arch/x86/include/asm/uaccess_64.h:65:
warning: call to 'copy_from_user_overflow' declared with
attribute warning: copy_from_user() buffer size is not provably
correct

presumably due to buf_size being signed causing GCC to fail to
see that buf_size can't become negative.

Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwlwifi/iwl-agn-rs.c

index dbe6295..91f2655 100644 (file)
@@ -3086,7 +3086,7 @@ static ssize_t rs_sta_dbgfs_scale_table_write(struct file *file,
        struct iwl_lq_sta *lq_sta = file->private_data;
        struct iwl_priv *priv;
        char buf[64];
-       int buf_size;
+       size_t buf_size;
        u32 parsed_rate;
        struct iwl_station_priv *sta_priv =
                container_of(lq_sta, struct iwl_station_priv, lq_sta);