From: steven chen <chenste@linux.microsoft.com>
To: linux-integrity@vger.kernel.org
Cc: zohar@linux.ibm.com, roberto.sassu@huawei.com,
dmitry.kasatkin@gmail.com, eric.snowberg@oracle.com,
corbet@lwn.net, serge@hallyn.com, paul@paul-moore.com,
jmorris@namei.org, linux-security-module@vger.kernel.org,
anirudhve@linux.microsoft.com, chenste@linux.microsoft.com,
gregorylumen@linux.microsoft.com, nramas@linux.microsoft.com,
sushring@linux.microsoft.com, linux-doc@vger.kernel.org
Subject: [PATCH v3 3/3] ima: add new critical data record to measure log trimming
Date: Mon, 5 Jan 2026 18:07:12 -0800 [thread overview]
Message-ID: <20260106020713.3994-4-chenste@linux.microsoft.com> (raw)
In-Reply-To: <20260106020713.3994-1-chenste@linux.microsoft.com>
Add a new critical data record to measure the trimming event when
ima event records are deleted for this time.
If all IMA event logs are saved in the userspace, use this type of
logs to get total numbers of records deleted from beginning.
Signed-off-by: steven chen <chenste@linux.microsoft.com>
---
security/integrity/ima/ima_fs.c | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/security/integrity/ima/ima_fs.c b/security/integrity/ima/ima_fs.c
index 67ff0cfc3d3f..6d3d34d07b2b 100644
--- a/security/integrity/ima/ima_fs.c
+++ b/security/integrity/ima/ima_fs.c
@@ -364,6 +364,22 @@ static const struct file_operations ima_ascii_measurements_ops = {
.release = ima_measurements_release,
};
+static void ima_measure_trim_event(const long number_logs)
+{
+ char ima_log_trim_event[IMA_LOG_TRIM_EVENT_LEN];
+ struct timespec64 ts;
+ u64 time_ns;
+ int n;
+
+ ktime_get_real_ts64(&ts);
+ time_ns = (u64)ts.tv_sec * 1000000000ULL + ts.tv_nsec;
+ n = scnprintf(ima_log_trim_event, IMA_LOG_TRIM_EVENT_LEN,
+ "time= %llu; number= %lu;", time_ns, number_logs);
+
+ ima_measure_critical_data("ima_log_trim", "trim ima event logs",
+ ima_log_trim_event, n, false, NULL, 0);
+}
+
static int ima_log_trim_open(struct inode *inode, struct file *file)
{
bool write = !!(file->f_mode & FMODE_WRITE);
@@ -407,6 +423,8 @@ static ssize_t ima_log_trim_write(struct file *file,
goto out;
trimcount = ret;
+ if (trimcount > 0)
+ ima_measure_trim_event(trimcount);
ret = datalen;
out:
--
2.43.0
prev parent reply other threads:[~2026-01-06 2:07 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-06 2:07 [PATCH v3 0/1] Trim N entries of IMA event logs steven chen
2026-01-06 2:07 ` [PATCH v3 1/3] ima: make ima event log trimming configurable steven chen
2026-01-06 2:07 ` [PATCH v3 2/3] ima: trim N IMA event log records steven chen
2026-01-07 10:06 ` Roberto Sassu
2026-01-06 2:07 ` steven chen [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260106020713.3994-4-chenste@linux.microsoft.com \
--to=chenste@linux.microsoft.com \
--cc=anirudhve@linux.microsoft.com \
--cc=corbet@lwn.net \
--cc=dmitry.kasatkin@gmail.com \
--cc=eric.snowberg@oracle.com \
--cc=gregorylumen@linux.microsoft.com \
--cc=jmorris@namei.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-integrity@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=nramas@linux.microsoft.com \
--cc=paul@paul-moore.com \
--cc=roberto.sassu@huawei.com \
--cc=serge@hallyn.com \
--cc=sushring@linux.microsoft.com \
--cc=zohar@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).