aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Edward Adam Davis <eadavis@qq.com> 2023-11-07 16:00:40 +0800
committerGravatar Jakub Kicinski <kuba@kernel.org> 2023-11-08 18:47:07 -0800
commitb714ca2ccf6a90733f6ceb14abb6ce914f8832c3 (patch)
treee594f02b1a2cd81e1fc59b0671a622c64ed4f199
parentMerge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/... (diff)
downloadlinux-b714ca2ccf6a90733f6ceb14abb6ce914f8832c3.tar.gz
linux-b714ca2ccf6a90733f6ceb14abb6ce914f8832c3.tar.bz2
linux-b714ca2ccf6a90733f6ceb14abb6ce914f8832c3.zip
ptp: ptp_read should not release queue
Firstly, queue is not the memory allocated in ptp_read; Secondly, other processes may block at ptp_read and wait for conditions to be met to perform read operations. Acked-by: Richard Cochran <richardcochran@gmail.com> Reported-and-tested-by: syzbot+df3f3ef31f60781fa911@syzkaller.appspotmail.com Fixes: 8f5de6fb2453 ("ptp: support multiple timestamp event readers") Signed-off-by: Edward Adam Davis <eadavis@qq.com> Link: https://lore.kernel.org/r/tencent_18747D76F1675A3C633772960237544AAA09@qq.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r--drivers/ptp/ptp_chardev.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/ptp/ptp_chardev.c b/drivers/ptp/ptp_chardev.c
index 282cd7d24077..27c1ef493617 100644
--- a/drivers/ptp/ptp_chardev.c
+++ b/drivers/ptp/ptp_chardev.c
@@ -585,7 +585,5 @@ ssize_t ptp_read(struct posix_clock_context *pccontext, uint rdflags,
free_event:
kfree(event);
exit:
- if (result < 0)
- ptp_release(pccontext);
return result;
}