From: Mauro Carvalho Chehab <mchehab@kernel.org>
To: "Linux regression tracking (Thorsten Leemhuis)"
<regressions@leemhuis.info>
Cc: Linux regressions mailing list <regressions@lists.linux.dev>,
Hyunwoo Kim <imv4bel@gmail.com>,
Linux Media Mailing List <linux-media@vger.kernel.org>,
Thomas Voegtle <tv@lio96.de>,
linux-kernel@vger.kernel.org
Subject: Re: Sometimes DVB broken with commit 6769a0b7ee0c3b
Date: Mon, 5 Jun 2023 11:37:27 +0100 [thread overview]
Message-ID: <20230605113727.69e7f309@sal.lan> (raw)
In-Reply-To: <439d143b-1de7-6365-cf64-f1b44fd6d1cf@leemhuis.info>
Em Mon, 5 Jun 2023 11:38:49 +0200
"Linux regression tracking (Thorsten Leemhuis)" <regressions@leemhuis.info> escreveu:
> Hi, Thorsten here, the Linux kernel's regression tracker.
>
> On 30.05.23 13:12, Thomas Voegtle wrote:
> >
> > I have the problem that sometimes my DVB card does not initialize
> > properly booting Linux 6.4-rc4.
> > This is not always, maybe in 3 out of 4 attempts.
> > When this happens somehow you don't see anything special in dmesg, but
> > the card just doesn't work.
> >
> > Reverting this helps:
> > commit 6769a0b7ee0c3b31e1b22c3fadff2bfb642de23f
> > Author: Hyunwoo Kim <imv4bel@gmail.com>
> > Date: Thu Nov 17 04:59:22 2022 +0000
> >
> > media: dvb-core: Fix use-after-free on race condition at dvb_frontend
> >
> >
> > I have:
> > 03:00.0 Multimedia video controller [0400]: Conexant Systems, Inc.
> > CX23887/8
> > PCIe Broadcast Audio and Video Decoder with 3D Comb [14f1:8880] (rev 04)
> > Subsystem: Hauppauge computer works Inc. Device [0070:c138]
> > Kernel driver in use: cx23885
>
> Hmmm, that was posted last Tuesday and received not a single reply. :-/
>
> Hyunwoo Kim: could you please look at it, as it's a regression caused by
> a commit of yours (one that would be good to solve before 6.4 is
> finalized!)? And in case you are unable to do so let us know?
>
> But FWIW:
>
> Mauro: I wonder if this is something you or someone else has to look
> into, as Hyunwoo Kim posted a few times per months to Linux lists, but
> according to a quick search on lore hasn't posted anything since ~two
> months now. :-/
Yeah, I was slow applying this one, as I was afraid of it to cause
troubles. The DVB frontend state machine is complex, and uses a
semaphore to update its state. There was some past attempts of
addressing some lifetime issues there that we ended needing to revert
or not being applied, as the fix caused more harm than good.
The way DVB tuning works is that it uses a zigzag mechanism to
tune to a frequency. It actually tries to tune at several different
frequencies, like:
f
f + delta
f - delta
f + 2 * delta
f - 2 * delta
...
the DVB core supports 3 different types of zigzag approaches:
- hardware-based - no need to do any special implementation;
- software-based - Kernel will try the above tunes in in a
zig-zag way;
- custom-based - the hardware has some helpers to speedup
and improve the tuning logic.
If a signal is lost, the device will re-run the zigzag logic.
It is not trivial to test all possible conditions there, and some
boards may have multiple frontend devices for different types of
TV transmission (cable, satellite, air).
As I don't have a DVB signal generator anymore, my tests were limited to
devices I have it handy that are compatible with DVB/T.
In any case, we need more details about the problem, as CX23887 is just
the media streaming PCIe bridge device. It tells nothing about what
frontend is attached to the bridge.
Regards,
Mauro
next prev parent reply other threads:[~2023-06-05 10:37 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <da5382ad-09d6-20ac-0d53-611594b30861@lio96.de>
2023-06-05 9:38 ` Sometimes DVB broken with commit 6769a0b7ee0c3b Linux regression tracking (Thorsten Leemhuis)
2023-06-05 10:37 ` Mauro Carvalho Chehab [this message]
2023-06-05 10:44 ` Thorsten Leemhuis
2023-06-05 18:00 ` Mauro Carvalho Chehab
2023-06-12 15:10 ` Linux regression tracking (Thorsten Leemhuis)
2023-06-14 22:20 ` Mauro Carvalho Chehab
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230605113727.69e7f309@sal.lan \
--to=mchehab@kernel.org \
--cc=imv4bel@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=regressions@leemhuis.info \
--cc=regressions@lists.linux.dev \
--cc=tv@lio96.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox