forked from mirrors/linux
		
	wl18xx: show rx_frames_per_rates as an array as it really is
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: c5d94169e8 ("wl18xx: use new fw stats structures")
Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@m4x.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
			
			
This commit is contained in:
		
							parent
							
								
									7daa54b747
								
							
						
					
					
						commit
						a3fa71c40f
					
				
					 2 changed files with 3 additions and 3 deletions
				
			
		|  | @ -139,7 +139,7 @@ WL18XX_DEBUGFS_FWSTATS_FILE(rx_filter, protection_filter, "%u"); | |||
| 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); | ||||
|  |  | |||
|  | @ -26,7 +26,7 @@ | |||
| 
 | ||||
| #include "wlcore.h" | ||||
| 
 | ||||
| int wl1271_format_buffer(char __user *userbuf, size_t count, | ||||
| __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); | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Nicolas Iooss
						Nicolas Iooss