LWIS: Use device name in thread name
Use device name in thread name to make it easier to identify and debug
Bug: 236078820
Test: GCA, CTS, adb shell ps
Change-Id: I711642550958332bd2ffb9ce411552cd66156875
Signed-off-by: Holmes Chou <holmeschou@google.com>
diff --git a/lwis_device_i2c.c b/lwis_device_i2c.c
index 58bcd48..4849552 100644
--- a/lwis_device_i2c.c
+++ b/lwis_device_i2c.c
@@ -266,8 +266,7 @@
}
/* Create associated kworker threads */
- ret = lwis_create_kthread_workers(&i2c_dev->base_dev, "lwis_i2c_trans_kthread",
- "lwis_i2c_prd_io_kthread");
+ ret = lwis_create_kthread_workers(&i2c_dev->base_dev);
if (ret) {
dev_err(i2c_dev->base_dev.dev,"Failed to create lwis_i2c_kthread");
lwis_base_unprobe(&i2c_dev->base_dev);
diff --git a/lwis_device_ioreg.c b/lwis_device_ioreg.c
index ec3b6b9..ef71b79 100644
--- a/lwis_device_ioreg.c
+++ b/lwis_device_ioreg.c
@@ -128,8 +128,7 @@
}
/* Create associated kworker threads */
- ret = lwis_create_kthread_workers(&ioreg_dev->base_dev, "lwis_ioreg_trans_kthread",
- "lwis_ioreg_prd_io_kthread");
+ ret = lwis_create_kthread_workers(&ioreg_dev->base_dev);
if (ret) {
dev_err(ioreg_dev->base_dev.dev, "Failed to create lwis_ioreg_kthread");
lwis_base_unprobe(&ioreg_dev->base_dev);
diff --git a/lwis_device_top.c b/lwis_device_top.c
index fb58bab..c124f2b 100644
--- a/lwis_device_top.c
+++ b/lwis_device_top.c
@@ -494,8 +494,7 @@
lwis_top_event_subscribe_init(top_dev);
/* Create associated kworker threads */
- ret = lwis_create_kthread_workers(&top_dev->base_dev, "lwis_top_trans_kthread",
- "lwis_top_prd_io_kthread");
+ ret = lwis_create_kthread_workers(&top_dev->base_dev);
if (ret) {
dev_err(top_dev->base_dev.dev, "Failed to create lwis_top_kthread");
lwis_base_unprobe(&top_dev->base_dev);
diff --git a/lwis_util.c b/lwis_util.c
index 3e8c37e..43cd266 100644
--- a/lwis_util.c
+++ b/lwis_util.c
@@ -96,17 +96,22 @@
}
}
-int lwis_create_kthread_workers(struct lwis_device *lwis_dev, const char *transaction_worker_name,
- const char *periodic_io_worker_name)
+int lwis_create_kthread_workers(struct lwis_device *lwis_dev)
{
+ char t_name[LWIS_MAX_NAME_STRING_LEN];
+ char p_name[LWIS_MAX_NAME_STRING_LEN];
+
if (!lwis_dev) {
pr_err("lwis_create_kthread_workers: lwis_dev is NULL\n");
return -ENODEV;
}
+ scnprintf(t_name, LWIS_MAX_NAME_STRING_LEN, "lwis_t_%s", lwis_dev->name);
+ scnprintf(p_name, LWIS_MAX_NAME_STRING_LEN, "lwis_p_%s", lwis_dev->name);
+
kthread_init_worker(&lwis_dev->transaction_worker);
lwis_dev->transaction_worker_thread = kthread_run(kthread_worker_fn,
- &lwis_dev->transaction_worker, transaction_worker_name);
+ &lwis_dev->transaction_worker, t_name);
if (IS_ERR(lwis_dev->transaction_worker_thread)) {
dev_err(lwis_dev->dev, "transaction kthread_run failed\n");
return -EINVAL;
@@ -114,7 +119,7 @@
kthread_init_worker(&lwis_dev->periodic_io_worker);
lwis_dev->periodic_io_worker_thread = kthread_run(kthread_worker_fn,
- &lwis_dev->periodic_io_worker, periodic_io_worker_name);
+ &lwis_dev->periodic_io_worker, p_name);
if (IS_ERR(lwis_dev->periodic_io_worker_thread)) {
dev_err(lwis_dev->dev, "periodic_io kthread_run failed\n");
return -EINVAL;
diff --git a/lwis_util.h b/lwis_util.h
index 577e78a..1b1456f 100644
--- a/lwis_util.h
+++ b/lwis_util.h
@@ -67,8 +67,7 @@
/*
* lwis_create_kthread_workers: Creates kthread workers associated with this lwis device.
*/
-int lwis_create_kthread_workers(struct lwis_device *lwis_dev, const char *transaction_worker_name,
- const char *periodic_io_worker_name);
+int lwis_create_kthread_workers(struct lwis_device *lwis_dev);
/*
* lwis_set_kthread_priority: Set kthread priority.