Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 09b1cf72 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "soc: qcom: Fix identified corner cases."

parents c84b0bb2 7a035ee9
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -154,6 +154,7 @@ static void early_domain_work(struct work_struct *work)
		msleep(delay);
		delay = (delay > max_delay ? max_delay : delay + 20);
	}
	early_domain_enabled = false;
	free_reserved_lk_mem(core_data->lk_pool_paddr, core_data->lk_pool_size);
	free_reserved_lk_mem(core_data->early_domain_shm,
				core_data->early_domain_shm_size);
@@ -176,10 +177,11 @@ static int early_domain_cpu_notifier(struct notifier_block *self,
	cpu = (long)hcpu;
	switch (action & ~CPU_TASKS_FROZEN) {
	case CPU_UP_PREPARE:
		if (cpumask_test_cpu(cpu, &core_data->cpumask))
		if (cpumask_test_cpu(cpu, &core_data->cpumask)) {
			pr_err("Early domain services are running on cpu%d\n"
				, cpu);
			break;
		}
	default:
		notifier = NOTIFY_OK;
		break;
@@ -195,7 +197,7 @@ static int init_early_domain_data(struct early_domain_core *core_data)

	cpumask_clear(&core_data->cpumask);
	cpumask = (unsigned long)core_data->pdata->cpumask;
	for_each_set_bit(cpu, &cpumask, sizeof(cpumask_t))
	for_each_set_bit(cpu, &cpumask, sizeof(cpumask))
		cpumask_set_cpu(cpu, &core_data->cpumask);

	memset(&core_data->ed_qos_request, 0,
@@ -325,6 +327,7 @@ static int early_domain_remove(struct platform_device *pdev)
	pm_qos_remove_request(&core_data->ed_qos_request);
	__pm_relax(&core_data->ed_wake_lock);
	unregister_cpu_notifier(&core_data->ed_notifier);
	early_domain_enabled = false;
	kfree(core_data);
	return 0;
}