pass: pmqos: Prevent from accessing variables before initialization 90/116790/5
authorWook Song <wook16.song@samsung.com>
Tue, 28 Feb 2017 06:54:07 +0000 (15:54 +0900)
committerWook Song <wook16.song@samsung.com>
Thu, 9 Mar 2017 05:32:45 +0000 (14:32 +0900)
This patch modifies the callback function of DEVICE_NOTIFIER_PMQOS
notifier to prevent from accessing variables before their
initialization.

Change-Id: Idc8a760ec8a6a53a1cfbc34f17626ea6c186ed57
Signed-off-by: Wook Song <wook16.song@samsung.com>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
src/pass/pass-pmqos.c

index 20be7e48a237afdab30a4c9af3f7418498750a02..3929dffb27ee321ccb8d61929c3a6b349e4eb94c 100644 (file)
@@ -95,9 +95,9 @@ static int find_scenario_index(struct pass_scenario_policy *scenario,
 #define MAX(a,b)       (a > b ? a : b)
 int pass_notifier_pmqos_func(struct pass_policy *policy, void *data)
 {
-       struct pass_resource *pass_res = to_pass_resource(policy);
-       struct pass_conf_data *cdata = &pass_res->cdata;
-       struct pass_scenario_policy *scenario = &policy->scenario;
+       struct pass_resource *pass_res;
+       struct pass_conf_data *cdata;
+       struct pass_scenario_policy *scenario;
        struct pass_scenario *scn = NULL;
        enum pass_state locked = PASS_UNUSED;
        char name[PASS_NAME_LEN] = {""};
@@ -109,6 +109,10 @@ int pass_notifier_pmqos_func(struct pass_policy *policy, void *data)
        if (!is_pmqos_enabled(policy))
                return 0;
 
+       pass_res = to_pass_resource(policy);
+       cdata = &pass_res->cdata;
+       scenario = &policy->scenario;
+
        /*
         * Parse scenario name(data) whether to include 'Lock' or 'Unlock'
         * string and divide correct scenario name.