Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F150898095
D50783.id156800.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
4 KB
Referenced Files
None
Subscribers
None
D50783.id156800.diff
View Options
diff --git a/sys/dev/drm2/drm_os_freebsd.h b/sys/dev/drm2/drm_os_freebsd.h
--- a/sys/dev/drm2/drm_os_freebsd.h
+++ b/sys/dev/drm2/drm_os_freebsd.h
@@ -154,18 +154,11 @@
#if !defined(__arm__)
#if defined(__i386__) || defined(__amd64__) || defined(__powerpc__) || defined(__aarch64__)
-#define DRM_MSG "This code is deprecated. Install the graphics/drm-kmod pkg\n"
+#define DRM_MSG "WARNING! drm2 module is deprecated. Install the graphics/drm-kmod pkg\n"
#else
-#define DRM_MSG "This code is deprecated."
+#define DRM_MSG "WARNING! drm2 module is deprecated.\n"
#endif
-
-#define DRM_OBSOLETE(dev) \
- do { \
- device_printf(dev, "=======================================================\n"); \
- device_printf(dev, DRM_MSG); \
- device_printf(dev, "=======================================================\n"); \
- gone_in_dev(dev, 13, "drm2 drivers"); \
- } while (0)
+#define DRM_OBSOLETE(dev) gone_in_dev(dev, 13, DRM_MSG)
#endif /* __arm__ */
/* DRM_READMEMORYBARRIER() prevents reordering of reads.
diff --git a/sys/dev/le/lance.c b/sys/dev/le/lance.c
--- a/sys/dev/le/lance.c
+++ b/sys/dev/le/lance.c
@@ -193,7 +193,8 @@
if_setcapabilitiesbit(ifp, IFCAP_VLAN_MTU, 0);
if_setcapenablebit(ifp, IFCAP_VLAN_MTU, 0);
- gone_in(15, "le: 10/100 NIC no longer needed for Qemu/MIPS");
+ gone_in(15, "Warning! le(4) to be removed: no longer needed for "
+ "Qemu/MIPS\n");
}
void
diff --git a/sys/dev/sound/midi/sequencer.c b/sys/dev/sound/midi/sequencer.c
--- a/sys/dev/sound/midi/sequencer.c
+++ b/sys/dev/sound/midi/sequencer.c
@@ -519,7 +519,8 @@
int ret;
u_char *buf;
- gone_in(15, "MIDI sequencer: no longer needed or used");
+ gone_in(15, "Warning! MIDI sequencer to be removed soon: no longer "
+ "needed or used\n");
/* Allocate the softc. */
ret = ENOMEM;
@@ -738,7 +739,8 @@
struct seq_softc *scp = i_dev->si_drv1;
int i;
- gone_in(15, "MIDI sequencer: no longer needed or used");
+ gone_in(15, "Warning! MIDI sequencer to be removed soon: no longer "
+ "needed or used\n");
if (scp == NULL)
return ENXIO;
diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c
--- a/sys/kern/subr_bus.c
+++ b/sys/kern/subr_bus.c
@@ -6258,8 +6258,10 @@
"2 = if deprecated)");
static void
-gone_panic(int major, int running, const char *msg)
+gone_panic(int major, int running, const char *msg, ...)
{
+ va_list ap;
+
switch (obsolete_panic)
{
case 0:
@@ -6269,32 +6271,36 @@
return;
/* FALLTHROUGH */
default:
- panic("%s", msg);
+ va_start(ap, msg);
+ vpanic(msg, ap);
}
}
void
-_gone_in(int major, const char *msg)
+_gone_in(int major, const char *msg, ...)
{
- gone_panic(major, P_OSREL_MAJOR(__FreeBSD_version), msg);
- if (P_OSREL_MAJOR(__FreeBSD_version) >= major)
- printf("Obsolete code will be removed soon: %s\n", msg);
- else
- printf("Deprecated code (to be removed in FreeBSD %d): %s\n",
- major, msg);
+ va_list ap;
+
+ gone_panic(major, P_OSREL_MAJOR(__FreeBSD_version), msg, ap);
+ va_start(ap, msg);
+ vprintf(msg, ap);
+ va_end(ap);
+ if (P_OSREL_MAJOR(__FreeBSD_version) < major)
+ printf("To be removed in FreeBSD %d\n", major);
}
void
-_gone_in_dev(device_t dev, int major, const char *msg)
+_gone_in_dev(device_t dev, int major, const char *msg, ...)
{
- gone_panic(major, P_OSREL_MAJOR(__FreeBSD_version), msg);
- if (P_OSREL_MAJOR(__FreeBSD_version) >= major)
- device_printf(dev,
- "Obsolete code will be removed soon: %s\n", msg);
- else
+ va_list ap;
+
+ gone_panic(major, P_OSREL_MAJOR(__FreeBSD_version), msg, ap);
+ va_start(ap, msg);
+ device_printf(dev, msg, ap);
+ va_end(ap);
+ if (P_OSREL_MAJOR(__FreeBSD_version) < major)
device_printf(dev,
- "Deprecated code (to be removed in FreeBSD %d): %s\n",
- major, msg);
+ "to be removed in FreeBSD %d\n", major);
}
#ifdef DDB
diff --git a/sys/sys/systm.h b/sys/sys/systm.h
--- a/sys/sys/systm.h
+++ b/sys/sys/systm.h
@@ -566,17 +566,20 @@
/*
* APIs to manage deprecation and obsolescence.
*/
-void _gone_in(int major, const char *msg);
-void _gone_in_dev(device_t dev, int major, const char *msg);
+void _gone_in(int major, const char *msg, ...) __printflike(2, 3);
+void _gone_in_dev(device_t dev, int major, const char *msg, ...)
+ __printflike(3, 4);
#ifdef NO_OBSOLETE_CODE
#define __gone_ok(m, msg) \
_Static_assert(m < P_OSREL_MAJOR(__FreeBSD_version)), \
- "Obsolete code: " msg);
+ "Obsolete code: " msg)
#else
#define __gone_ok(m, msg)
#endif
-#define gone_in(major, msg) __gone_ok(major, msg) _gone_in(major, msg)
-#define gone_in_dev(dev, major, msg) __gone_ok(major, msg) _gone_in_dev(dev, major, msg)
+#define gone_in(major, msg, ...) __gone_ok(major, msg) \
+ _gone_in(major, msg __VA_OPT__(,) __VA_ARGS__)
+#define gone_in_dev(dev, major, msg, ...) __gone_ok(major, msg) \
+ _gone_in_dev(dev, major, msg __VA_OPT__(,) __VA_ARGS__)
#ifdef INVARIANTS
#define __diagused
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Apr 5, 7:38 PM (5 h, 3 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30880227
Default Alt Text
D50783.id156800.diff (4 KB)
Attached To
Mode
D50783: gone_in: make it __printflike()
Attached
Detach File
Event Timeline
Log In to Comment