Commit 0b120863 authored by Umang Jain's avatar Umang Jain Committed by Greg Kroah-Hartman
Browse files

staging: vc04: Convert vchiq_log_warning() to use dynamic debug



Move vchiq_log_warning() custom logging wrapper based on printk to use
dynamic debug. The log category is dictated by vchiq_log_category
which will become the part of the warning string format that will be
logged to dynamic debug (for grep).

All the vchiq_log_warning() calls are adjusted to use the
modified wrapper.

While at that, remove the extraneous "----" from few of the
warning string text.

Signed-off-by: default avatarUmang Jain <umang.jain@ideasonboard.com>
Reviewed-by: default avatarKieran Bingham <kieran.bingham@ideasonboard.com>
Link: https://lore.kernel.org/r/20231024114428.443528-5-umang.jain@ideasonboard.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 1d8915cf
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -695,7 +695,7 @@ int vchiq_initialise(struct vchiq_instance **instance_out)
		ret = -ENOTCONN;
		goto failed;
	} else if (i > 0) {
		vchiq_log_warning(vchiq_core_log_level,
		vchiq_log_warning(state->dev, VCHIQ_CORE,
				  "%s: videocore initialized after %d retries\n", __func__, i);
	}

@@ -1696,17 +1696,19 @@ vchiq_dump_service_use_state(struct vchiq_state *state)
	read_unlock_bh(&arm_state->susp_res_lock);

	if (only_nonzero)
		vchiq_log_warning(vchiq_susp_log_level, "Too many active services (%d). Only dumping up to first %d services with non-zero use-count",
		vchiq_log_warning(state->dev, VCHIQ_SUSPEND,
				  "Too many active services (%d). Only dumping up to first %d services with non-zero use-count",
				  active_services, found);

	for (i = 0; i < found; i++) {
		vchiq_log_warning(vchiq_susp_log_level, "----- %c%c%c%c:%d service count %d %s",
		vchiq_log_warning(state->dev, VCHIQ_SUSPEND,
				  "%c%c%c%c:%d service count %d %s",
				  VCHIQ_FOURCC_AS_4CHARS(service_data[i].fourcc),
				  service_data[i].clientid, service_data[i].use_count,
				  service_data[i].use_count ? nz : "");
	}
	vchiq_log_warning(vchiq_susp_log_level, "----- VCHIQ use count %d", peer_count);
	vchiq_log_warning(vchiq_susp_log_level, "--- Overall vchiq instance use count %d",
	vchiq_log_warning(state->dev, VCHIQ_SUSPEND, "VCHIQ use count %d", peer_count);
	vchiq_log_warning(state->dev, VCHIQ_SUSPEND, "Overall vchiq instance use count %d",
			  vc_use_count);

	kfree(service_data);
@@ -1822,7 +1824,7 @@ static int vchiq_probe(struct platform_device *pdev)
	 */
	err = vchiq_register_chrdev(&pdev->dev);
	if (err) {
		vchiq_log_warning(vchiq_arm_log_level,
		vchiq_log_warning(&pdev->dev, VCHIQ_ARM,
				  "Failed to initialize vchiq cdev");
		goto error_exit;
	}
@@ -1833,7 +1835,7 @@ static int vchiq_probe(struct platform_device *pdev)
	return 0;

failed_platform_init:
	vchiq_log_warning(vchiq_arm_log_level, "could not initialize vchiq platform");
	vchiq_log_warning(&pdev->dev, VCHIQ_ARM, "could not initialize vchiq platform");
error_exit:
	return err;
}
+4 −4
Original line number Diff line number Diff line
@@ -475,7 +475,7 @@ make_service_callback(struct vchiq_service *service, enum vchiq_reason reason,
	status = service->base.callback(service->instance, reason, header, service->handle,
					bulk_userdata);
	if (status && (status != -EAGAIN)) {
		vchiq_log_warning(vchiq_core_log_level,
		vchiq_log_warning(service->state->dev, VCHIQ_CORE,
				  "%d: ignoring ERROR from callback to service %x",
				  service->state->id, service->handle);
		status = 0;
@@ -1622,7 +1622,7 @@ parse_message(struct vchiq_state *state, struct vchiq_header *header)
				vchiq_service_put(service);
			service = get_connected_service(state, remoteport);
			if (service)
				vchiq_log_warning(vchiq_core_log_level,
				vchiq_log_warning(state->dev, VCHIQ_CORE,
						  "%d: prs %s@%pK (%d->%d) - found connected service %d",
						  state->id, msg_type_str(type), header,
						  remoteport, localport, service->localport);
@@ -2921,7 +2921,7 @@ vchiq_close_service(struct vchiq_instance *instance, unsigned int handle)
		    (service->srvstate == VCHIQ_SRVSTATE_OPEN))
			break;

		vchiq_log_warning(vchiq_core_log_level,
		vchiq_log_warning(service->state->dev, VCHIQ_CORE,
				  "%d: close_service:%d - waiting in state %s",
				  service->state->id, service->localport,
				  srvstate_names[service->srvstate]);
@@ -2982,7 +2982,7 @@ vchiq_remove_service(struct vchiq_instance *instance, unsigned int handle)
		    (service->srvstate == VCHIQ_SRVSTATE_OPEN))
			break;

		vchiq_log_warning(vchiq_core_log_level,
		vchiq_log_warning(service->state->dev, VCHIQ_CORE,
				  "%d: remove_service:%d - waiting in state %s",
				  service->state->id, service->localport,
				  srvstate_names[service->srvstate]);
+2 −3
Original line number Diff line number Diff line
@@ -66,9 +66,8 @@ static inline const char *log_category_str(enum vchiq_log_category c)
	do { dev_dbg(dev, "%s error: " fmt, log_category_str(cat), ##__VA_ARGS__); } while (0)
#endif
#ifndef vchiq_log_warning
#define vchiq_log_warning(cat, fmt, ...) \
	do { if (cat >= VCHIQ_LOG_WARNING) \
		 printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0)
#define vchiq_log_warning(dev, cat, fmt, ...) \
	do { dev_dbg(dev, "%s warning: " fmt, log_category_str(cat), ##__VA_ARGS__); } while (0)
#endif
#ifndef vchiq_log_info
#define vchiq_log_info(cat, fmt, ...) \