DF-5779 / fix.diff
diff --git a/sys/dev/drm/include/linux/seq_file.h b/sys/dev/drm/include/linux/seq_file.h index 3468f37..1111111 100644 --- a/sys/dev/drm/include/linux/seq_file.h +++ b/sys/dev/drm/include/linux/seq_file.h @@ -41,7 +41,11 @@ struct seq_file { void seq_printf(struct seq_file *m, const char *f, ...); -#define seq_puts(m, str) ksnprintf((m)->buf, (m)->size, str) +/* + * str is DATA by the Linux seq_puts() contract and must never be + * interpreted as a format string (kernel printf supports %n, a live + * write-through-pointer conversion). + */ +static inline void +seq_puts(struct seq_file *m, const char *str) +{ + ksnprintf((m)->buf, (m)->size, "%s", str); +} #endif /* _LINUX_SEQ_FILE_H_ */ |