Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

REFPLTB-3230 REFPLTB-3233 REFPLTB-3234: Potential memory leak at PSM_Get_Record_Value2 call #75

Closed
wants to merge 13 commits into from

Conversation

pganna856
Copy link
Contributor

Reason for change: Added code to release the memory.
Test Procedure: 1) Added the change suggested in the ticket to generate the leak in the api which is calling during the service start.
2) Valgrind command is added in service file as given below,
    ExecStart=/bin/sh -c 'valgrind --tool=memcheck --leak-check=yes --show-reachable=yes --num-callers=20 --track-fds=yes /usr/bin/OneWifi -subsys eRT.'
3) Increased the file size in journald.conf file
4) Stopped the service using systemctl command, it will be automatically try to restart using rpiwifiinitialized.path
5) Executed "journalctl -u onewifi" immediately with the stop command, redirected to some text file in the /tmp folder
   Console command: "systemctl stop onewifi.service;journalctl -u onewifi > /tmp/leak_report.txt"
Risks: None

Signed-off-by: Prabhudas Gannavarapu <[email protected]>

Sanjay Venkatesan and others added 13 commits January 2, 2025 15:17
Impacted Platforms: All rdkb platforms

Reason for change: Used monitor variable instead of core variable in whix
to fetch the vap enable status.

Test Procedure:
1. Load the device with above mentioned build.

2. Change the log interval to 15mins using below,
   dmcli eRT setv Device.DeviceInfo.X_RDKCENTRAL-COM_WIFI_TELEMETRY.LogInterval int 300.

3.Check the mesh backhaul status for 13th and 14th vap using,
   dmcli eRT getv Device.WiFi.SSID.13.Status
   dmcli eRT getv Device.WiFi.SSID.14.Status

4. Change the enable value of those backhaul vaps in Wifi_VIF_Config table by,
   /usr/opensync/tools/ovsh U Wifi_VIF_Config -w if_name==wl1.7 enabled:=true
   /usr/opensync/tools/ovsh U Wifi_VIF_Config -w if_name==wl0.7 enabled:=true

5. Check the status for mesh backhaul vaps again by following step 3.

6. Finally check for the WIFI_VAP_PERCENT_UP marker value contains correct value for the mesh backhaul vaps 13 and 14
   as per the changed enable value in /rdklogs/logs/wifihealth.txt file.

7. If the marker doesn't contain the enable value as per the change , then issue is reproduced.

Risks: Low

Priority: P2

Change-Id: Id4a3c589b691b9177ac24fdbd14d19decadcc941
Signed-off-by:[email protected]
RDKB-58273: VAP UP PERCENT reports incorrect value for offline vaps.
* RDKB-57995: [Onewifi] OneWifi memory Optimization

Reason for change: OneWifi memory Optimization
                   and few DML API Abstraction.
Below APIs are Abstracted:
getDeviceMac
sendWebpaMsg
push_data_to_ssp_queue
getPartnerId
Get_PSM_Record_Status
Set_PSM_Record_Status

Test Procedure: 1) Load OneWifi build.
                2) Test Basic sanity.
                3) Test Levl and csi feature.

Risks: Low
Priority: P1

Change-Id: I10400d5b204d4402a6cc2caa90f60a8f2c6671da
Signed-off-by: [email protected]

* RDKB-57995: [Onewifi] OneWifi memory Optimization

Reason for change: OneWifi memory Optimization
                   and few DML API Abstraction.
Below APIs are Abstracted:
getDeviceMac
sendWebpaMsg
push_data_to_ssp_queue
getPartnerId
Get_PSM_Record_Status
Set_PSM_Record_Status

Test Procedure: 1) Load OneWifi build.
                2) Test Basic sanity.
                3) Test Levl and csi feature.

Risks: Low
Priority: P1

Change-Id: I10400d5b204d4402a6cc2caa90f60a8f2c6671da
Signed-off-by: [email protected]

---------

Signed-off-by: [email protected]
…ntral#71)

Impacted Platforms:
OneWifi platforms

Reason for change: Implement Rbus functions for TCM as part of Epic

Test Procedure: Load the build and test the changes as per ACs

Risks: Low

Signed-off-by:[email protected]
RDKB-58301 Remove remaining pending monitor depend

Impacted Platforms:
All OneWifi Platform

Reason for change: WHiX app framework should not have any dependancy
with monitor.

Test Procedure: WHiX app should collect stats and work as expected.

Priority: P1
Address compilation issues seen in comcast jenkins build
Address few more compilation issue seen on jenkins build.
When the feature flag FEATURE_SUPPORT_ECOPOWERDOWN is enabled,
compiler error is seen in webconfig_hal_single_radio_apply function.
This commit addresses that.
Fix compile error seen in webconfig_hal_single_radio_apply
…Get_Record_Value2 call

    Reason for change: Added code to release the memory.
    Test Procedure: 1) Added the change suggested in the ticket to generate the leak in the api which is calling during the service start.
    2) Valgrind command is added in service file as given below,
        ExecStart=/bin/sh -c 'valgrind --tool=memcheck --leak-check=yes --show-reachable=yes --num-callers=20 --track-fds=yes /usr/bin/OneWifi -subsys eRT.'
    3) Increased the file size in journald.conf file
    4) Stopped the service using systemctl command, it will be automatically try to restart using rpiwifiinitialized.path
    5) Executed "journalctl -u onewifi" immediately with the stop command, redirected to some text file in the /tmp folder
       Console command: "systemctl stop onewifi.service;journalctl -u onewifi > /tmp/leak_report.txt"
    Risks: None

    Signed-off-by: Prabhudas Gannavarapu <[email protected]>
return strValue;
strncpy(strVal, strValue, (strlen(strValue) + 1));
((CCSP_MESSAGE_BUS_INFO *)bus_handle)->freefunc(strValue);
return strVal;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a return of locally allocated static string. This will go out of context when the function returns and the caller might be accessing invalid memory.

return strValue;
strncpy(strVal, strValue, (strlen(strValue) + 1));
((CCSP_MESSAGE_BUS_INFO *)bus_handle)->freefunc(strValue);
return strVal;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment as above

narendradandu
narendradandu previously approved these changes Jan 9, 2025
@CLAassistant
Copy link

CLAassistant commented Jan 28, 2025

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
7 out of 8 committers have signed the CLA.

✅ Aniket0606
✅ vivianecordeiro-sky
✅ amarnathhullur
✅ HarshavardhanP1
✅ pganna856
✅ narendradandu
✅ KarthikeyanNanjundan
❌ Sanjay Venkatesan


Sanjay Venkatesan seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

@narendradandu
Copy link
Contributor

close this, there is already #76 for this.

@pganna856 pganna856 closed this Feb 6, 2025
@pganna856 pganna856 deleted the mem_leak_3230_33_34 branch February 6, 2025 18:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants