diff options
| author | Jeff Layton <jlayton@kernel.org> | 2026-03-04 18:32:32 +0300 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2026-03-06 16:31:26 +0300 |
| commit | 125dfa218134df7cc112667e92984de9d8cd0bf6 (patch) | |
| tree | 4c3fb6fbb1206c591bc2f747610281d7f9602da0 /include/linux | |
| parent | 96fefcabf340fcf8b3208dcd8685961955a66040 (diff) | |
| download | linux-125dfa218134df7cc112667e92984de9d8cd0bf6.tar.xz | |
audit: widen ino fields to u64
inode->i_ino is being widened from unsigned long to u64. The audit
subsystem uses unsigned long ino in struct fields, function parameters,
and local variables that store inode numbers from arbitrary filesystems.
On 32-bit platforms this truncates inode numbers that exceed 32 bits,
which will cause incorrect audit log entries and broken watch/mark
comparisons.
Widen all audit ino fields, parameters, and locals to u64, and update
the inode format string from %lu to %llu to match.
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Link: https://patch.msgid.link/20260304-iino-u64-v3-2-2257ad83d372@kernel.org
Acked-by: Paul Moore <paul@paul-moore.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/audit.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/audit.h b/include/linux/audit.h index b642b5faca65..b915aaa7ed73 100644 --- a/include/linux/audit.h +++ b/include/linux/audit.h @@ -15,7 +15,7 @@ #include <uapi/linux/audit.h> #include <uapi/linux/fanotify.h> -#define AUDIT_INO_UNSET ((unsigned long)-1) +#define AUDIT_INO_UNSET ((u64)-1) #define AUDIT_DEV_UNSET ((dev_t)-1) struct audit_sig_info { |
