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

Commit f37f5fdc authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "kernel: trigger lmkd specific triggers during emergency"

parents 49e6a0e1 a632490c
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -135,4 +135,5 @@ extern int sysctl_reap_mem_on_sigkill;

/* calls for LMK reaper */
extern void add_to_oom_reaper(struct task_struct *p);
#define ULMK_MAGIC "lmkd"
#endif /* _INCLUDE_LINUX_OOM_H */
+3 −0
Original line number Diff line number Diff line
@@ -123,6 +123,9 @@ struct psi_trigger {

	/* Refcounting to prevent premature destruction */
	struct kref refcount;

	/* Task that created the trigger */
	char comm[TASK_COMM_LEN];
};

struct psi_group {
+4 −0
Original line number Diff line number Diff line
@@ -140,6 +140,7 @@
#include <linux/file.h>
#include <linux/poll.h>
#include <linux/psi.h>
#include <linux/oom.h>
#include "sched.h"

#define CREATE_TRACE_POINTS
@@ -603,6 +604,8 @@ void psi_emergency_trigger(void)
		return;

	list_for_each_entry(t, &group->triggers, node) {
		if (strcmp(t->comm, ULMK_MAGIC))
			continue;
		trace_psi_event(t->state, t->threshold);

		/* Generate an event */
@@ -1112,6 +1115,7 @@ struct psi_trigger *psi_trigger_create(struct psi_group *group,
	t->last_event_time = 0;
	init_waitqueue_head(&t->event_wait);
	kref_init(&t->refcount);
	get_task_comm(t->comm, current);

	mutex_lock(&group->trigger_lock);

+0 −2
Original line number Diff line number Diff line
@@ -52,8 +52,6 @@
#define CREATE_TRACE_POINTS
#include <trace/events/oom.h>

#define ULMK_MAGIC "lmkd"

int sysctl_panic_on_oom =
IS_ENABLED(CONFIG_DEBUG_PANIC_ON_OOM) ? 2 : 0;
int sysctl_oom_kill_allocating_task;