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

Commit 0f27b6b1 authored by Linux Build Service Account's avatar Linux Build Service Account
Browse files

Merge aeca58ea on remote branch

Change-Id: I3326a4f51c834f4bb58f00f5f1878c51eac54e09
parents b7cf580e aeca58ea
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -919,6 +919,7 @@ EXPORT_SYMBOL(qmi_rmnet_qos_exit_post);
static struct workqueue_struct  *rmnet_ps_wq;
static struct rmnet_powersave_work *rmnet_work;
static bool rmnet_work_quit;
static bool rmnet_work_inited;
static LIST_HEAD(ps_list);

struct rmnet_powersave_work {
@@ -1148,6 +1149,7 @@ void qmi_rmnet_work_init(void *port)
	rmnet_work_quit = false;
	qmi_rmnet_work_set_active(rmnet_work->port, 1);
	queue_delayed_work(rmnet_ps_wq, &rmnet_work->work, PS_INTERVAL);
	rmnet_work_inited = true;
}
EXPORT_SYMBOL(qmi_rmnet_work_init);

@@ -1156,7 +1158,7 @@ void qmi_rmnet_work_maybe_restart(void *port)
	struct qmi_info *qmi;

	qmi = (struct qmi_info *)rmnet_get_qmi_pt(port);
	if (unlikely(!qmi))
	if (unlikely(!qmi || !rmnet_work_inited))
		return;

	if (!test_and_set_bit(PS_WORK_ACTIVE_BIT, &qmi->ps_work_active))
@@ -1172,6 +1174,7 @@ void qmi_rmnet_work_exit(void *port)
	rmnet_work_quit = true;
	synchronize_rcu();

	rmnet_work_inited = false;
	alarm_cancel(&rmnet_work->atimer);
	cancel_delayed_work_sync(&rmnet_work->work);
	destroy_workqueue(rmnet_ps_wq);