[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240221122904.1393-1-hdanton@sina.com>
Date: Wed, 21 Feb 2024 20:29:04 +0800
From: Hillf Danton <hdanton@...a.com>
To: syzbot <syzbot+116b65a23bc791ae49a6@...kaller.appspotmail.com>
Cc: linux-kernel@...r.kernel.org,
syzkaller-bugs@...glegroups.com
Subject: Re: [syzbot] [media?] INFO: task hung in cec_claim_log_addrs
On Tue, 20 Feb 2024 22:13:24 -0800
> HEAD commit: 83d49ede4b18 Merge branch 'for-next/core' into for-kernelci
> git tree: git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=11ddc734180000
#syz test https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci
--- x/drivers/media/cec/core/cec-adap.c
+++ y/drivers/media/cec/core/cec-adap.c
@@ -1575,7 +1575,6 @@ unconfigure:
cec_adap_unconfigure(adap);
adap->is_configuring = false;
adap->must_reconfigure = false;
- adap->kthread_config = NULL;
complete(&adap->config_completion);
mutex_unlock(&adap->lock);
return 0;
@@ -1592,6 +1591,8 @@ static void cec_claim_log_addrs(struct c
if (WARN_ON(adap->is_configuring || adap->is_configured))
return;
+ if (adap->kthread_config)
+ return;
init_completion(&adap->config_completion);
/* Ready to kick off the thread */
@@ -1605,6 +1606,7 @@ static void cec_claim_log_addrs(struct c
mutex_unlock(&adap->lock);
wait_for_completion(&adap->config_completion);
mutex_lock(&adap->lock);
+ adap->kthread_config = NULL;
}
}
--
Powered by blists - more mailing lists