Grafik Komit

287 Melakukan

Penulis SHA1 Pesan Tanggal
Agrawal Ashish
42a1dc0596 qcacmn: Trigger copy of pktlogs to SD Card on basis of ring ID
For fatal events , driver sends EVENT_WLAN_LOG_COMPLETE
to userspace. But there can be multiple events for each
ring id like connectivity, driver , frimware, wakelock etc.
Cnss diag has to trigger copy of pkt log to /sdcard only for
one bug report, so send ring id in log complete event so
that it can trigger copy for driver ring id.

Change-Id: I3b06bed52509e58ac4d79698c95ba5eb1baa3bb3
CRs-Fixed: 2053770
2017-08-10 06:12:51 -07:00
Zhu Jianmin
25ff719058 qcacmn: qcacld-3.0: Discard pktlog message for invalid msdu id
During HOST AP offload case fw is sending pktlog tx info
with invalid MSDU id. This will result in invalid de-reference
tx descriptor.
Discard pktlog msg for invalid msdu id to handle
the above scenario.

Change-Id: I772ab47d46b373ab0c4a8f7f7266697d4bccd703
CRs-Fixed: 2077611
2017-08-07 05:08:32 -07:00
Srinivas Girigowda
43fa6527d4 qcacmn: Enable FATAL/ERROR/WARN/INFO log levels to console
Enable FATAL/ERROR/WARN/INFO log levels to console.

Change-Id: I54ea83ded49fcb2f1e8e1c13973ee8035dc9ce5d
CRs-Fixed: 2017427
2017-08-03 19:48:38 -07:00
Srinivas Girigowda
ee8f5dbf4b qcacmn: Utils: Reduce the log spam in kmsg
Move the logs to appropriate log levels to reduce
the log spam in kmsg.

Change-Id: I27ca212113513b15f159aa26da67e03bd3a73a9a
CRs-Fixed: 2017427
2017-08-03 19:48:36 -07:00
wadesong
6211cb6b56 qcacmn: Fix build errors generated by gcc 6
Gcc 6 introduces some stricter checking for bool value
comparison, causing build errors when a certain code
block in CLD3.x driver is compiled.

Change-Id: I270e20dab8410f45e734c15d5365e30e314b55c8
CRs-Fixed: 2051383
2017-07-23 09:58:38 -07:00
Rajeev Kumar
e501f2c62f qcacmn: Create WMI debugfs only if WLAN_DEBUGFS is defined
WMI FW log debug FS is created irrespective of WLAN_DEBUGFS is defined
or not. Make sure to only create WMI log debugfs only if WLAN_DEBUGFS
is defined.

Change-Id: I8d7d5ef160ce2674b3f01dc7afa3ac4761538cab
CRs-Fixed: 2066664
2017-07-18 23:46:22 -07:00
Rajeev Kumar
607d7cef03 qcacmn: Log QDF trace error/fatal messages using pr_err
Currently QDF trace error/fatal log messages are logged using
pr_info and bydefault these logs do not show up on console.
Hence log QDF trace error/fatal log messages using pr_err
such that bydefault these logs show up in console.

Change-Id: I220e5eb93ea21d01b948c40432179f294530ba0d
CRs-Fixed: 2070065
2017-07-18 23:35:13 -07:00
Rakesh Pillai
13146458f9 qcacmn: Fix CLANG warnings in Data path
implicit conversion from enumeration type 'A_STATUS' to different enumeration type 'QDF_STATUS'
implicit conversion from enumeration type 'QDF_STATUS' to different enumeration type 'A_STATUS'

CRs-Fixed: 2063344
Change-Id: Id3613d0b7fca58c3d94c5af59838b0bff3ef26de
2017-06-30 22:50:37 -07:00
Sandeep Puligilla
5c41638e14 qcacmn: set logging thread priority to default
Currently logging thread priority is equal to cds
thread which can cause scheduling issues to other
priority tasks when there are too many wlan debug
messages.
Set logging thread priority to default value.

Change-Id: I578ac062a69a34f7f4b7a2450e59e3f934704934
CRs-Fixed: 2047462
2017-06-30 15:50:14 -07:00
Tushnim Bhattacharyya
3db6b3cc4e qcacmn: Avoid buffer overread when retrieving cnss diag cmd
In cnss_diag_cmd_handler(), add length check for the command attribute.
This prevents possibility of a buffer overread or underrun.
Also add audit comment to express the intent why policy table
is not used in this API.

Change-Id: I023bbf3789498f315fd1bff8db8ef8257abb2b04
CRs-Fixed: 2058580
2017-06-27 18:12:59 -07:00
hqu
8c27253b0b qcacmn: Fix cnss diag log capture issue
Presently if the module name is changed to something other than wlan,
then MULTI_IF_NAME is defined and cnss diag log can't be captured
because the driver doesn't register itself to cnss_logger module.
Add fix to resolve this issue.

Also add free skb buffer operation for one case to sync with qcacld-2.0.

Change-Id: I815c5260fbc248e37e1ec0417ed5a8cc476ca8b7
CRs-Fixed: 2029803
2017-06-27 18:12:56 -07:00
Nachiket Kukade
741073c18d qcacmn: Sanity check on the incoming PTT cmd
In ptt_cmd_handler(), validate that the command attribute is of
minimum allowed size. This prevents parsing of rogue command
format. Also add audit comment to express the intent why policy
table is not used while using nla_parse API.

Change-Id: Ia2da6c88245190aad9a00110059fd6dcfda8a9fa
CRs-Fixed: 2058353
2017-06-19 12:43:24 -07:00
Dustin Brown
a4e0fd63cc qcacmn: Add connect wakelock reason
Add a wakelock reason for wifi connect to wake_lock_reason.

Change-Id: I907b6e0aebeceee1172604b8142ba40f5fbcdcd9
CRs-Fixed: 2059884
2017-06-14 15:53:37 -07:00
Ashish Kumar Dhanotiya
a55792d148 qcacmn: Race condition while using pkt log buffer
There can be a race condition if the pktlog_buf inside pktlog APIs,
is accessed simultanously from two threads.
To prevent this use mutex in the caller functions of pktlog APIs.

Change-Id: Iea6e3cd28a7a347c1753fe71d0646fb43ee184fa
CRs-Fixed: 2047150
2017-06-05 05:29:56 -07:00
Yu Wang
7250c75146 qcacmn: fix compile error in APPs when include wlan_nlink_common.h
wlan_nlink_common.h include linux/if.h, and linux/if.h
refers to 'struct sockaddr' which is defined in
linux/socket.h, and so it include linux/socket.h;
however, in userspace, linux/socket.h doesn't define
'sockaddr', so it will cause errors when compiling
userspace APP if it includs wlan_nlink_common.h.

Add macro __KERNEL__ to determine which header file
should be included:
For userspace, include net/if.h, it will include
sys/socket.h, which is for userspace;
for kernel space, include linux/if.h.

Change-Id: I3a2d8e6edb42871aa3599ef30fbb5d0d275764df
CRs-Fixed: 2054409
2017-05-31 23:37:58 -07:00
Yuanyuan Liu
da525ac7a3 qcacmn: send channel info to cnss daemon
Update wlan nlink message header file with channel info.
These info will be sent to cnss daemon and daemon will
pass it to LOWI client.

CRs-Fixed: 2006217
Change-Id: I125a519e188774bb099058ad5c385787800e5411
2017-05-26 07:50:50 -07:00
Adil Saeed Musthafa
5a0a7073fd qcacmn: Limiting a function declaration within CONFIG_MCL
Function dbglog_set_log_lvl needs to be commented out for WIN compilation
since enum DBG_LOG_LVL is not converged. Functions nl_srv_bcast and
nl_srv_is_initialized needs to be exported out for pushing FW Diag Log
events to user-space (cnss-diag)

CRs-Fixed: 2048651
Change-Id: I57a4bd3d78680b97bd75191ca58349abeb77240a
2017-05-22 09:39:52 -07:00
Manikandan Mohan
50ec704606 qcacmn: Update for check patch fixes
Fix for compilation errors after check patch fixes

Change-Id: Ib530d8d860440754f526ac93f5b12dbeab45b8aa
CRs-fixed: 2033001
2017-05-02 13:29:33 -07:00
Govind Singh
e3331b5b3c qcacmn: Remove ol_defines dependency from WMI layer
ol_defines header inclusion is invalid in WMI layer.
Remove the header inclusion by abstracting the dependency
with in WMI layer.

Change-Id: I5eb8624605cde20b516a1d8d0c823996c363e119
CRs-Fixed: 2023821
2017-04-28 07:42:08 -07:00
Ashish Kumar Dhanotiya
485d594ea1 qcacmn: Race condition while using pkt log buffer
There can be a race condition if two different threads use the
pkt log buffer at the same time. This issue can lead to Use-After-Free
of the packet log buffer.

To address this issue, protect the pktlog buffer access using spinlock.

Change-Id: I75d9375c9d85ac26dab1c06658d3f0fdbeb62935
CRs-Fixed: 2034486
2017-04-21 00:25:09 -07:00
Poddar, Siddarth
6bb2c1755f qcacmn: Return the error value if pktlog is not enabled
When pktlog enable gives an error as part of pktlog_release,
then return the error value.

Change-Id: I88289226d3dc933a46d6dba0cd6ee0b6d2abb2d5
CRs-Fixed: 2031287
2017-04-17 04:47:57 -07:00
Poddar, Siddarth
3a52bd7e6a qcacmn: Add support to collect pktlogs as part of bugreport
Add infrastructure in pktlog utils to collect pktlogs as part
of bug report generation. As part of this when pktlog read command
is received on host:
1. disable pktlog,
2. read pktlog,
3. clear pktlog buffer,and
4. Retain pktlog initial state

Change-Id: I67e2231c2897007b58fa42a4f931b3c35ad1f418
CRs-Fixed: 2031287
2017-04-17 04:47:56 -07:00
Selvaraj, Sridhar
e440caa3b3 qcacmn: Remove Logger socket app msg init/deinit changes
Now all host and firmware logs are sent to multicast group id's
and are not sent to particular process on userspace.

Change-Id: I6fc9540de1313d6a2ad3564090e5fed281f54a62
CRs-Fixed: 2024754
2017-04-13 10:32:09 +05:30
Poddar, Siddarth
5503c76aca qcacmn: Add iwpriv pktlog command to clear pktlog buffer
Implement iwpriv pktlog command to clear pktlog buffer.
This command is effective only if pktlog disable is issued previously.
This command needs one argument.
Command to use this feature : iwpriv wlan0 pktlog 4

Change-Id: I431169a10828b6cfcd21c7d8065f325c5eb8cbba
CRs-Fixed: 2031212
2017-04-12 01:14:08 -07:00
Srinivas Girigowda
17720241d4 qcacmn: Replace wlanLoggingFEToConsole to wlanLoggingToConsole
Currently the config ini "wlanLoggingFEToConsole" specifically talks
about enabling the logs to kmsg for FATAL and ERROR logs.

This cfg.ini item should not be specific to any log level, instead
it should just depict whether logging to console should be enabled
or not.  Hence change wlanLoggingFEToConsole to wlanLoggingToConsole.

Change-Id: I54e340ed58891175b53ac2d0137d15a2baea1c9f
CRs-Fixed: 2017427
2017-04-11 11:04:27 -07:00
Adil Saeed Musthafa
e3599a90e3 qcacmn: Remove all non-QDF directories from include paths
CRs-Fixed: 2026943
Change-Id: I6fa1ba02552b0c1d10c891471e072f9b235e6de8
2017-04-11 11:04:20 -07:00
Poddar, Siddarth
e0a0247ead qcacmn: Reduce the log spam in kmsg
Move the logs to appropriate log levels to avoid excessive
logging in kmsg. Also log the error reason and line number.

