#
8cfe6b10 |
| 16-Jan-2023 |
Asutosh Mohapatra <quic_asutmoha@quicinc.com> |
qcacmn: Trigger recovery incase of scheduler watchdog timeout
Trigger recovery instead of the apps panic incase of scheduler watchdog timeout, so that the current logs are captured to analyze the is
qcacmn: Trigger recovery incase of scheduler watchdog timeout
Trigger recovery instead of the apps panic incase of scheduler watchdog timeout, so that the current logs are captured to analyze the issue.
Change-Id: I44a61bc5630c4866b9d9b18f7a7ba6221ca6e355 CRs-Fixed: 3312328
show more ...
|
#
901120c0 |
| 20-Oct-2022 |
sandhu <quic_sandhu@quicinc.com> |
qcacmn: Fix incompatible function pointer assignment
Fix incompatible function pointer assignment. Define a wrapper around mc timer callbacks to make them compatible with standard scheduler message
qcacmn: Fix incompatible function pointer assignment
Fix incompatible function pointer assignment. Define a wrapper around mc timer callbacks to make them compatible with standard scheduler message callback function signatures.
Change-Id: I07829680d1758ccbd53e8b1fe10b0e30e100a2c6 CRs-Fixed: 3305719
show more ...
|
#
45c28558 |
| 30-Sep-2022 |
Jeff Johnson <quic_jjohnson@quicinc.com> |
qcacmn: scheduler: Fix misspellings
Fix misspellings in scheduler/...
Change-Id: I39b11d5a3755c84cf53cc5dffc995a8ea531f36a CRs-Fixed: 3304691
|
#
2888b71d |
| 30-Aug-2022 |
abhinav kumar <quic_abhikuma@quicinc.com> |
qcacmn: Save jiffies value for QDF timer
Save the jiffies value in a per-timer context in qdf_mc_timer_t while processing qdf_mc_timer_start and scheduler_mc_timer_callback. It will help the debugge
qcacmn: Save jiffies value for QDF timer
Save the jiffies value in a per-timer context in qdf_mc_timer_t while processing qdf_mc_timer_start and scheduler_mc_timer_callback. It will help the debugger to know the exact time gap between the start and stop/expiry of the QDF timer.
Change-Id: Ia79011971184de9390632253417ee35dc7d26cf8 CRs-Fixed: 3283746
show more ...
|
#
d0c05845 |
| 25-Jul-2022 |
Asutosh Mohapatra <quic_asutmoha@quicinc.com> |
qcacmn: Handle gracefully if scheduler cb is not registered
Currently when firmware crashes during driver load, message queue handlers for scheduler context are not registered. While handling the FW
qcacmn: Handle gracefully if scheduler cb is not registered
Currently when firmware crashes during driver load, message queue handlers for scheduler context are not registered. While handling the FW down event, driver posts the message to scheduler queue. Since the queue handler is not registered, it results in crash.
To address this issue, handle the msg gracefully and return error in case callback is not registered.
CRs-Fixed: 3251983 Change-Id: I5dd55e701cf332153dca1f6678271506b9690f6e
show more ...
|
#
2f4b444f |
| 25-Sep-2021 |
Vivek <vchettri@codeaurora.org> |
qcacmn: Disable panic for scheduler timeouts
When a scheduler message starts porcessing,we start the scheduler watchdog timer, and in few cases when the system get under heavy load processing taskle
qcacmn: Disable panic for scheduler timeouts
When a scheduler message starts porcessing,we start the scheduler watchdog timer, and in few cases when the system get under heavy load processing tasklets and bottom halves, and the scheduler message is preempted, its not getting a chance to run and the scheduler watchdog timer is triggered and it causes a panic.
Since the scheduler watchdog timmer is less than the kernel RCU timer, were are having scenarios, where because of the scheduler watchdog panic, the RCU stall is masked.
So in case of scheduler watchdog we wanted to just print the information about the message being processed by the scheduler and not panic.
Change-Id: I509abcd8cd8d2e863dc3f2370ceaa70e0d4f244f CRs-Fixed: 3004176
show more ...
|
#
97f44cd3 |
| 09-Dec-2020 |
Vivek <vchettri@codeaurora.org> |
qcacmn: Add API to configure scheduler watchdog timeout
The scheduler watchdog timeout is currently fixed at 10secs. There are few customer use cases, where the CPU is busy for sometime and the sche
qcacmn: Add API to configure scheduler watchdog timeout
The scheduler watchdog timeout is currently fixed at 10secs. There are few customer use cases, where the CPU is busy for sometime and the scheduler message processing is taking longer than the coinfigured watchdog timeout value.
Add a new API to be able to configure this value different than the default as per the requirement.
CRs-Fixed: 2834194 Change-Id: I976f1f0ad17f09cf3960f99ad80226d775b8b2f2
show more ...
|
#
45a38684 |
| 11-Aug-2020 |
Arun Kumar Khandavalli <akhandav@codeaurora.org> |
qcacmn: Check if the scheduler thread is already flushed
During the module initialization the scheduler thread and the init thread run in parallel if there is a failure in the error path, the schedu
qcacmn: Check if the scheduler thread is already flushed
During the module initialization the scheduler thread and the init thread run in parallel if there is a failure in the error path, the scheduler thread is not aware and still sending the messages to firmware resulting in system instability. So, Disable the scheduler as soon as there is an error in the init path and the same scheduler thread in the normal existing error path.
If the scheduler_disable is called multiple times the infinite wait for result will get the init thread struck.
Change-Id: I39782bc88d49dac2e2138c235c4666ea4f4f2faf CRs-Fixed: 2754023
show more ...
|
#
a86b23ee |
| 15-May-2020 |
Lincoln Tran <linctran@codeaurora.org> |
qcacmn: Update scheduler_msg callback type
This fixes a CFI failure in callback assignment.
Currently, the callbacks in scheduler_msg are void function pointers. Update them to have a defined type
qcacmn: Update scheduler_msg callback type
This fixes a CFI failure in callback assignment.
Currently, the callbacks in scheduler_msg are void function pointers. Update them to have a defined type as scheduler_msg_process_fn_t to catch type mismatch during compilation.
Other changes to conform to this new type include: 1. Cast callback to qdf_mc_timer_callback_t when referencing, and back when assigning 2. Cast wlan_serialization_generic_timer_cb to take fit into scheduler_msg 3. Cast target_if_vdev_mgr_rsp_timer_cb to fit into scheduler_msg
Change-Id: I052bc54826d377ae92f5bcc80ca08afb6f5e01e3 CRs-fixed: 2719975
show more ...
|
#
6d768494 |
| 25-Jun-2020 |
Arun Kumar Khandavalli <akhandav@codeaurora.org> |
qcacmn: Ignore sched watchdog timeout incase of recovery
For some targets, whenever the recovery is triggered in the scheduler thread context, in the same context the firmware dump collection could
qcacmn: Ignore sched watchdog timeout incase of recovery
For some targets, whenever the recovery is triggered in the scheduler thread context, in the same context the firmware dump collection could also happen and can more time than the watchdog timeout for the same.
So check and ignore watchdog timeout when the recovery is already inprogress.
Change-Id: I0e74e73139a83c6361407fe2eef8d6d0cf2a5d8c CRs-Fixed: 2718984
show more ...
|
#
bea437e2 |
| 07-Jan-2020 |
Vivek <vchettri@codeaurora.org> |
qcacmn: Unified scheduler watchdog handler implementation
The scheduler watchdog timer handler currently either prints error or prints error and panics based on CONFIG_SLUB_DEBUG_ON.
Considering th
qcacmn: Unified scheduler watchdog handler implementation
The scheduler watchdog timer handler currently either prints error or prints error and panics based on CONFIG_SLUB_DEBUG_ON.
Considering the panic through QDF_DEBUG_PANIC is configurable and is disabled on relevant builds, we can just have one version of the function and depend on QDF macro for panic and dependency on CONFIG_SLUB_DEBUG_ON is redundant
Change the default log levels from none to fatal for scheduler.
Change-Id: If588455ea2779311eb86bb39b3ab0f7fc67b6ccc CRs-Fixed: 2593790
show more ...
|
#
11f5a63a |
| 30-Oct-2019 |
Naga <nbethala@codeaurora.org> |
qcacmn: Export scheduler_post_message_debug api
Add support to export scheduler_post_message_debug API to be used in wmi_unified.c
Change-Id: If18741f1973724453f0b2de12e133230924a2e52 CRs-Fixed: 25
qcacmn: Export scheduler_post_message_debug api
Add support to export scheduler_post_message_debug API to be used in wmi_unified.c
Change-Id: If18741f1973724453f0b2de12e133230924a2e52 CRs-Fixed: 2555961
show more ...
|
#
ad85c389 |
| 17-Jan-2019 |
Ashish Kumar Dhanotiya <adhanoti@codeaurora.org> |
qcacmn: Update driver timer APIs according to kernel 4.19
There are some changes to timer APIs in latest kernel, update driver APIs accordingly to invoke correct kernel APIs for timer functionalitie
qcacmn: Update driver timer APIs according to kernel 4.19
There are some changes to timer APIs in latest kernel, update driver APIs accordingly to invoke correct kernel APIs for timer functionalities.
Change-Id: Ie017c8b1ef8237ca34f696c23509519a1187167c CRs-fixed: 2383574
show more ...
|
#
6e2fed8f |
| 30-Nov-2018 |
Santosh Anbu <sanbu@codeaurora.org> |
qcacmn: Add scheduler mq handler for mlme
Add mlme message queue handler as the call back for non scan commands getting activated in the scheduler context. Add cmd already exists enum to be returned
qcacmn: Add scheduler mq handler for mlme
Add mlme message queue handler as the call back for non scan commands getting activated in the scheduler context. Add cmd already exists enum to be returned if the command already exists in the serialization queue.
Change-Id: I24fe453ffddbd4341459874458f11688adebc740 CRs-Fixed: 2377219
show more ...
|
#
1397a33f |
| 19-Dec-2018 |
Madhvapathi Sriram <msriram@codeaurora.org> |
qcacmn: Optimize schedule msg post error logging
This change will reduce the repeated logging of scheduler posts
Change-Id: I26c297d2d3def55377f062a2de94f61cf09522de CRs-Fixed: 2373005
|
#
1f55ed1a |
| 16-Jan-2019 |
Chaitanya Kiran Godavarthi <cgodav@codeaurora.org> |
qcacmn: Check create thread return value in scheduler
Check for NULL in scheduler create thread return value
Change-Id: I00b1e58115eb70ba0074bb8e147445cf43296a66
|
#
8b7e2ee3 |
| 28-Aug-2018 |
gaurank kathpalia <gkathpal@codeaurora.org> |
qcacmn: Add src, and dst id support in SCHEDULER
In the scheduler_post_message, src_id is now added to know the source module of the msg. the present scheduler doesn't know about the same which is s
qcacmn: Add src, and dst id support in SCHEDULER
In the scheduler_post_message, src_id is now added to know the source module of the msg. the present scheduler doesn't know about the same which is scheduler_post_msg
Replace the scheduler_post_msg with scheduler_post_message
Change-Id: I795f5d714eebcdbb275daae782ffa6f4d8e7e950 CRs-Fixed: 2306019
show more ...
|
#
5e652ebb |
| 10-Sep-2018 |
gaurank kathpalia <gkathpal@codeaurora.org> |
qcacmn: Add tracing in scheduler_post_msg_by_priority
Trace every msg, and print its src, and dest in scheduler_post_msg_by_priority for ML logging
Print to F3, and trace it too
Change-Id: I64a214
qcacmn: Add tracing in scheduler_post_msg_by_priority
Trace every msg, and print its src, and dest in scheduler_post_msg_by_priority for ML logging
Print to F3, and trace it too
Change-Id: I64a2142bf3277e85e970132933f2157b95dad68d CRs-Fixed: 2306043
show more ...
|
#
302a1d97 |
| 03-Sep-2018 |
gaurank kathpalia <gkathpal@codeaurora.org> |
qcacmn: Add support for que_id in scheduler
Currently the scheduler cant differentiate between the destination, and que to which it has to post the message.
Add que_id, to differentiate between the
qcacmn: Add support for que_id in scheduler
Currently the scheduler cant differentiate between the destination, and que to which it has to post the message.
Add que_id, to differentiate between the destination and que.
Change-Id: I94f81cb4b976dba4571f9cd0d6e059dc72024fcd CRs-Fixed: 2308108
show more ...
|
#
6e4b9c54 |
| 08-Aug-2018 |
gaurank kathpalia <gkathpal@codeaurora.org> |
qcacmn: Add support for src, dest in scheduler
Currently the scheduler is unaware of the source module which posts the message to another layer.
To trace the src, dest, and the message under ML log
qcacmn: Add support for src, dest in scheduler
Currently the scheduler is unaware of the source module which posts the message to another layer.
To trace the src, dest, and the message under ML logging, modify current infra, to include the src, dest in the qip argument of the API scheduler_post_msg_by_priority
Change-Id: Ia234f60cc33fcc37ab741c462052a6e50993e3bd CRs-Fixed: 2300537
show more ...
|
#
87a8e445 |
| 17-Aug-2018 |
Vignesh Viswanathan <viswanat@codeaurora.org> |
qcacmn: Drop beacon/probe frames posted on Scan Queue if queue is full
Drop beacon/probe frames before posting on Scan queue if the queue already has too many beacon/probes to process.
Also add sch
qcacmn: Drop beacon/probe frames posted on Scan Queue if queue is full
Drop beacon/probe frames before posting on Scan queue if the queue already has too many beacon/probes to process.
Also add scheduler API to get the queue size given the module ID.
Change-Id: I9153c7e77e74377863774b68e8163839e992358d CRs-Fixed: 2298584
show more ...
|
#
8afde5a8 |
| 16-Jul-2018 |
Dustin Brown <dustinb@codeaurora.org> |
qcacmn: Reduce/remove scheduler logs
As part of the effort to reduce overly verbose and excessive logging driver wide, reduce or remove logs in scheduler as much as possible.
Change-Id: I1e45c43931
qcacmn: Reduce/remove scheduler logs
As part of the effort to reduce overly verbose and excessive logging driver wide, reduce or remove logs in scheduler as much as possible.
Change-Id: I1e45c439315e81d9ff05e1688fe690d0ca30e097 CRs-Fixed: 2280337
show more ...
|
#
fe41df9c |
| 27-Jun-2018 |
Dustin Brown <dustinb@codeaurora.org> |
qcacmn: Move panic messages into QDF_DEBUG_PANIC
QDF_DEBUG_PANIC has recently gained a reason parameter. Move instance of logging followed immediately by QDF_DEBUG_PANIC to single calls.
Change-Id:
qcacmn: Move panic messages into QDF_DEBUG_PANIC
QDF_DEBUG_PANIC has recently gained a reason parameter. Move instance of logging followed immediately by QDF_DEBUG_PANIC to single calls.
Change-Id: Ifc00be410621005e8494074ed00b1b7e44cc6a03 CRs-Fixed: 2271769
show more ...
|
#
c7ee85c4 |
| 10-Mar-2018 |
Dustin Brown <dustinb@codeaurora.org> |
qcacmn: Use qdf_flex_mem for scheduler messages
Currently, the scheduler thread keeps a large, pre-allocated array of messages for use in message posting. The vast majority of the time, however, the
qcacmn: Use qdf_flex_mem for scheduler messages
Currently, the scheduler thread keeps a large, pre-allocated array of messages for use in message posting. The vast majority of the time, however, the scheduler thread has zero or one messages pending in the queue. This leads to a huge memory overhead for nominal driver operation.
Replace the current pre-allocated scheduler message pool with a hybrid static/dynamic approach.
Change-Id: Ie942bacfef43edf142a9f35ad0309069096cda90 CRs-Fixed: 2204172
show more ...
|
#
6ecd284e |
| 04-Apr-2018 |
Vignesh Viswanathan <viswanat@codeaurora.org> |
qcacmn: Add handlers for scan queue in scheduler core
Add scheduler message handler function for QDF_MODULE_ID_SCAN queue.
Also post scan beacon/probe frames and scan events to SCAN queue instead o
qcacmn: Add handlers for scan queue in scheduler core
Add scheduler message handler function for QDF_MODULE_ID_SCAN queue.
Also post scan beacon/probe frames and scan events to SCAN queue instead of TARGET_IF queue.
Change-Id: I94e3ea2f0eb5c9592f5cfcd91738778fa65ba815 CRs-Fixed: 2214554
show more ...
|