diff options
| author | Mohammed Shafi Shajakhan <mshajakhan@atheros.com> | 2011-04-08 21:24:24 +0530 | 
|---|---|---|
| committer | John W. Linville <linville@tuxdriver.com> | 2011-04-12 16:58:47 -0400 | 
| commit | ebe27c91af8b7f4810ae906fbd3eeb2d87850026 (patch) | |
| tree | eff1fe0dbb8ecb4b116d8f96c6beb3eda1c52c7a /net/mac80211/debugfs_sta.c | |
| parent | f60c49b67dd6db2ccb740a6a671414f9dab00c4f (diff) | |
| download | olio-linux-3.10-ebe27c91af8b7f4810ae906fbd3eeb2d87850026.tar.xz olio-linux-3.10-ebe27c91af8b7f4810ae906fbd3eeb2d87850026.zip  | |
{mac|nl}80211: Add station connected time
Add station connected time in debugfs. This will be helpful to get a
measure of stability of the connection and for debugging stress issues
Cc: Senthilkumar Balasubramanian <Senthilkumar.Balasubramanian@Atheros.com>
Signed-off-by: Mohammed Shafi Shajakhan <mshajakhan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/debugfs_sta.c')
| -rw-r--r-- | net/mac80211/debugfs_sta.c | 26 | 
1 files changed, 26 insertions, 0 deletions
diff --git a/net/mac80211/debugfs_sta.c b/net/mac80211/debugfs_sta.c index c04a1396cf8..c008232731e 100644 --- a/net/mac80211/debugfs_sta.c +++ b/net/mac80211/debugfs_sta.c @@ -92,6 +92,31 @@ static ssize_t sta_inactive_ms_read(struct file *file, char __user *userbuf,  }  STA_OPS(inactive_ms); + +static ssize_t sta_connected_time_read(struct file *file, char __user *userbuf, +					size_t count, loff_t *ppos) +{ +	struct sta_info *sta = file->private_data; +	struct timespec uptime; +	struct tm result; +	long connected_time_secs; +	char buf[100]; +	int res; +	do_posix_clock_monotonic_gettime(&uptime); +	connected_time_secs = uptime.tv_sec - sta->last_connected; +	time_to_tm(connected_time_secs, 0, &result); +	result.tm_year -= 70; +	result.tm_mday -= 1; +	res = scnprintf(buf, sizeof(buf), +		"years  - %d\nmonths - %d\ndays   - %d\nclock  - %d:%d:%d\n\n", +			result.tm_year, result.tm_mon, result.tm_mday, +			result.tm_hour, result.tm_min, result.tm_sec); +	return simple_read_from_buffer(userbuf, count, ppos, buf, res); +} +STA_OPS(connected_time); + + +  static ssize_t sta_last_seq_ctrl_read(struct file *file, char __user *userbuf,  				      size_t count, loff_t *ppos)  { @@ -324,6 +349,7 @@ void ieee80211_sta_debugfs_add(struct sta_info *sta)  	DEBUGFS_ADD(flags);  	DEBUGFS_ADD(num_ps_buf_frames);  	DEBUGFS_ADD(inactive_ms); +	DEBUGFS_ADD(connected_time);  	DEBUGFS_ADD(last_seq_ctrl);  	DEBUGFS_ADD(agg_status);  	DEBUGFS_ADD(dev);  |