Search Linux Wireless

Re: [PATCH V3] wlcore/wl18xx: fw logger over sdio

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Shahar,

[auto build test WARNING on net-next/master]
[also build test WARNING on v4.4-rc3 next-20151127]

url:    https://github.com/0day-ci/linux/commits/Guy-Mishol/wlcore-wl18xx-fw-logger-over-sdio/20151202-222416
config: x86_64-allmodconfig (attached as .config)
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All warnings (new ones prefixed by >>):

   include/linux/compiler.h:228:8: sparse: attribute 'no_sanitize_address': unknown attribute
   drivers/net/wireless/ti/wlcore/event.c:79:15: sparse: incompatible types in comparison expression (different type sizes)
   In file included from include/linux/list.h:8:0,
                    from include/linux/kobject.h:20,
                    from include/linux/device.h:17,
                    from include/linux/platform_device.h:14,
                    from drivers/net/wireless/ti/wlcore/wlcore.h:25,
                    from drivers/net/wireless/ti/wlcore/event.c:24:
   drivers/net/wireless/ti/wlcore/event.c: In function 'wlcore_event_fw_logger':
   include/linux/kernel.h:724:17: warning: comparison of distinct pointer types lacks a cast
     (void) (&_min1 == &_min2);  \
                    ^
>> drivers/net/wireless/ti/wlcore/event.c:79:8: note: in expansion of macro 'min'
     len = min(len, available_len);
           ^
--
   /kbuild/src/sparse/include/linux/compiler.h:228:8: sparse: attribute 'no_sanitize_address': unknown attribute
   /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/event.c:79:15: sparse: incompatible types in comparison expression (different type sizes)
   In file included from /kbuild/src/sparse/include/linux/list.h:8:0,
                    from /kbuild/src/sparse/include/linux/kobject.h:20,
                    from /kbuild/src/sparse/include/linux/device.h:17,
                    from /kbuild/src/sparse/include/linux/platform_device.h:14,
                    from /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/wlcore.h:25,
                    from /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/event.c:24:
   /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/event.c: In function 'wlcore_event_fw_logger':
   /kbuild/src/sparse/include/linux/kernel.h:724:17: warning: comparison of distinct pointer types lacks a cast
     (void) (&_min1 == &_min2);  \
                    ^
>> /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/event.c:79:8: note: in expansion of macro 'min'
     len = min(len, available_len);
           ^

sparse warnings: (new ones prefixed by >>)

   include/linux/compiler.h:228:8: sparse: attribute 'no_sanitize_address': unknown attribute
>> drivers/net/wireless/ti/wlcore/event.c:79:15: sparse: incompatible types in comparison expression (different type sizes)
   In file included from include/linux/list.h:8:0,
                    from include/linux/kobject.h:20,
                    from include/linux/device.h:17,
                    from include/linux/platform_device.h:14,
                    from drivers/net/wireless/ti/wlcore/wlcore.h:25,
                    from drivers/net/wireless/ti/wlcore/event.c:24:
   drivers/net/wireless/ti/wlcore/event.c: In function 'wlcore_event_fw_logger':
   include/linux/kernel.h:724:17: warning: comparison of distinct pointer types lacks a cast
     (void) (&_min1 == &_min2);  \
                    ^
   drivers/net/wireless/ti/wlcore/event.c:79:8: note: in expansion of macro 'min'
     len = min(len, available_len);
           ^
--
   /kbuild/src/sparse/include/linux/compiler.h:228:8: sparse: attribute 'no_sanitize_address': unknown attribute
>> /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/event.c:79:15: sparse: incompatible types in comparison expression (different type sizes)
   In file included from /kbuild/src/sparse/include/linux/list.h:8:0,
                    from /kbuild/src/sparse/include/linux/kobject.h:20,
                    from /kbuild/src/sparse/include/linux/device.h:17,
                    from /kbuild/src/sparse/include/linux/platform_device.h:14,
                    from /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/wlcore.h:25,
                    from /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/event.c:24:
   /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/event.c: In function 'wlcore_event_fw_logger':
   /kbuild/src/sparse/include/linux/kernel.h:724:17: warning: comparison of distinct pointer types lacks a cast
     (void) (&_min1 == &_min2);  \
                    ^
   /kbuild/src/sparse/drivers/net/wireless/ti/wlcore/event.c:79:8: note: in expansion of macro 'min'
     len = min(len, available_len);
           ^

vim +/min +79 drivers/net/wireless/ti/wlcore/event.c

    18	 * along with this program; if not, write to the Free Software
    19	 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
    20	 * 02110-1301 USA
    21	 *
    22	 */
    23	
  > 24	#include "wlcore.h"
    25	#include "debug.h"
    26	#include "io.h"
    27	#include "event.h"
    28	#include "ps.h"
    29	#include "scan.h"
    30	#include "wl12xx_80211.h"
    31	#include "hw_ops.h"
    32	
    33	#define WL18XX_LOGGER_SDIO_BUFF_MAX	(0x1020)
    34	#define WL18XX_DATA_RAM_BASE_ADDRESS	(0x20000000)
    35	#define WL18XX_LOGGER_SDIO_BUFF_ADDR	(0x40159c)
    36	#define WL18XX_LOGGER_BUFF_OFFSET	(sizeof(struct fw_logger_information))
    37	#define WL18XX_LOGGER_READ_POINT_OFFSET		(12)
    38	
    39	int wlcore_event_fw_logger(struct wl1271 *wl)
    40	{
    41		u32 ret;
    42		struct fw_logger_information fw_log;
    43		u8  *buffer;
    44		u32 internal_fw_addrbase = WL18XX_DATA_RAM_BASE_ADDRESS;
    45		u32 addr = WL18XX_LOGGER_SDIO_BUFF_ADDR;
    46		u32 end_buff_addr = WL18XX_LOGGER_SDIO_BUFF_ADDR +
    47					WL18XX_LOGGER_BUFF_OFFSET;
    48		u32 available_len;
    49		u32 clear_addr;
    50		size_t len;
    51		u32 start_loc;
    52	
    53		buffer = kzalloc(WL18XX_LOGGER_SDIO_BUFF_MAX, GFP_KERNEL);
    54		if (!buffer) {
    55			wl1271_error("Fail to allocate fw logger memory");
    56			fw_log.actual_buff_size = 0;
    57			goto out;
    58		}
    59	
    60		ret = wlcore_read(wl, addr, buffer, WL18XX_LOGGER_SDIO_BUFF_MAX,
    61				  false);
    62		if (ret < 0) {
    63			wl1271_error("Fail to read logger buffer, error_id = %d",
    64				     ret);
    65			fw_log.actual_buff_size = 0;
    66			goto free_out;
    67		}
    68	
    69		memcpy(&fw_log, buffer, sizeof(fw_log));
    70	
    71		if (fw_log.actual_buff_size == 0)
    72			goto free_out;
    73	
    74		len = fw_log.actual_buff_size;
    75		start_loc = (fw_log.buff_read_ptr - internal_fw_addrbase) - addr;
    76		end_buff_addr += fw_log.max_buff_size;
    77		available_len = end_buff_addr -
    78				(fw_log.buff_read_ptr - internal_fw_addrbase);
  > 79		len = min(len, available_len);
    80	
    81		wl12xx_copy_fwlog(wl, &buffer[start_loc], len);
    82		clear_addr = addr + start_loc + fw_log.actual_buff_size +

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: Binary data


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux