aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Sébastien Pédron <dumbbell@FreeBSD.org>2026-04-11 09:28:01 +0000
committerJean-Sébastien Pédron <dumbbell@FreeBSD.org>2026-04-22 18:09:50 +0000
commite692f36a678d4fad6054161e554eb5ec544fffa8 (patch)
tree7babdaf228a654697b4cbc59d5802cb245d1f758
parent886610c1003e0d0e270531f5a75b0f2c2b5eb2b8 (diff)
linuxkpi: Add `struct kmsg_dump_detail`
This structure is used in a modified definition of `struct kmsg_dumper` field `dump` in Linux 6.12. Therefore this field has two definitions put behind the values of `LINUXKPI_VERSION`. The DRM generic code started to use it in Linux 6.12. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D56433
-rw-r--r--sys/compat/linuxkpi/common/include/linux/kmsg_dump.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/compat/linuxkpi/common/include/linux/kmsg_dump.h b/sys/compat/linuxkpi/common/include/linux/kmsg_dump.h
index 539981c54d1b..e7f95ced3047 100644
--- a/sys/compat/linuxkpi/common/include/linux/kmsg_dump.h
+++ b/sys/compat/linuxkpi/common/include/linux/kmsg_dump.h
@@ -30,9 +30,18 @@ struct kmsg_dump_iter {
uint64_t next_seq;
};
+struct kmsg_dump_detail {
+ enum kmsg_dump_reason reason;
+ const char *description;
+};
+
struct kmsg_dumper {
struct list_head list;
+#if defined(LINUXKPI_VERSION) && LINUXKPI_VERSION < 61200
void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason);
+#else
+ void (*dump)(struct kmsg_dumper *dumper, struct kmsg_dump_detail *detail);
+#endif
enum kmsg_dump_reason max_reason;
bool registered;
};