Change-Id: I08ed38861ff0b3d50861b957de34b1c62bc45afb
CRs-Fixed: 2024378
2017-04-03 13:47:20 -07:00
Tushnim Bhattacharyya
bb105f90d1 qcacmn: Include correct header file in epping module for policy manager
Include the correct header file in epping module for policy manager as
part of policy manager restructuring.

Change-Id: I115e1473fade0da0c6fc2c2ce9eda061c83dfe66
CRs-Fixed: 2009818
2017-03-30 16:26:15 -07:00
Rajeev Kumar
a85d8b4ad7 qcacmn: Fix SKB double free issue in nl_srv_ucast
If netlink_unicast() fails it already frees SKB buffer hence
do not double free the SKB when netlink_unicast() returns failure.

Change-Id: I2aa99c47f99c573abbd281c06ff58fcb38aad76b
CRs-Fixed: 2022800
2017-03-29 19:18:40 -07:00
Adil Saeed Musthafa
3318807269 qcacmn: Add shared print_ctrl_obj for qdf_trace_msg
At this point lot of Win code already uses QDF_TRACE macro. It will be
difficult to translate QDF_TRACE to qdf_trace_msg unless all the modules
(already using QDF_TRACE) make changes to use the qdf_print_ctrl
framework. Until that happens, we can have a shared object temporarily
so that wlan_log_to_user and hence user space logging of messages can be
in place

Change-Id: Ia149b86de8c2c36ed1c8508570b31db25f6bc41e
CRs-Fixed: 2018767
2017-03-28 13:50:42 -07:00
Naveen Rawat
e3e6f491d1 qcacmn: Add wrapper to call legacy userspace or GENL socket API
Add single wrapper API to send message over legacy userspace socket
or GENL socket.

Change-Id: I7cf46651d64467e77d85c147080d74a7470e42d6
CRs-Fixed: 2003488
2017-03-20 11:38:07 -07:00
Selvaraj, Sridhar
7c6b935c64 qcacmn: Add support to use generic netlink sockets for userspace apps
Currently user space communication functions[cnss diag, PTT socket app]
in host driver uses netlink user sockets which is a security concern from
Linux Android SE policies.

Add support for to use netlink family cld80211 which uses generic
netlink sockets.

Change-Id: Ia833249c1f312415e38563d90214979cea3d9f0e
CRs-Fixed: 2015931
2017-03-14 00:13:26 -07:00
Ashish Kumar Dhanotiya
55e1d72428 qcacmn: Fix wlan log svc leaks
There is a memory leak within wlan logging thread.

To address this issue free the memory at appropriate places.

Change-Id: I41c7756d6547c0bfa783a48ebc31c9f1ef0df5db
CRs-Fixed: 2011525
2017-03-09 15:33:02 -08:00
Sen, Devendra
0edbd8cc08 qcacmn: Add host diag events for wlan disconnection state
Add new diag events for the wlan disconnection these
events will be used to inform the wlan disconnection scenario.

Change-Id: I6bdddb2d3f45deca2dc92a94e2abf59f46d7c38f
CRs-Fixed: 1108380
2017-03-06 03:38:33 -08:00
Sen, Devendra
5f45cfa93c qcacmn: Add documentation for diag events
Add the diag documents for diag events

Change-Id: I331f2d89ffcb724c4e83d7f8f5de5402af95bd3a
CRs-Fixed: 1114116
2017-03-06 03:38:31 -08:00
Nishank Aggarwal
7aad6f68c7 qcacmn: Change default firmware log levels
Change default log level for all firmware modules and
also per module with a specific log level.

Change-Id: I33275f2737e0e56daea4e2edd8debca8016f1ed0
CRs-Fixed: 2013439
2017-03-04 16:57:13 +05:30
Srinivas Girigowda
60644c29e6 qcacmn: Add core\utils directory and files to qcacmn
As a part of UMAC convergence, move the core\utils logging to qcacmn.

CRs-Fixed: 1109855
Change-Id: I499a392f74f3e52e99df4d03e4a27bce6cf5be7c
2017-02-17 22:13:07 -08:00