lkml.org 
[lkml]   [2015]   [May]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.14 87/92] wl18xx: show rx_frames_per_rates as an array as it really is
    Date
    3.14-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Nicolas Iooss <nicolas.iooss_linux@m4x.org>

    commit a3fa71c40f1853d0c27e8f5bc01a722a705d9682 upstream.

    In struct wl18xx_acx_rx_rate_stat, rx_frames_per_rates field is an
    array, not a number. This means WL18XX_DEBUGFS_FWSTATS_FILE can't be
    used to display this field in debugfs (it would display a pointer, not
    the actual data). Use WL18XX_DEBUGFS_FWSTATS_FILE_ARRAY instead.

    This bug has been found by adding a __printf attribute to
    wl1271_format_buffer. gcc complained about "format '%u' expects
    argument of type 'unsigned int', but argument 5 has type 'u32 *'".

    Fixes: c5d94169e818 ("wl18xx: use new fw stats structures")
    Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@m4x.org>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/net/wireless/ti/wl18xx/debugfs.c | 2 +-
    drivers/net/wireless/ti/wlcore/debugfs.h | 4 ++--
    2 files changed, 3 insertions(+), 3 deletions(-)

    --- a/drivers/net/wireless/ti/wl18xx/debugfs.c
    +++ b/drivers/net/wireless/ti/wl18xx/debugfs.c
    @@ -136,7 +136,7 @@ WL18XX_DEBUGFS_FWSTATS_FILE(rx_filter, p
    WL18XX_DEBUGFS_FWSTATS_FILE(rx_filter, accum_arp_pend_requests, "%u");
    WL18XX_DEBUGFS_FWSTATS_FILE(rx_filter, max_arp_queue_dep, "%u");

    -WL18XX_DEBUGFS_FWSTATS_FILE(rx_rate, rx_frames_per_rates, "%u");
    +WL18XX_DEBUGFS_FWSTATS_FILE_ARRAY(rx_rate, rx_frames_per_rates, 50);

    WL18XX_DEBUGFS_FWSTATS_FILE_ARRAY(aggr_size, tx_agg_vs_rate,
    AGGR_STATS_TX_AGG*AGGR_STATS_TX_RATE);
    --- a/drivers/net/wireless/ti/wlcore/debugfs.h
    +++ b/drivers/net/wireless/ti/wlcore/debugfs.h
    @@ -26,8 +26,8 @@

    #include "wlcore.h"

    -int wl1271_format_buffer(char __user *userbuf, size_t count,
    - loff_t *ppos, char *fmt, ...);
    +__printf(4, 5) int wl1271_format_buffer(char __user *userbuf, size_t count,
    + loff_t *ppos, char *fmt, ...);

    int wl1271_debugfs_init(struct wl1271 *wl);
    void wl1271_debugfs_exit(struct wl1271 *wl);



    \
     
     \ /
      Last update: 2015-05-02 22:21    [W:4.151 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site