Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: problems with dmxSctFilterParams and NEWSTRUCT
ok that would be great!
One thing I have trouble with, when reading the source is:
1: which of these functions are executed in interrupt context
2: which functions are only called after a spinlock has been acquired and
which ones need the spinlock
void foo() {
spin_lock(&foo_lock);
foo2();
spin_unlock(&foo_lock);
}
void foo2() {
spin_lock(&foo_lock);
j = 5;
spin_unlock(&foo_lock);
}
This would not work in userspace. Would it create a deadlock in a UP
kernel? or does the kernel continue before foo2 finishes?
_J
In the new year, Holger Waechtler wrote:
> Jeremy Hall wrote:
> > ok from my simple understanding of the error messages, which probably
> > isn't correct, it seems that something is taking too long in the interrupt
> > context, so a scheduler call is made (from the preempt patch no doubt)
> >
> > The reasons for the delay aren't entirely obvious, but I suspect it is
> > related to the spinlock dmxdevfilter->dev->lock. If this theory is true,
> > something is holding onto this lock longer in the NEWSTRUCT branch than in
> > the old driver.
> >
> > solutions?
>
> I will tasklet'ize the interrupt handler. I started before but did not
> finished this because the lock and semaphore handling is pretty (over-?)
> complicated and changing things there can cause serious troubles later.
>
> But this ultra-long interrupt handler code (the entire software demux is
> running in the interrupt handler) causes latencies which will take us
> into hell sooner or later, so I'll rather break the code now and we will
> have to find all open dead locks, race conditions etc. as soon as
> possible. Let's better get this clean now than never.
>
> Please wait some hours, then I'll explain a little more in detail what
> happened and what needs to be tested.
>
> Holger
>
--
I do not get viruses because I do not use MS software.
If you use Outlook then please do not put my email address in your
address-book so that WHEN you get a virus it won't use my address in the
From field.
--
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index