diff --git a/include/osmocom/core/osmo_io.h b/include/osmocom/core/osmo_io.h
index 8a7e53a..8e613fa 100644
--- a/include/osmocom/core/osmo_io.h
+++ b/include/osmocom/core/osmo_io.h
@@ -36,6 +36,10 @@
 static inline const char *osmo_io_backend_name(enum osmo_io_backend val)
 { return get_value_string(osmo_io_backend_names, val); }
 
+extern const struct value_string osmo_iofd_mode_names[];
+static inline const char *osmo_iofd_mode_name(enum osmo_io_fd_mode val)
+{ return get_value_string(osmo_iofd_mode_names, val); }
+
 struct osmo_io_ops {
 	/* mode OSMO_IO_FD_MODE_READ_WRITE: */
 	struct {
diff --git a/src/core/libosmocore.map b/src/core/libosmocore.map
index 72a6038..072efee 100644
--- a/src/core/libosmocore.map
+++ b/src/core/libosmocore.map
@@ -264,6 +264,7 @@
 osmo_iofd_set_name;
 osmo_iofd_get_priv_nr;
 osmo_iofd_init;
+osmo_iofd_mode_names;
 osmo_iofd_ops;
 osmo_iofd_register;
 osmo_iofd_sendto_msgb;
diff --git a/src/core/osmo_io.c b/src/core/osmo_io.c
index f0d213c..bcd4add 100644
--- a/src/core/osmo_io.c
+++ b/src/core/osmo_io.c
@@ -51,6 +51,13 @@
 	{ 0, NULL }
 };
 
+const struct value_string osmo_iofd_mode_names[] = {
+	{ OSMO_IO_FD_MODE_READ_WRITE, "read/write" },
+	{ OSMO_IO_FD_MODE_RECVFROM_SENDTO, "recvfrom/sendto" },
+	{ OSMO_IO_FD_MODE_RECVMSG_SENDMSG, "recvmsg/sendmsg" },
+	{ 0, NULL }
+};
+
 static enum osmo_io_backend g_io_backend;
 
 /* Used by some tests, can't be static */
@@ -619,8 +626,11 @@
 		return NULL;
 	}
 
-	if (ioops && !check_mode_callback_compat(mode, ioops))
+	if (ioops && !check_mode_callback_compat(mode, ioops)) {
+		LOGP(DLIO, LOGL_ERROR, "iofd(%s): rejecting call-backs incompatible with mode %s\n",
+			name ? name : "unknown", osmo_iofd_mode_name(mode));
 		return NULL;
+	}
 
 	iofd = talloc_zero(ctx, struct osmo_io_fd);
 	if (!iofd)
@@ -868,8 +878,11 @@
  *  \param[in] ioops osmo_io_ops structure to be set */
 int osmo_iofd_set_ioops(struct osmo_io_fd *iofd, const struct osmo_io_ops *ioops)
 {
-	if (!check_mode_callback_compat(iofd->mode, ioops))
+	if (!check_mode_callback_compat(iofd->mode, ioops)) {
+		LOGPIO(iofd, LOGL_ERROR, "rejecting call-backs incompatible with mode %s\n",
+			osmo_iofd_mode_name(iofd->mode));
 		return -EINVAL;
+	}
 
 	iofd->io_ops = *ioops;
 
