patches/ethtool_string_manipulation.cocci (18 lines of code) (raw):
@ ethtool_puts @
expression s, input;
@@
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,8,0)
ethtool_puts(s, input);
+#else /* LINUX_VERSION_CODE < KERNEL_VERSION(6,8,0) */
+strscpy(*s, input, ETH_GSTRING_LEN);
+ *s += ETH_GSTRING_LEN;
+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(6,8,0) */
@ ethtool_sprintf @
expression s, fmt, arg;
@@
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,13,0)
ethtool_sprintf(s, fmt, arg);
+#else /* LINUX_VERSION_CODE < KERNEL_VERSION(5,13,0) */
+snprintf(*s, ETH_GSTRING_LEN, fmt, arg);
+ *s += ETH_GSTRING_LEN;
+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(5,13,0) */