Re: Immediate general protection errors on Tyan board

2005-09-04 Thread Parag Warudkar

Bob Richmond wrote:

Immediately upon boot on this system, most userland programs will 
segfault, including mount. This causes the system to come up in a 
bizarre state with the root filesystem mounted read-only, and nothing 
runs without segfault. There have been numerous similar posts about 
this problem, but they also seem to point to an associated kernel 
message, "Bad page state" that I don't observe. dmesg (which runs 
without segfault) returns many similar messages to:


start_udev[576] general protection rip:2ae0fc70 rsp:7fb23d90 
error:0


echo 0 > /proc/sys/kernel/randomize_va_space - Seems to fix it for most 
people.


See http://bugzilla.kernel.org/show_bug.cgi?id=4851 for more details.

Parag
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/3] dynticks - implement no idle hz for x86

2005-09-04 Thread Nishanth Aravamudan
On 05.09.2005 [12:02:29 +0530], Srivatsa Vaddagiri wrote:
> On Sun, Sep 04, 2005 at 10:48:13PM -0700, Nishanth Aravamudan wrote:
> > Admittedly, I don't think SMP ARM has been around all that long?
> > Maybe the existing code just has not been extended.
> 
> Yeah, maybe ARM never cared for SMP. But we do care :)

I just took a look at arm/Kconfig and SMP is marked as EXPERIMENTAL &&
BROKEN. So I'm guessing that is the only reason for some of the
differences you mentioned (the differences are of course, valid and the
x86 SMP implementation makes sense to me to extend arch-independently).

> > I'm not sure on this. It's going to be NULL for other architectures,
> > or end up being called by the reprogram() call for the last CPU to
> > go idle, right (presuming there isn't a separate TOD source, like in
> > x86). I think it is better to be in the reprogram() interface.
> 
> Non-x86 could have it set to NULL, in which case it doesn't get
> called.  (I know the current code does not take care of this
> situation).  But having an explicit 'all_cpus_idle' interface may be
> good, since Tony talked of idling some devices when all CPUs are idle.
> So it probably has non-x86/PIT uses too.

OK, not a problem. I'll try and write up a general intsource.h file
(interrupt source header) tonight and tomorrow and send it to this list
to see if everybody agrees on what's in the structure and where the
arch-independent/dependent line lies.

> > > 6. S390 makes use of notifier mechanism to notify when CPUs are
> > >coming in and out of idle state. Don't know how it will be used
> > >in other arches. But obviously, if we are talking of unifying,
> > >we have to provide one.
> > 
> > Couldn't that be part of the s390-specific init() code? That member
> > is non-existent in the ARM implementation either, but it should not
> > be hard to add? The only issue I see, though, is that the function
> > which the init() member points to should not be marked __init, as we
> > could have an empty pointer later on?
> 
> If we consider that only s390 needs it and other arch's dont, then it
> need not be even part of the init code. Basically the notifier list
> can be maintained by s390 in its arch-code entirely and have
> 'stop_hz_timer' call into dyn_tick_reprogram_timer (or something like
> that)? But I feel there will be other uses for the notifier list (I
> know the slab reap timer fires every two seconds and that may be
> unnecessary on idle CPUs if it is not reaping anything - perhaps it
> could use such a notifier to fire at longer intervals on idle CPUs?
> That may be true of other short-timers that kernel/drivers may be
> using. This is just a thought and may need more consideration before
> we put a notifier mechanism in arch-independent code).

Yeah, maybe we would be ok with keeping the notifier setup s390-specific
for now, and then extending the faculty to arch-independent code if we
find good (clean) reasons to do so. I'm not saying the slab reaping code
is insufficient, but I want to keep the structure and code as simple as
possible at first (in the design phase, at least).

> > I'm not sure on this last one, though, what part of the state can't
> > simply be represented by an integer with appropriate &-ing?
> 
> Everything can be represented in bits! I was just comparing
> composition of structures in ARM and x86. The state bitfield is part
> of 'struct dyn_tick_timer' itself in ARM while it is part of a
> separate structure (dyn_tick_state) in x86. Similar minor points need
> to be sorted out while unifying.

Heh, I agree :) I just wanted to make sure that I hadn't missed
something and there was a *specific* reason the x86 code was using a
separate structure. I actuall prefer keeping it tied to the interrupt
source; it's simpler to me.

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Sander
Willy Tarreau wrote (ao):
> So you're both half-right from your point of view. But you're both half-wrong
> too : no, people can't always choose, and no, people who don't choose their
> laptop are not impacted by development kernels. So let's turn the page and
> wait for a stable kernel.

If the company provides a laptop that doesn't mean that the user can't
choose anymore. He can buy his own laptop. Companies don't allow you to
fiddle with the installed OS anyway.

Kind regards, Sander

-- 
Humilis IT Services and Solutions
http://www.humilis.net
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Immediate general protection errors on Tyan board

2005-09-04 Thread Bob Richmond
Immediately upon boot on this system, most userland programs will 
segfault, including mount. This causes the system to come up in a 
bizarre state with the root filesystem mounted read-only, and nothing 
runs without segfault. There have been numerous similar posts about this 
problem, but they also seem to point to an associated kernel message, 
"Bad page state" that I don't observe. dmesg (which runs without 
segfault) returns many similar messages to:


start_udev[576] general protection rip:2ae0fc70 rsp:7fb23d90 error:0

This occurrs on the latest Fedora Core 4 kernel RPM 
(kernel-2.6.12-1.1447_FC4) on a Tyan S2892 motherboard with 2 Opteron 
246 processors. The BIOS is up to date with what is available on Tyan's 
website for this board.


I'm not sure if the Fedora maintainers have rolled in the latest AMD 
errata changes from 2.6.13 in the latest package, but that will be my 
next test.


Does anyone still observe this problem in their systems?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GFS, what's remaining

2005-09-04 Thread Pekka Enberg
On Thu, Sep 01, 2005 at 01:35:23PM +0200, Arjan van de Ven wrote:
> > +void gfs2_glock_hold(struct gfs2_glock *gl)
> > +{
> > + glock_hold(gl);
> > +}
> >
> > eh why?

On 9/5/05, David Teigland <[EMAIL PROTECTED]> wrote:
> You removed the comment stating exactly why, see below.  If that's not a
> accepted technique in the kernel, say so and I'll be happy to change it
> here and elsewhere.

Is there a reason why users of gfs2_glock_hold() cannot use
glock_hold() directly?

Pekka
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/3] dynticks - implement no idle hz for x86

2005-09-04 Thread Srivatsa Vaddagiri
On Sun, Sep 04, 2005 at 10:48:13PM -0700, Nishanth Aravamudan wrote:
> Admittedly, I don't think SMP ARM has been around all that long? Maybe
> the existing code just has not been extended.

Yeah, maybe ARM never cared for SMP. But we do care :)

> I'm not sure on this. It's going to be NULL for other architectures, or
> end up being called by the reprogram() call for the last CPU to go idle,
> right (presuming there isn't a separate TOD source, like in x86). I
> think it is better to be in the reprogram() interface.

Non-x86 could have it set to NULL, in which case it doesn't get called.
(I know the current code does not take care of this situation).
But having an explicit 'all_cpus_idle' interface may be good, since 
Tony talked of idling some devices when all CPUs are idle. So it
probably has non-x86/PIT uses too.

> > 6. S390 makes use of notifier mechanism to notify when CPUs are coming
> >in and out of idle state. Don't know how it will be used in other
> >arches. But obviously, if we are talking of unifying, we have to
> >provide one.
> 
> Couldn't that be part of the s390-specific init() code? That member is
> non-existent in the ARM implementation either, but it should not be hard
> to add? The only issue I see, though, is that the function which the
> init() member points to should not be marked __init, as we could have an
> empty pointer later on?

If we consider that only s390 needs it and other arch's dont, then it need 
not be even part of the init code. Basically the notifier list can be maintained
by s390 in its arch-code entirely and have 'stop_hz_timer' call into
dyn_tick_reprogram_timer (or something like that)? But I feel there will be 
other uses for the notifier list (I know the slab reap timer fires every two 
seconds and that may be unnecessary on idle CPUs if it is not reaping 
anything - perhaps it could use such a notifier to fire at longer intervals on 
idle CPUs? That may be true of other short-timers that kernel/drivers may be 
using. This is just a thought and may need more consideration before we 
put a notifier mechanism in arch-independent code).

> I'm not sure on this last one, though, what part of the state can't
> simply be represented by an integer with appropriate &-ing?

Everything can be represented in bits! I was just comparing composition
of structures in ARM and x86. The state bitfield is part of 
'struct dyn_tick_timer' itself in ARM while it is part of a separate structure 
(dyn_tick_state) in x86. Similar minor points need to be sorted out while 
unifying.


-- 


Thanks and Regards,
Srivatsa Vaddagiri,
Linux Technology Center,
IBM Software Labs,
Bangalore, INDIA - 560017
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Pekka Enberg
On 9/5/05, Willy Tarreau <[EMAIL PROTECTED]> wrote:
> Except that someone has to maintain the patch, because with the speed the
> kernel is changing, a patch against 2.6.14 will not work on 2.6.15.

Indeed. It has to be maintained in tree as well and I don't see any
justification for making mainline care about !4KB_STACKS just for the
sake of ndiswrapper. While I appreciate that ndiswrapper is useful for
some people, it should IMHO be maintained as an out-of-tree patch
(stack size included).

   Pekka
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GFS, what's remaining

2005-09-04 Thread Theodore Ts'o
On Sun, Sep 04, 2005 at 10:33:44PM +0200, Pavel Machek wrote:
> Hi!
> 
> > - read-only mount
> > - "specatator" mount (like ro but no journal allocated for the mount,
> >   no fencing needed for failed node that was mounted as specatator)
> 
> I'd call it "real-read-only", and yes, that's very usefull
> mount. Could we get it for ext3, too?

This is a bit of a degression, but it's quite a bit different from
what ocfs2 is doing, where it is not necessary to replay the journal
in order to assure filesystem consistency.  

In the ext3 case, the only time when read-only isn't quite read-only
is when the filesystem was unmounted uncleanly and the journal needs
to be replayed in order for the filesystem to be consistent.  Mounting
the filesystem read-only without replaying the journal could and very
likely would result in the filesystem reporting filesystem consistency
problems, and if the filesystem is mounted with the reboot-on-errors
option, well

- Ted
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GFS, what's remaining

2005-09-04 Thread David Teigland
On Thu, Sep 01, 2005 at 01:35:23PM +0200, Arjan van de Ven wrote:

> +static unsigned int handle_roll(atomic_t *a)
> +{
> + int x = atomic_read(a);
> + if (x < 0) {
> + atomic_set(a, 0);
> + return 0;
> + }
> + return (unsigned int)x;
> +}
> 
> this is just plain scary.

Not really, it was just resetting atomic statistics counters when they
became negative.  Unecessary, though, so removed.

Dave

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Sean
On Mon, September 5, 2005 2:04 am, Willy Tarreau said:

> They don't mind. Those people install Checkpoint on Linux. A product of
> which previous releases were even incompatible with security updates !

Heh.. well all the power to them.  Still no reason for an open source
developer to waste one second worrying about it though.

> You don't get it. One of my collegue installed quagga on his binary-only
> laptop. Now that he found it very useful and showed how to can be used,
> he's planning on setting up servers to run it to bring new services. So
> his *crappy* laptop full of binary-only drivers and relying on ndiswrapper
> allows him to build a proof of concept and get the possibility to run it
> on real hardware.

Same comment.   Someone should create a distribution dedicated to this
market if it's that important.

> Except that someone has to maintain the patch, because with the speed the
> kernel is changing, a patch against 2.6.14 will not work on 2.6.15. I've
> tried UML on 2.4 in the past, and I've learned the hard way not to rely
> on patches for old features when developpers consider them obsolete (2.4
> support ended when 2.6 began).

If enough people are interested in it, it can't be that hard to organize
external maintenance of the patch.  Even these long conversations on the
mailing list show why the bloody thing should be ejected already.  Move it
to it's own tree with it's own mailing list etc..

> Keeping it marked as BROKEN is fine. It may even taint the kernel, that's
> not a problem. Removing it is wrong.

I agree with you that it should taint at a minimum.   But should something
that taints the kernel even be part of the mainline source?

Cheers,
Sean


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


R: R: [Linux-ATM-General] [ATMSAR] Request for review - update #1

2005-09-04 Thread Giampaolo Tomassoni
> Giampaolo,
> 
> Should read: ...even if the ATMSAR actually lacks of AAL1, AAL2 
> and AAL3/4 [where AAL3/4 is obsolete] capabilities...
> 
> Just wanted to make it more precise according to the ATM 
> standards, this was the only intention of my "patch".

You're right. Sorry about that.

Thanks,

Giampaolo

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: R: [Linux-ATM-General] [ATMSAR] Request for review - update #1

2005-09-04 Thread Zoran Stojsavljevic

Giampaolo Tomassoni wrote:


Also, I believe that adsl will carry much more services then just AAL5 for 
internet connection in the future. Even if the ATMSAR actually lacks of AAL1 
and AAL2/3 capabilities, adding them in a single, specialized module is much 
easier than swimming in a usb+atm middle layer.
 


Giampaolo,

Should read: ...even if the ATMSAR actually lacks of AAL1, AAL2 and AAL3/4 
[where AAL3/4 is obsolete] capabilities...

Just wanted to make it more precise according to the ATM standards, this was the only 
intention of my "patch".

Peace to all! :o)



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Willy Tarreau
On Mon, Sep 05, 2005 at 01:31:29AM -0400, Sean wrote:
> On Mon, September 5, 2005 1:01 am, Willy Tarreau said:
> 
> > But how do you think Linux has penetrated the enterprise market ???
> > We all have put dual boots on every windows machine we had access to,
> > eventhough this was clearly forbidden. And after repeatedly showing
> > to the staff that you saved their day with your Linux, they finally
> > start to get interested to it. One of my best customers has finally
> > bought about one hundred RHEL3 licences to replace amateur installs
> > on production machines. They would never have looked at it without
> > us braving unauthorized dual boots.
> 
> And how impressed would they have been if you had to install a bunch of
> binary drivers to get the job done?   Do you think all the problems that
> are associated with binary drivers would not have bitten you or your
> company?

They don't mind. Those people install Checkpoint on Linux. A product of
which previous releases were even incompatible with security updates !

> What you're talking about did happen, but it didn't happen on laptops, and
> it didn't happen with binary drivers.   It happened naturally when Linux
> grew mature enough to support servers without the need for binary-only
> hacks.

You don't get it. One of my collegue installed quagga on his binary-only
laptop. Now that he found it very useful and showed how to can be used,
he's planning on setting up servers to run it to bring new services. So
his *crappy* laptop full of binary-only drivers and relying on ndiswrapper
allows him to build a proof of concept and get the possibility to run it
on real hardware.

> Trying to accelerate the acceptance of Linux on the desktop with binary
> hacks is simply counterproductive.
> 
> > I think we should not worry about it, but we should not deliberately break
> > it in a stable series when that does not bring anything. The fact that
> > Adrian proposed to completely remove the option is sad. It's in the
> > windows
> > world that you can't choose. In Linux, you make menuconfig and choose what
> > suits your needs.
> 
> That's the beauty of open source; nobody is being deprived of a choice. 
> Anyone can simply patch their kernel with 8K support if that's what they
> need.   But as has been aptly pointed out by others in this thread, 8K
> stacks aren't really needed at all, even for NDISwrapper.

Except that someone has to maintain the patch, because with the speed the
kernel is changing, a patch against 2.6.14 will not work on 2.6.15. I've
tried UML on 2.4 in the past, and I've learned the hard way not to rely
on patches for old features when developpers consider them obsolete (2.4
support ended when 2.6 began).

> 4K stacks were NOT invented to hassle binary-only driver owners, they were
> created to solve problems associated with 8K stacks..  Leaving the 8K
> stack option in the kernel signals that it is a _good_ option.  That just
> isn't true, so the option should be removed or at least marked BROKEN.

Keeping it marked as BROKEN is fine. It may even taint the kernel, that's
not a problem. Removing it is wrong.

Regards,
Willy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/3] dynticks - implement no idle hz for x86

2005-09-04 Thread Nishanth Aravamudan
On 05.09.2005 [11:02:25 +0530], Srivatsa Vaddagiri wrote:
> On Sun, Sep 04, 2005 at 09:26:16PM +0100, Russell King wrote:
> > I'd be really surprised if any architecture couldn't use what ARM has
> > today - in other words, this is the only kernel-side interface:
> 
> Russel,
>   I went thr' the ARM implementation and have some remarks (mostly
> from a SMP perspective):
> 
> 1. On a SMP platform, we want to let individual CPUs "sleep" independent of 
>each other. What this mean is there has to be some way of tracking which
>CPU's are sleeping currently, so that code like RCU ignores sleeping CPUs.
>This was the reason nohz_cpu_mask bitmap was added. I don't see that
>bitmap being updated at all in ARM implementation.

Admittedly, I don't think SMP ARM has been around all that long? Maybe
the existing code just has not been extended.

> 2. On architectures like x86 there is a separate jiffy interrupt source 
>(PIT) which is used to update time-of-day. This is different from the
>HZ timer interrupts used on each CPU (local apic timer). When all 
>CPUs are idle and sleeping, we want to shut off this PIT timer as well.
>That's why I added 'arch_all_cpus_idle' interface. One could argue that
>this can be done as part of the dyn_tick->reprogram interface as well,
>but I felt that having a separate arch_all_cpus_idle is cleaner and
>makes it clear what its purpose is.

I'm not sure on this. It's going to be NULL for other architectures, or
end up being called by the reprogram() call for the last CPU to go idle,
right (presuming there isn't a separate TOD source, like in x86). I
think it is better to be in the reprogram() interface.

> 3. The fact that we want to manipulate the bitmap (set a bit when CPU is going
>idle and unset it when it is waking up) _and_ the fact that want to take
>some action when all CPUs are idle or when the first CPU is waking up, 
>requires the use of a spinlock, which is again not present in the ARM 
>implementation.

This might just be tied to the same UP capabilities, I'm not sure.

> 4. Again the fact that CPUs could be sleeping independent of each other
>requires do_IRQ to check out whether the current CPU was sleeping as 
>its first step. If the CPU was sleeping, it needs to unset itself
>from the bitmap _and_ if we are coming out of "all-cpu-asleep" state,
>the PIT timer needs to be restarted as well as time recovered. Note
>that these two steps need not be undertaken if we were not in 
>"all-cpus-asleep" state.

I agree; the latter can be in the arch-specific reprogram() code, just
like arch_all_cpus_idle() (which might be better named to
arch_set_all_cpus_idle()).

> I don't see provisions for all these in the current ARM
> implementation.  In fact the x86 patch that Tony/Con posted didnt take
> into account most of these as well, which is the reason I jumped in to
> fix the above issues.

I definitely appreciate you doing so; dyn-tick for x86 has clearly come
a long way in a short time.

> 5. Don't see how DYN_TICK_SKIPPING is being used. In SMP scenario,
>it doesnt make sense since it will have to be per-cpu. The bitmap
>that I talked of exactly tells that (whether a CPU is skipping
>ticks or not).

I'll take a look at this.

> 6. S390 makes use of notifier mechanism to notify when CPUs are coming
>in and out of idle state. Don't know how it will be used in other
>arches. But obviously, if we are talking of unifying, we have to
>provide one.

Couldn't that be part of the s390-specific init() code? That member is
non-existent in the ARM implementation either, but it should not be hard
to add? The only issue I see, though, is that the function which the
init() member points to should not be marked __init, as we could have an
empty pointer later on?

> I hope this makes clear why some of the rework happened, which
> in a way is extending the interface that ARM already has. Having
> said all these, I do agree that having a consistent interface 
> is good (for example: x86 has dyn_tick_state structure whereas
> ARM uses dyn_tick_timer strucuture itself to store the state etc).

I'm not sure on this last one, though, what part of the state can't
simply be represented by an integer with appropriate &-ing?

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.11.11 and rsync oops (SATA related?)

2005-09-04 Thread Kalin KOZHUHAROV

Parag Warudkar wrote:

Jesper Juhl wrote:


It seems you forgot to include the data.  Nothing inline in the email,
nor any attachments.


Sorry for that, I really forgot to include the attachments at first, 
then send the mail, then canceled it (on gmane.org), then send another 
mail with the attachments.


I could see the attachments and inline dmesg - probably your mail server 
is at it.
Jesper was just to quick to notice my mistake :-) But I thought that I 
don't need to reply to him to increase the S/N ratio...


Kalin.

--
|[ ~~ ]|
+-> http://ThinRope.net/ <-+
|[ __ ]|

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GFS, what's remaining

2005-09-04 Thread David Teigland
On Thu, Sep 01, 2005 at 01:35:23PM +0200, Arjan van de Ven wrote:

> +void gfs2_glock_hold(struct gfs2_glock *gl)
> +{
> + glock_hold(gl);
> +}
> 
> eh why?

You removed the comment stating exactly why, see below.  If that's not a
accepted technique in the kernel, say so and I'll be happy to change it
here and elsewhere.
Thanks,
Dave

static inline void glock_hold(struct gfs2_glock *gl)
{
gfs2_assert(gl->gl_sbd, atomic_read(&gl->gl_count) > 0);
atomic_inc(&gl->gl_count);
}

/**
 * gfs2_glock_hold() - As glock_hold(), but suitable for exporting
 * @gl: The glock to hold
 *
 */

void gfs2_glock_hold(struct gfs2_glock *gl)
{
glock_hold(gl);
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/3] dynticks - implement no idle hz for x86

2005-09-04 Thread Srivatsa Vaddagiri
On Sun, Sep 04, 2005 at 09:26:16PM +0100, Russell King wrote:
> I'd be really surprised if any architecture couldn't use what ARM has
> today - in other words, this is the only kernel-side interface:

Russel,
I went thr' the ARM implementation and have some remarks (mostly
from a SMP perspective):

1. On a SMP platform, we want to let individual CPUs "sleep" independent of 
   each other. What this mean is there has to be some way of tracking which
   CPU's are sleeping currently, so that code like RCU ignores sleeping CPUs.
   This was the reason nohz_cpu_mask bitmap was added. I don't see that
   bitmap being updated at all in ARM implementation.

2. On architectures like x86 there is a separate jiffy interrupt source 
   (PIT) which is used to update time-of-day. This is different from the
   HZ timer interrupts used on each CPU (local apic timer). When all 
   CPUs are idle and sleeping, we want to shut off this PIT timer as well.
   That's why I added 'arch_all_cpus_idle' interface. One could argue that
   this can be done as part of the dyn_tick->reprogram interface as well,
   but I felt that having a separate arch_all_cpus_idle is cleaner and
   makes it clear what its purpose is.

3. The fact that we want to manipulate the bitmap (set a bit when CPU is going
   idle and unset it when it is waking up) _and_ the fact that want to take
   some action when all CPUs are idle or when the first CPU is waking up, 
   requires the use of a spinlock, which is again not present in the ARM 
   implementation.

4. Again the fact that CPUs could be sleeping independent of each other
   requires do_IRQ to check out whether the current CPU was sleeping as 
   its first step. If the CPU was sleeping, it needs to unset itself
   from the bitmap _and_ if we are coming out of "all-cpu-asleep" state,
   the PIT timer needs to be restarted as well as time recovered. Note
   that these two steps need not be undertaken if we were not in 
   "all-cpus-asleep" state.

I don't see provisions for all these in the current ARM implementation.
In fact the x86 patch that Tony/Con posted didnt take into account most of these
as well, which is the reason I jumped in to fix the above issues.

5. Don't see how DYN_TICK_SKIPPING is being used. In SMP scenario,
   it doesnt make sense since it will have to be per-cpu. The bitmap
   that I talked of exactly tells that (whether a CPU is skipping
   ticks or not).

6. S390 makes use of notifier mechanism to notify when CPUs are coming
   in and out of idle state. Don't know how it will be used in other
   arches. But obviously, if we are talking of unifying, we have to
   provide one.

I hope this makes clear why some of the rework happened, which
in a way is extending the interface that ARM already has. Having
said all these, I do agree that having a consistent interface 
is good (for example: x86 has dyn_tick_state structure whereas
ARM uses dyn_tick_timer strucuture itself to store the state etc).
   

-- 


Thanks and Regards,
Srivatsa Vaddagiri,
Linux Technology Center,
IBM Software Labs,
Bangalore, INDIA - 560017
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Sean
On Mon, September 5, 2005 1:01 am, Willy Tarreau said:

> But how do you think Linux has penetrated the enterprise market ???
> We all have put dual boots on every windows machine we had access to,
> eventhough this was clearly forbidden. And after repeatedly showing
> to the staff that you saved their day with your Linux, they finally
> start to get interested to it. One of my best customers has finally
> bought about one hundred RHEL3 licences to replace amateur installs
> on production machines. They would never have looked at it without
> us braving unauthorized dual boots.

And how impressed would they have been if you had to install a bunch of
binary drivers to get the job done?   Do you think all the problems that
are associated with binary drivers would not have bitten you or your
company?

What you're talking about did happen, but it didn't happen on laptops, and
it didn't happen with binary drivers.   It happened naturally when Linux
grew mature enough to support servers without the need for binary-only
hacks.

Trying to accelerate the acceptance of Linux on the desktop with binary
hacks is simply counterproductive.

> I think we should not worry about it, but we should not deliberately break
> it in a stable series when that does not bring anything. The fact that
> Adrian proposed to completely remove the option is sad. It's in the
> windows
> world that you can't choose. In Linux, you make menuconfig and choose what
> suits your needs.

That's the beauty of open source; nobody is being deprived of a choice. 
Anyone can simply patch their kernel with 8K support if that's what they
need.   But as has been aptly pointed out by others in this thread, 8K
stacks aren't really needed at all, even for NDISwrapper.

4K stacks were NOT invented to hassle binary-only driver owners, they were
created to solve problems associated with 8K stacks..  Leaving the 8K
stack option in the kernel signals that it is a _good_ option.  That just
isn't true, so the option should be removed or at least marked BROKEN.

Cheers,
Sean


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [RFC: 2.6 patch] remove some unused IDE stuff

2005-09-04 Thread Greg Ungerer

Hi Adrian,

Adrian Bunk wrote:

This patch removes some dead IDE-related #define's and
"static inline" functions.

Please double-check it since I've only tested it with grep and didn't 
try compilation.



Signed-off-by: Adrian Bunk <[EMAIL PROTECTED]>


I think the include/asm-m68knommu/ide.h should just be removed
altogether. None of the underlying code support for it has been
carried into 2.6, so it is pretty much useless.

Regards
Greg





---

 arch/ppc/platforms/hdpu.c   |   40 ---
 include/asm-m68knommu/ide.h |   41 
 include/asm-parisc/ide.h|5 
 3 files changed, 86 deletions(-)

--- linux-2.6.13-mm1-full/arch/ppc/platforms/hdpu.c.old 2005-09-02 
02:02:33.0 +0200
+++ linux-2.6.13-mm1-full/arch/ppc/platforms/hdpu.c 2005-09-02 
02:04:08.0 +0200
@@ -608,46 +608,6 @@
}
 }
 
-#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)

-static int hdpu_ide_check_region(ide_ioreg_t from, unsigned int extent)
-{
-   return check_region(from, extent);
-}
-
-static void
-hdpu_ide_request_region(ide_ioreg_t from, unsigned int extent, const char 
*name)
-{
-   request_region(from, extent, name);
-   return;
-}
-
-static void hdpu_ide_release_region(ide_ioreg_t from, unsigned int extent)
-{
-   release_region(from, extent);
-   return;
-}
-
-static void __init
-hdpu_ide_pci_init_hwif_ports(hw_regs_t * hw, ide_ioreg_t data_port,
-ide_ioreg_t ctrl_port, int *irq)
-{
-   struct pci_dev *dev;
-
-   pci_for_each_dev(dev) {
-   if (((dev->class >> 8) == PCI_CLASS_STORAGE_IDE) ||
-   ((dev->class >> 8) == PCI_CLASS_STORAGE_RAID)) {
-   hw->irq = dev->irq;
-
-   if (irq != NULL) {
-   *irq = dev->irq;
-   }
-   }
-   }
-
-   return;
-}
-#endif
-
 void hdpu_heartbeat(void)
 {
if (mv64x60_read(&bh, MV64x60_GPP_VALUE) & (1 << 5))
--- linux-2.6.13-mm1-full/include/asm-m68knommu/ide.h.old   2005-09-02 
02:04:17.0 +0200
+++ linux-2.6.13-mm1-full/include/asm-m68knommu/ide.h   2005-09-02 
02:10:11.0 +0200
@@ -141,47 +141,6 @@
 
 #define ide_init_default_irq(base)	ide_default_irq(base)
 
-static IDE_INLINE int

-ide_request_irq(
-   unsigned int irq,
-   void (*handler)(int, void *, struct pt_regs *),
-   unsigned long flags,
-   const char *device,
-   void *dev_id)
-{
-#ifdef CONFIG_COLDFIRE
-   mcf_autovector(irq);
-#endif
-   return(request_irq(irq, handler, flags, device, dev_id));
-}
-
-
-static IDE_INLINE void
-ide_free_irq(unsigned int irq, void *dev_id)
-{
-   free_irq(irq, dev_id);
-}
-
-
-static IDE_INLINE int
-ide_check_region(ide_ioreg_t from, unsigned int extent)
-{
-   return 0;
-}
-
-
-static IDE_INLINE void
-ide_request_region(ide_ioreg_t from, unsigned int extent, const char *name)
-{
-}
-
-
-static IDE_INLINE void
-ide_release_region(ide_ioreg_t from, unsigned int extent)
-{
-}
-
-
 static IDE_INLINE void
 ide_fix_driveid(struct hd_driveid *id)
 {
--- linux-2.6.13-mm1-full/include/asm-parisc/ide.h.old  2005-09-02 
02:05:19.0 +0200
+++ linux-2.6.13-mm1-full/include/asm-parisc/ide.h  2005-09-02 
02:08:39.0 +0200
@@ -20,11 +20,6 @@
 #define IDE_ARCH_OBSOLETE_INIT
 #define ide_default_io_ctl(base)   ((base) + 0x206) /* obsolete */
 
-#define ide_request_irq(irq,hand,flg,dev,id)	request_irq((irq),(hand),(flg),(dev),(id))

-#define ide_free_irq(irq,dev_id)   free_irq((irq), (dev_id))
-#define ide_check_region(from,extent)  check_region((from), (extent))
-#define ide_request_region(from,extent,name)   request_region((from), 
(extent), (name))
-#define ide_release_region(from,extent)release_region((from), 
(extent))
 /* Generic I/O and MEMIO string operations.  */
 
 #define __ide_insw	insw





--

Greg Ungerer  --  Chief Software Dude   EMAIL: [EMAIL PROTECTED]
SnapGear -- a CyberGuard CompanyPHONE:   +61 7 3435 2888
825 Stanley St, FAX: +61 7 3891 3630
Woolloongabba, QLD, 4102, Australia WEB: http://www.SnapGear.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.11.11 and rsync oops (SATA related?)

2005-09-04 Thread Parag Warudkar

Jesper Juhl wrote:


It seems you forgot to include the data.  Nothing inline in the email,
nor any attachments.

 

I could see the attachments and inline dmesg - probably your mail server 
is at it.


Parag
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Willy Tarreau
On Mon, Sep 05, 2005 at 12:47:03AM -0400, Sean wrote:
> On Mon, September 5, 2005 12:36 am, Willy Tarreau said:
> 
> > Well, to be fair, most laptop users today are in companies which provide
> > them with the model the staff has chosen for all the employees. And
> > employees
> > try to install Linux on them anyway. That's how you end up with things
> > like
> > ndiswrapper, because the people who make those notebooks for companies
> > don't
> > care at all about their customers ; what they want is negociate with the
> > staff to sell them 2000 laptops, and that's all.
> 
> Companies that provide laptops to their employees tend to frown on the
> users installing a bunch of stuff anyway.

But how do you think Linux has penetrated the enterprise market ???
We all have put dual boots on every windows machine we had access to,
eventhough this was clearly forbidden. And after repeatedly showing
to the staff that you saved their day with your Linux, they finally
start to get interested to it. One of my best customers has finally
bought about one hundred RHEL3 licences to replace amateur installs
on production machines. They would never have looked at it without
us braving unauthorized dual boots.

> If the company was buying the
> laptop to run Linux it would be spec'd appropriately.
> 
> But the real crux of the argument here is not whether or not people should
> ever use binary-only drivers, it's whether the open source kernel
> developers should spend any time worrying about it or not.

I think we should not worry about it, but we should not deliberately break
it in a stable series when that does not bring anything. The fact that
Adrian proposed to completely remove the option is sad. It's in the windows
world that you can't choose. In Linux, you make menuconfig and choose what
suits your needs.

Regards,
Willy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Willy Tarreau
Hi Dave,

On Mon, Sep 05, 2005 at 12:26:41AM -0400, Dave Jones wrote:
(...)
> A lot of users look at it as nirvana. I've seen users report bugs against
> ancient kernels, that are extremely likely to be fixed in later kernels,
> yet they're unwilling to move to a newer kernel due to them being tied
> to a driver that only works on an older kernel, despite the fact that there
> are known security and data corruption issues with the older kernels.
> 
> Helping the cause of binary (or part binary) solutions doesn't solve anything.
> It brings nothing but unsolvable problems, and upset users when their problems
> can't get fixed.

The problem is not whether to support or not to support binary only drivers,
I personnally am fairly against such drivers and don't have any on any of my
systems. But the problem is that something that works in a *stable* series
kernel does not work anymore in the next *stable* series which should
theorically only fix bugs. And that's what upsets your users. As you said,
when you tell them to upgrade, they refuse because the only thing they need
to make their laptop work will not work anymore. So when they have spent
tens of hours of research on the net to find *a way* to install Linux on
their laptop with network support, they get used to it. When you tell them
that the upgrade will fix their oopses but will not support their network
card anymore, of course they don't want to upgrade ! And don't tell me that
they just have to by another card, I know users of laptops with only one
pcmcia slot, and this one does not work at all. But even with the oopses,
they are happy not to be forced to work in windows. You know, when they
proudly show me that Linux finally "works" on their laptop, and that they
had to install a ton of binary drivers and ndiswrapper, I whine a lot
telling them that it's not "Linux" they have installed, but sort of a
thing that will ressemble it and which will probably be even less stable
than windows. But they don't care, because they did not have choice.

Willy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Sean
On Mon, September 5, 2005 12:36 am, Willy Tarreau said:

> Well, to be fair, most laptop users today are in companies which provide
> them with the model the staff has chosen for all the employees. And
> employees
> try to install Linux on them anyway. That's how you end up with things
> like
> ndiswrapper, because the people who make those notebooks for companies
> don't
> care at all about their customers ; what they want is negociate with the
> staff to sell them 2000 laptops, and that's all.

Companies that provide laptops to their employees tend to frown on the
users installing a bunch of stuff anyway.   If the company was buying the
laptop to run Linux it would be spec'd appropriately.

But the real crux of the argument here is not whether or not people should
ever use binary-only drivers, it's whether the open source kernel
developers should spend any time worrying about it or not.

Cheers,
Sean


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Willy Tarreau
Hi,

On Mon, Sep 05, 2005 at 12:12:56AM -0400, Sean wrote:
> On Mon, September 5, 2005 12:03 am, Alex Davis said:
> >
> > What if you don't have a choice? When someone comes to me with their
> > laptop
> > containing a built-in wireless card not natively supported by Linux, am I
> > supposed to tell them "go buy a Linux-supported card" when there's a way
> > I can make their existing card work? I don't think so.
> 
> You always have a choice in life.  Nobody is stopping you from doing what
> _you_ choose to do.  That doesn't mean that developers who are concerned
> with the creation and promotion of open source should care one whit about
> your particular take on the situation.   Go do whatever you want just
> don't expect the open source developers to pay for it; you maintain the
> crufty patches yourself.

Well, to be fair, most laptop users today are in companies which provide
them with the model the staff has chosen for all the employees. And employees
try to install Linux on them anyway. That's how you end up with things like
ndiswrapper, because the people who make those notebooks for companies don't
care at all about their customers ; what they want is negociate with the
staff to sell them 2000 laptops, and that's all.

However, those employees generally start with "easy to install" distros,
such as fedora or similar. Those don't ship with standard kernels anyway,
and they provide what is necessary to stay compatible with the tools which
support crappy hardware. So (and it's sad), all those people don't care at
all about kernel development, nor do they care about 2.6.13, 2.6.14, etc...

It's just *us* who tell them "ah, you can't do that because you use a
prehistorical kernel, let me install you the last one", and then and only
then, that fails and we whine about the crappy hardware and the "easy to
install" distro which seem to be made to work together.

So I tend to consider that ndiswrapper users won't care about what will
be in 2.6.14, but only about the fact that *their distro* will still
support ndiswrapper. Of course, it would have been easier if the kernel
would have stabilized and was only in maintenance mode, not breaking
anything on every new release, but Linus has decided differently, so be
it. Those users did not have a choice in the beginning, otherwise they
would have chosen a laptop supported by Linux. And honnestly, I know
plenty of them. In fact, it's the other way around. I know very few
people who can actually choose their laptop.

So you're both half-right from your point of view. But you're both half-wrong
too : no, people can't always choose, and no, people who don't choose their
laptop are not impacted by development kernels. So let's turn the page and
wait for a stable kernel.

Regards,
Willy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Dave Jones
On Sun, Sep 04, 2005 at 08:41:58PM -0700, Alex Davis wrote:
 
 > It will never be 'appropriate' if the system doesn't somehow work on Joe's
 > hardware. We currently have something that works.

"works".

As someone who gets to read a lot of bug reports from end-users,
this thing is far from perfect judging by the number of tainted
oopses I've seen, and not all of them look like stack size issues.

The fact is these situations are undebuggable. Where does that
leave users ?

 > Please explain how Linux can be an 'important force' if people can't
 > use it? Wireless networking is very important to people.

There are plenty of cards available, which work just fine with
free drivers.

 > Um, ever hear of 'compromise'?? All I'm saying is let people use what
 > currently works until we can get an open-source solution. Ndiswrapper's
 > existence is not stopping you (or anyone else) from pestering manufacturers
 > for spec's and writing drivers. I look at ndiswrapper as a stop-gap solution.

A lot of users look at it as nirvana. I've seen users report bugs against
ancient kernels, that are extremely likely to be fixed in later kernels,
yet they're unwilling to move to a newer kernel due to them being tied
to a driver that only works on an older kernel, despite the fact that there
are known security and data corruption issues with the older kernels.

Helping the cause of binary (or part binary) solutions doesn't solve anything.
It brings nothing but unsolvable problems, and upset users when their problems
can't get fixed.

Dave

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [Linux-cluster] Re: GFS, what's remaining

2005-09-04 Thread David Teigland
On Sat, Sep 03, 2005 at 10:41:40PM -0700, Andrew Morton wrote:
> Joel Becker <[EMAIL PROTECTED]> wrote:
> >
> >  > What happens when we want to add some new primitive which has no
> >  > posix-file analog?
> > 
> > The point of dlmfs is not to express every primitive that the
> >  DLM has.  dlmfs cannot express the CR, CW, and PW levels of the VMS
> >  locking scheme.  Nor should it.  The point isn't to use a filesystem
> >  interface for programs that need all the flexibility and power of the
> >  VMS DLM.  The point is a simple system that programs needing the basic
> >  operations can use.  Even shell scripts.
> 
> Are you saying that the posix-file lookalike interface provides access to
> part of the functionality, but there are other APIs which are used to
> access the rest of the functionality?  If so, what is that interface, and
> why cannot that interface offer access to 100% of the functionality, thus
> making the posix-file tricks unnecessary?

We're using our dlm quite a bit in user space and require the full dlm
API.  It's difficult to export the full API through a pseudo fs like
dlmfs, so we've not found it a very practical approach.  That said, it's a
nice idea and I'd be happy if someone could map a more complete dlm API
onto it.

We export our full dlm API through read/write/poll on a misc device.  All
user space apps use the dlm through a library as you'd expect.  The
library communicates with the dlm_device kernel module through
read/write/poll and the dlm_device module talks with the actual dlm:
linux/drivers/dlm/device.c  If there's a better way to do this, via a
pseudo fs or not, we'd be pleased to try it.

Dave

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: x86-cache-pollution-aware-__copy_from_user_ll.patch added to -mm tree

2005-09-04 Thread David S. Miller
From: Andrew Morton <[EMAIL PROTECTED]>
Date: Sun, 4 Sep 2005 14:42:18 -0700

> It seems a strange thing to check though.   Do we really need it?

Other platforms already do, it's a very good sanity check.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Sean
On Mon, September 5, 2005 12:03 am, Alex Davis said:
>
> What if you don't have a choice? When someone comes to me with their
> laptop
> containing a built-in wireless card not natively supported by Linux, am I
> supposed to tell them "go buy a Linux-supported card" when there's a way
> I can make their existing card work? I don't think so.

You always have a choice in life.  Nobody is stopping you from doing what
_you_ choose to do.  That doesn't mean that developers who are concerned
with the creation and promotion of open source should care one whit about
your particular take on the situation.   Go do whatever you want just
don't expect the open source developers to pay for it; you maintain the
crufty patches yourself.

If you want to see the stupidity of your argument imagine someone going to
Microsoft and saying... "look, if you'd simply stop charging for MS
Windows more people would embrace it!"   Do you think therefore microsoft
should stop charging for Windows???

What if I wrote an email to them and said...  "A friend of mine brings me
his laptop to install Windows on it, but he can't afford a copy of
Windows!!!"  Do you think they should stop charging for Windows to help
you out??  Get real.

Please just do whatever you want and stop hoping that open source
developers will ever care about your choice to embrace binary-only
drivers.

Cheers,
Sean


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: x86-cache-pollution-aware-__copy_from_user_ll.patch added to -mm tree

2005-09-04 Thread David S. Miller
From: Dave Jones <[EMAIL PROTECTED]>
Subject: Re: x86-cache-pollution-aware-__copy_from_user_ll.patch added to -mm 
tree
Date: Sun, 4 Sep 2005 16:23:33 -0400

> On Sun, Sep 04, 2005 at 01:16:00PM -0700, Andrew Morton wrote:
>  >  unsigned long __copy_to_user_ll(void __user *to, const void *from, 
> unsigned long n)
>  >  {
>  >BUG_ON((long) n < 0);
> 
> Ehh? It's unsigned. This will never be true.

It's to catch the user slipping in enormous lengths to
the user copy routines.

Sparc64 makes this check as well.  From U3memcpy.S:

srlx%o2, 31, %g2
cmp %g2, 0
tne %xcc, 5

%o2 is the length, we make sure the upper 33-bits are clear.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Alex Davis


--- Sean <[EMAIL PROTECTED]> wrote:

> On Sun, September 4, 2005 11:41 pm, Alex Davis said:
> 
> > It will never be 'appropriate' if the system doesn't somehow work on Joe's
> > hardware. We currently have something that works. In my opinion it's
> > pointless to take that away. The manufacturers will still stone-wall us
> > regardless of ndiswrapper's existence. They were doing it before ndis-
> > wrapper existed.
> 
> There are lots and lots of systems where Linux works.  Encouraging users
> to buy hardware that works with Linux, can only help.  Encouraging them
> that it doesn't matter and that binary-only drivers are a good
> alternative, can only hurt.
> 
> > Please explain how Linux can be an 'important force' if people can't
> > use it? Wireless networking is very important to people.
> 
> Lots of people can and do use Linux without ANY binary drivers.   There
> are Wireless choices that don't require binary only drivers.
What if you don't have a choice? When someone comes to me with their laptop
containing a built-in wireless card not natively supported by Linux, am I
supposed to tell them "go buy a Linux-supported card" when there's a way
I can make their existing card work? I don't think so.

> > Um, ever hear of 'compromise'?? All I'm saying is let people use what
> > currently works until we can get an open-source solution. Ndiswrapper's
> > existence is not stopping you (or anyone else) from pestering
> > manufacturers
> > for spec's and writing drivers. I look at ndiswrapper as a stop-gap
> > solution.
> > Hey, even Linus himself has said 'better a sub-optimal solution than no
> > solution'.
> 
> Nobody is stopping anyone from using what "currently works", there will be
> lots of like minded people to provide crap kernels and shitty binary
> drivers to people who don't know better. 
>  So don't worry, your well
> intentioned vision of the future will survive the removal of 8K stacks
> from the kernel.

> Regards,
> Sean
> 
> 
> 


I code, therefore I am

__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCHSET] 2.6.13-git3-bird1

2005-09-04 Thread viro
While way overdue, "fixes and sparse annotations" tree is finally
going public.  This version is basically a starting point - there will be
much more stuff to merge.

Right now it builds with allmodconfig[1] on the following set:
alpha (UP and SMP), amd64 (UP and SMP), arm (RPC, versatile), i386, ia64,
m32r, m68k (sans sun3), ppc (6xx, 44x, chestnut), ppc64, sparc, sparc64,
s390 (31 and 64bit) and uml (i386 and amd64)[2].

Amount of sparse and gcc4 warnings is moderate on all of the
above - there's no "drowns everything in noise" stuff left.  There _are_
nasty areas (drm, some of the sata, several mem* helpers with constant
arguments), but at least that's easy to isolate.  Tracking build log
changes for regressions had been fairly easy so far; quite a few chunks
in there (as well as already merged stuff) had been found that way,
so for now I'd say that it's usable.

Current patchset is on ftp.linux.org.uk/pub/people/viro/ -
patch-2.6.13-git3-bird1.bz2 is combined patch, patchset/* is the splitup.
Long description of patches is in patchset/set*, short log is in the end of
this posting.  Current build and sparse logs are in logs/*/{log17b,S-log17b}.
Eventually I'll probably have to use rcs for them - they are large and change
slowly...

Patchset will change pretty fast; for one thing, most of the stuff
in there is easily mergable, for another - sparse patches here are just
dealing with the most annoying noise sources.  There will be more and folks
are more than welcome to send sane annotation patches for merge.

Have fun - it's just getting started...

[1] configs being tracked are of allmodconfig-with-fixed-subset variety; e.g.
alpha-UP is "set as much as possible to y or m, with CONFIG_SMP not set", etc.
See config/* for currently tracked ones.

[2] toolkit for cross-toolchains will be re-posted on anonftp pretty soon;
ditto for details on cross-build setups, etc.

Short log of the current patchset follows:

linus-delta Changes in Linus' tree since -git3

Infrastructure:

I0-kconfig  Teaches allmodconfig to pin a set of options in given
state [NB: rz has another variant; this is just a temporary]
I1-CHECKFLAGS   Allows to add stuff to CHECKFLAGS from command line
I2-disable-DI   disables CONFIG_DEBUG_INFO for test builds

Kconfig fixes:

B2-rio  rio is too broken to mess with; marked as such
B7-floppy   sanitized and fixed floppy dependencies
B12-broken-on-big-endiannew kconfig symbol: BROKEN_ON_BIG_ENDIAN.
B17-m32r-smccombination of M32R, SMC91X and ISA is broken
B22-mtd-xip MTD_XIP is there only for two subarchitectures of ARM - PXA
and SA1100 [not for merge; cleaner variant needed]
B23-83908390 fixes - part 1 (generic and arm/etherh)
B33-m68k-8390   8390 fixes - part 2 (m68k ones)
B41-s390-phyPHYLIB is broken on s390
B42-mga drm/mga is broken if AGP is not enabled

Pure compile fixes:

C0-envctrl  envctrl fixes
C15-mv643xx_eth mv643xx_eth ifdefs [not for merge; dwmw2 has objections]
C32-segment missed gratitious includes of asm/segment.h
B40-mxser-sparc32 more sparc32 dependencies fallout
C33-mxser   another missed asm/segment.h, real fix for problem B40 marks
C34-uli526x missing include in uli526x.c
C35-ipw2200 missing include (ipw2200)
C36-sunsu   sunsu compile fixes

Misc bug fixes:
F6-zatm dereference of uninitialized pointer in zatm

Crap spotted by gcc and sparse:

O3-s2io-u64 s2io u64 use for uintptr_t
S0-chelsio  chelsio sparse annotations
S1-e1000iomem annotations (e1000)
S2-s2io-iomem   iomem annotations (s2io)
S3-ipw2100  iomem annotations, NULL noise removal (ipw2100)
S4-scsi-ch  __user annotations (drivers/scsi/ch.c)
S5-ahci iomem annotations (ahci)
S6-sata_nv  iomem annotations (sata_nv)
S7-sata_sx4 iomem annotations (sata_sx4)
S8-sata_qstor   enum safety (sata_qstor)
S9-aaci iomem annotations (aaci)
S10-ethtool __user annotations (ethtool)
S14-m32r-user   basic __user annotations (m32r)
S15-armv-iomem  basic iomem annotations (arm-versatile)
S16-m32r-iomem  missing basic iomem annotations (m32r)
S17-ia64-user   missing basic __user annotations (ia64)
S18-rpc-iomem   saner casts in arm-rpc IOMEM() 
S19-sparse-m32r pass definition of __BIG_ENDIAN__ to sparse (m32r)

m68k patches:

C16-dmasound-lvalueslvalues abuse in dmasound
C17-dmasound-extern compile fixes for dmsound (static vs. extern)
C18-sun3intsstatic vs. extern in sun3ints.h
C19-sun3_pgtablebogus function argument types (sun3_pgtable.h)
C20-amigaints   static vs. extern in amigaints.h
C21-atyfb-typo  dumb typo in atyfb
C22-mac8390 lvalues abuse in mac8390
C23-lance   lvalues abuse in lance
C24-82596-apricot   wrong ifdefs in 82596
C25-scc static vs. extern in scc
C26-m68k-reset  memory input should

[patch] i386 seccomp fix for auditing/ptrace

2005-09-04 Thread Andrea Arcangeli
Hello,

This is the same issue as ppc64 before, when returning to userland we
shouldn't re-compute the seccomp check or the task could be killed
during sigreturn when orig_eax is overwritten by the sigreturn syscall.
This was found by Roland.

This was harmless from a security standpoint, but some i686 users
reported failures with auditing enabled system wide (some distro
surprisingly makes it the default) and I reproduced it too by keeping
the whole workload under strace -f.

Patch is tested and works for me under strace -f.

[EMAIL PROTECTED]:~/cpushare> strace -o /tmp/o -f python seccomp_test.py
make: Nothing to be done for `seccomp_test'.
Starting computing some malicious bytecode
init
load
start
stop
receive_data failure
kill
exit_code 0 signal 9
The malicious bytecode has been killed successfully by seccomp
Starting computing some safe bytecode
init
load
start
stop
174 counts
kill
exit_code 0 signal 0
The seccomp_test.py completed successfully, thank you for testing.

Thanks.

Signed-off-by: Andrea Arcangeli <[EMAIL PROTECTED]>

diff -r 1df7bfbb783f arch/i386/kernel/ptrace.c
--- a/arch/i386/kernel/ptrace.c Fri Sep  2 09:01:35 2005
+++ b/arch/i386/kernel/ptrace.c Mon Sep  5 05:30:49 2005
@@ -680,8 +680,9 @@
 __attribute__((regparm(3)))
 void do_syscall_trace(struct pt_regs *regs, int entryexit)
 {
-   /* do the secure computing check first */
-   secure_computing(regs->orig_eax);
+   if (!entryexit)
+   /* do the secure computing check first */
+   secure_computing(regs->orig_eax);
 
if (unlikely(current->audit_context) && entryexit)
audit_syscall_exit(current, AUDITSC_RESULT(regs->eax), 
regs->eax);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Kyle Moffett

On Sep 4, 2005, at 23:41:58, Alex Davis wrote:

--- Sean <[EMAIL PROTECTED]> wrote:

It's not a philosophical issue, it's what Linux _is_: an open source
operating system! That's what the developers are working on; not your
half-baked vision.

Um, ever hear of 'compromise'?? All I'm saying is let people use what
currently works until we can get an open-source solution.  
Ndiswrapper's
existence is not stopping you (or anyone else) from pestering  
manufacturers
for spec's and writing drivers. I look at ndiswrapper as a stop-gap  
solution.
Hey, even Linus himself has said 'better a sub-optimal solution  
than no solution'.


In any case, this discussion is moot because the kernel API is changing
for the better and there is a clearly defined fix for ndiswrapper that
will allow it to continue to work even with the new interface:  allocate
a separate ndiswrapper stack (IE: Not the kernel stacks).  The kernel is
under no obligation not to break out-of-tree drivers, etc, even semi- 
non-

-binary-only ones such as ndiswrapper.  Figure out how to fix it and
move on!

Cheers,
Kyle Moffett

--
Q: Why do programmers confuse Halloween and Christmas?
A: Because OCT 31 == DEC 25.



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Sean
On Sun, September 4, 2005 11:41 pm, Alex Davis said:

> It will never be 'appropriate' if the system doesn't somehow work on Joe's
> hardware. We currently have something that works. In my opinion it's
> pointless to take that away. The manufacturers will still stone-wall us
> regardless of ndiswrapper's existence. They were doing it before ndis-
> wrapper existed.

There are lots and lots of systems where Linux works.  Encouraging users
to buy hardware that works with Linux, can only help.  Encouraging them
that it doesn't matter and that binary-only drivers are a good
alternative, can only hurt.

> Please explain how Linux can be an 'important force' if people can't
> use it? Wireless networking is very important to people.

Lots of people can and do use Linux without ANY binary drivers.   There
are Wireless choices that don't require binary only drivers.

> Um, ever hear of 'compromise'?? All I'm saying is let people use what
> currently works until we can get an open-source solution. Ndiswrapper's
> existence is not stopping you (or anyone else) from pestering
> manufacturers
> for spec's and writing drivers. I look at ndiswrapper as a stop-gap
> solution.
> Hey, even Linus himself has said 'better a sub-optimal solution than no
> solution'.

Nobody is stopping anyone from using what "currently works", there will be
lots of like minded people to provide crap kernels and shitty binary
drivers to people who don't know better.   So don't worry, your well
intentioned vision of the future will survive the removal of 8K stacks
from the kernel.

Regards,
Sean


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Alex Davis


--- Sean <[EMAIL PROTECTED]> wrote:

> On Sun, September 4, 2005 10:29 pm, Alex Davis said:
> 
> > Linux isn't just used by kernel developers. It's that attitude that
> > helps insure Linux will always have a small userbase. Lack of numbers
> > just gives the manufacturers another reason not to care about us. Joe
> > User doesn't care about our philosophical issues, nor should he. When
> > I install Linux on someone's machine, he wants it to work NOW, not in
> > some 'perfect-world' future.
> 
> Alex,
> 
> 
> Please stop the hand wringing over not being able to convince Joe User to
> install Linux today.  It will happen naturally when it's appropriate,
It will never be 'appropriate' if the system doesn't somehow work on Joe's
hardware. We currently have something that works. In my opinion it's
pointless to take that away. The manufacturers will still stone-wall us
regardless of ndiswrapper's existence. They were doing it before ndis-
wrapper existed.

> Linux is steadily growing in power and acceptance without binary drivers. 
> Trying to artificially speed up the process by destroying the very thing
> that makes Linux an important force is actually counterproductive.
Please explain how Linux can be an 'important force' if people can't
use it? Wireless networking is very important to people.

> It's not a philosophical issue, it's what Linux _is_: an open source
> operating system! That's what the developers are working on; not your
> half-baked vision. 
Um, ever hear of 'compromise'?? All I'm saying is let people use what
currently works until we can get an open-source solution. Ndiswrapper's
existence is not stopping you (or anyone else) from pestering manufacturers
for spec's and writing drivers. I look at ndiswrapper as a stop-gap solution.
Hey, even Linus himself has said 'better a sub-optimal solution than no 
solution'.


> If you want to create some bastardized version and are
> willing to commit dollars and effort to maintaining the code needed to do
> so, feel free.
> 
> Regards,
> Sean
> 
> 
> 


I code, therefore I am

__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GFS, what's remaining

2005-09-04 Thread David Teigland
On Fri, Sep 02, 2005 at 10:28:21PM -0700, Greg KH wrote:
> On Fri, Sep 02, 2005 at 05:44:03PM +0800, David Teigland wrote:
> > On Thu, Sep 01, 2005 at 01:35:23PM +0200, Arjan van de Ven wrote:
> > 
> > > + gfs2_assert(gl->gl_sbd, atomic_read(&gl->gl_count) > 0,);
> > 
> > > what is gfs2_assert() about anyway? please just use BUG_ON directly
> > > everywhere
> > 
> > When a machine has many gfs file systems mounted at once it can be useful
> > to know which one failed.  Does the following look ok?
> > 
> > #define gfs2_assert(sdp, assertion)   \
> > do {  \
> > if (unlikely(!(assertion))) { \
> > printk(KERN_ERR   \
> > "GFS2: fsid=%s: fatal: assertion \"%s\" failed\n" \
> > "GFS2: fsid=%s:   function = %s\n"\
> > "GFS2: fsid=%s:   file = %s, line = %u\n" \
> > "GFS2: fsid=%s:   time = %lu\n",  \
> > sdp->sd_fsname, # assertion,  \
> > sdp->sd_fsname,  __FUNCTION__,\
> > sdp->sd_fsname, __FILE__, __LINE__,   \
> > sdp->sd_fsname, get_seconds());   \
> > BUG();\
> 
> You will already get the __FUNCTION__ (and hence the __FILE__ info)
> directly from the BUG() dump, as well as the time from the syslog
> message (turn on the printk timestamps if you want a more fine grain
> timestamp), so the majority of this macro is redundant with the BUG()
> macro...

Joern already suggested moving this out of line and into a function (as it
was before) to avoid repeating string constants.  In that case the
function, file and line from BUG aren't useful.  We now have this, does it
look ok?

void gfs2_assert_i(struct gfs2_sbd *sdp, char *assertion, const char *function,
   char *file, unsigned int line)
{
panic("GFS2: fsid=%s: fatal: assertion \"%s\" failed\n"
  "GFS2: fsid=%s:   function = %s, file = %s, line = %u\n",
  sdp->sd_fsname, assertion,
  sdp->sd_fsname, function, file, line);
}

#define gfs2_assert(sdp, assertion) \
do { \
if (unlikely(!(assertion))) { \
gfs2_assert_i((sdp), #assertion, \
  __FUNCTION__, __FILE__, __LINE__); \
} \
} while (0)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: x86-cache-pollution-aware-__copy_from_user_ll.patch added to -mm tree

2005-09-04 Thread Hiro Yoshioka
From: Andrew Morton <[EMAIL PROTECTED]>

> Dave Jones <[EMAIL PROTECTED]> wrote:
> >
> > On Sun, Sep 04, 2005 at 01:16:00PM -0700, Andrew Morton wrote:
> >   >  unsigned long __copy_to_user_ll(void __user *to, const void *from, 
> > unsigned long n)
> >   >  {
> >   > BUG_ON((long) n < 0);
> > 
> >  Ehh? It's unsigned. This will never be true.
> 
> It's cast to long, so it'll trap if we try to copy >=2G.
> 
> It seems a strange thing to check though.   Do we really need it?

I don't know. I've just cut&paste the original __copy_from_user_ll()

Regards,
  Hiro
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: nfs4 client bug

2005-09-04 Thread J. Bruce Fields
On Sun, Sep 04, 2005 at 08:08:22PM -0700, Bret Towe wrote:
> On 9/4/05, J. Bruce Fields <[EMAIL PROTECTED]> wrote:
> > Do you get anything from alt-sysrq-T?
> 
> no i havent used that im usally in x when its freezing
> x wont even switch to console would it still give me anything then?

Well, you can try something like:
alt-sysrq-T
wait a couple seconds, then
alt-sysrq-S
alt-sysrq-U
alt-sysrq-B
with maybe a second between each to give stuff a chance to get to disk.

Then if you're lucky you may find the stack dumps in your log after you
reboot.

--b.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: nfs4 client bug

2005-09-04 Thread Bret Towe
On 9/4/05, J. Bruce Fields <[EMAIL PROTECTED]> wrote:
> On Sun, Sep 04, 2005 at 01:51:08PM -0700, Bret Towe wrote:
> > On 9/4/05, Bret Towe <[EMAIL PROTECTED]> wrote:
> > > On 9/4/05, Francois Romieu <[EMAIL PROTECTED]> wrote:
> > > > Bret Towe <[EMAIL PROTECTED]> :
> > > > [...]
> > > > > after moving some files on the server to a new location then trying to
> > > > > add the files
> > > > > to xmms playlist i found the following in dmesg after xmms froze
> > > > > wonder how many more items i can find...
> > > >
> > > > The system includes some binary only stuff. Please contact your vendor
> > > > or provide the traces for a configuration wherein the relevant module
> > > > was not loaded after boot. It may make sense to get in touch with
> > > > [EMAIL PROTECTED] then.
> > >
> > > the 'binary only stuff' is ati-drivers kernel module and it crashs
> > > with or without it
> > > ill provide a 'untainted' trace as soon as i can repeat the bug again
> >
> > ok without ati-drivers kernel module loaded the computer basicly just
> > hard locks when
> > some bug hits dunno if its the same item
> 
> Do you get anything from alt-sysrq-T?

no i havent used that im usally in x when its freezing
x wont even switch to console would it still give me anything then?
 
> > to repeat it tho one needs laptop-mode enabled have xmms playing music
> > (flac in my case)
> > which resides on nfs then just put the computer under some local load
> > for a little bit
> > till which im guessing it needs to clear some memory or somethin and
> > it hits this hard lock
> > or the errors i mailed previously when ati-drivers is loaded
> 
> What kernel version is this?

2.6.13


> --b.
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Old ipw2200 code in 2.6.13-git3 and 2.6.13-mm1

2005-09-04 Thread Ryan Anderson
On Fri, Sep 02, 2005 at 08:48:28PM -0700, Miles Lane wrote:

[snip]

> Can we please get the latest IPW2200 code into the development kernels soon?

Seconded.  I haven't rebuilt the 1.0.6 code against the 2.6.13-git
kernels, but my 2.6.13-rc4 build with 1.0.6 ipw2200 in it seems much
more stable and dependable at starting up a network than
2.6.13-git-current does.

(For example, I had to do a full power-cycle to get things working again
after I ran into a "failed to send TX_POWER" issue - I've never seen
that before, but I've never run the 1.0.0 driver before today.)

-- 

Ryan Anderson
  sometimes Pug Majere
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/3] dynticks - implement no idle hz for x86

2005-09-04 Thread Con Kolivas
On Mon, 5 Sep 2005 06:37 am, Nishanth Aravamudan wrote:
> On 04.09.2005 [21:26:16 +0100], Russell King wrote:
> > On Sun, Sep 04, 2005 at 01:10:54PM -0700, Nishanth Aravamudan wrote:
> > > I've got a few ideas that I think might help push Con's patch
> > > coalescing efforts in an arch-independent fashion.

Thanks very much Nish!

I've updated the patches here http://ck.kolivas.org/patches/dyn-ticks/ with 
the latest change to timer_pm.c that Srivatsa sent me and have a new rollup 
there as well as the split out patches. The ball is in Nish's court now so 
we'll avoid touching the code till you get back to us (this project needs 
some form of locking ;) ).

Cheers,
Con
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Sean
On Sun, September 4, 2005 10:29 pm, Alex Davis said:

> Linux isn't just used by kernel developers. It's that attitude that
> helps insure Linux will always have a small userbase. Lack of numbers
> just gives the manufacturers another reason not to care about us. Joe
> User doesn't care about our philosophical issues, nor should he. When
> I install Linux on someone's machine, he wants it to work NOW, not in
> some 'perfect-world' future.

Alex,

I think you're wrong on just about all counts.  The developers get to
_dictate_ what goes into Linux because they're footing the bill.  Their
past performance shows that your worries are unfounded (as the vast
acceptance of Linux long _before_ binary-only drivers even existed,
shows).

Please stop the hand wringing over not being able to convince Joe User to
install Linux today.  It will happen naturally when it's appropriate,
Linux is steadily growing in power and acceptance without binary drivers. 
 Trying to artificially speed up the process by destroying the very thing
that makes Linux an important force is actually counterproductive.

It's not a philosophical issue, it's what Linux _is_: an open source
operating system!   That's what the developers are working on; not your
half-baked vision.  If you want to create some bastardized version and are
willing to commit dollars and effort to maintaining the code needed to do
so, feel free.

Regards,
Sean


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Alex Davis


--- Sean <[EMAIL PROTECTED]> wrote:

> On Sun, September 4, 2005 10:00 pm, Alex Davis said:
> > Dave Jones wrote:
> >>- NDISwrapper / driverloader.
> >>  (Shock, horror - no-one cares).
> >
> > Shock, horror. Someone DOES care: everyone who uses ndiswrapper or
> > driverloader, whether they know it or not. Are you proposing that
> > we punish the end-users because of the obstinence of the hardware
> > manufacturers? If/when native drivers are written, maybe we can
> > revisit this.
> 
> 
> Continuing the promotion of binary-only drivers _hurts_ the demand for
> (and thus the development of) open source drivers.  Read the comment from
> Dave as something like "Nobody who matters, with regard to kernel
> development, cares about NDISwrapper".   If _you_ care, fork your own tree
> and maintain the patch as necessary.
> 
> Regards,
> Sean

Sean:

Linux isn't just used by kernel developers. It's that attitude that helps insure
Linux will always have a small userbase. Lack of numbers just gives the 
manufacturers
another reason not to care about us. Joe User doesn't care about our 
philosophical
issues, nor should he. When I install Linux on someone's machine, he wants it 
to work
NOW, not in some 'perfect-world' future. 

-Alex

-Alex
> 


I code, therefore I am

__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] ipw2200: Missing kmalloc check

2005-09-04 Thread Panagiotis Issaris

The ipw2200 driver code in current GIT contains a kmalloc() followed by
a memset() without handling a possible memory allocation failure.

Signed-off-by: Panagiotis Issaris <[EMAIL PROTECTED]>
---

 drivers/net/wireless/ipw2200.c |4 
 1 files changed, 4 insertions(+), 0 deletions(-)

8e288419b49346fee512739acac446c951727d04
diff --git a/drivers/net/wireless/ipw2200.c
b/drivers/net/wireless/ipw2200.c
--- a/drivers/net/wireless/ipw2200.c
+++ b/drivers/net/wireless/ipw2200.c
@@ -3976,6 +3976,10 @@ static struct ipw_rx_queue *ipw_rx_queue
int i;
 
rxq = (struct ipw_rx_queue *)kmalloc(sizeof(*rxq), GFP_KERNEL);
+   if (unlikely(!rxq)) {
+   IPW_ERROR("memory allocation failed\n");
+   return NULL;
+   }
memset(rxq, 0, sizeof(*rxq));
spin_lock_init(&rxq->lock);
INIT_LIST_HEAD(&rxq->rx_free);


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Sean
On Sun, September 4, 2005 10:00 pm, Alex Davis said:
> Dave Jones wrote:
>>- NDISwrapper / driverloader.
>>  (Shock, horror - no-one cares).
>
> Shock, horror. Someone DOES care: everyone who uses ndiswrapper or
> driverloader, whether they know it or not. Are you proposing that
> we punish the end-users because of the obstinence of the hardware
> manufacturers? If/when native drivers are written, maybe we can
> revisit this.


Continuing the promotion of binary-only drivers _hurts_ the demand for
(and thus the development of) open source drivers.  Read the comment from
Dave as something like "Nobody who matters, with regard to kernel
development, cares about NDISwrapper".   If _you_ care, fork your own tree
and maintain the patch as necessary.

Regards,
Sean

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Alex Davis
Dave Jones wrote:
>- NDISwrapper / driverloader.
>  (Shock, horror - no-one cares).

Shock, horror. Someone DOES care: everyone who uses ndiswrapper or
driverloader, whether they know it or not. Are you proposing that
we punish the end-users because of the obstinence of the hardware
manufacturers? If/when native drivers are written, maybe we can 
revisit this.



I code, therefore I am




__
Click here to donate to the Hurricane Katrina relief effort.
http://store.yahoo.com/redcross-donate3/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [Pcihpd-discuss] Re: ACPI problem with PCI Express Native Hot-plug driver

2005-09-04 Thread Rajat Jain
> 
> Hello,
> Would you be willing to test the mainline kernel (2.6.13) to see if you
> have the same problem with the most recent version of the driver?  And
> attach the logs again please.
> 
> Thanks,
> Kristen
> 
> 

Thanks, for the inputs. I will test it with 2.6.13 and get back.

Rajat
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread dean gaudet
On Mon, 5 Sep 2005, Adrian Bunk wrote:

> How do you put pressure on hardware manufacturers for getting them to 
> release the specs?
> 
> If they are able to write "supported by Linux" on their products anyway 
> because there's a driver that runs under NdisWrapper?

that's specious... they can put "supported by Linux" on their products by 
supplying a binary-only driver too... ndiswrapper is orthogonal to that 
problem.

on a tangent... has there been any further research/work on page 
clustering?  wli's patches haven't been updated in a while... it's another 
way to supply larger stacks.  (hell with 16KiB "pages" i'd be stoked to 
"waste" the bottom 4KiB of each stack with an unmapped page to ensure 
overflow is detected.)

-dean
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Brand-new notebook useless with Linux...

2005-09-04 Thread Alejandro Bonilla Beeche
On Sat, 2005-09-03 at 18:58 -0400, Chuck Ebbert wrote:
> I just bought a new notebook.  Here is the output from lspci using the latest
> pci.ids file from sourceforge:
> 
> 00:00.0 Host bridge: ATI Technologies Inc RS480 Host Bridge (rev 01)
> 00:01.0 PCI bridge: ATI Technologies Inc: Unknown device 5a3f
> 00:13.0 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller
> 00:13.1 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller
> 00:13.2 USB Controller: ATI Technologies Inc IXP SB400 USB2 Host Controller
> 00:14.0 SMBus: ATI Technologies Inc IXP SB400 SMBus Controller (rev 11)
> 00:14.1 IDE interface: ATI Technologies Inc Standard Dual Channel PCI IDE 
> Controller ATI
> 00:14.3 ISA bridge: ATI Technologies Inc IXP SB400 PCI-ISA Bridge
> 00:14.4 PCI bridge: ATI Technologies Inc IXP SB400 PCI-PCI Bridge
> 00:14.5 Multimedia audio controller: ATI Technologies Inc IXP SB400 AC'97 
> Audio Controller (rev 02)
This is an ac97, try the intel sound driver.
> 00:14.6 Modem: ATI Technologies Inc: Unknown device 4378 (rev 02)
No Way.
> 00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] 
> HyperTransport Technology Configuration
> 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] 
> Address Map
> 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM 
> Controller
> 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] 
> Miscellaneous Control
> 01:05.0 VGA compatible controller: ATI Technologies Inc ATI Radeon XPRESS 
> 200M 5955 (PCIE)
> 05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. 
> RTL-8139/8139C/8139C+ (rev 10)
Should work.
> 05:02.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 
> 802.11g Wireless LAN Controller (rev 02)
linuxant.com or ndiswrapper. I believe they do not have a driver for
Linux.
> 05:09.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller
> 05:09.2 FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host 
> Controller
> 05:09.3 Mass storage controller: Texas Instruments PCIxx21 Integrated 
> FlashMedia Controller
> 05:09.4 Class 0805: Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, 
> PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD) Controller
> 
> None of these work and I can find no support anywhere for them:
> 
> SMBus
> Audio ("unknown codec")
> Modem ("no codec available")
> Wireless
> FlashMedia
Doubt it.
> SD/MMC
Doubt it.
> 
> Additionally, the system clock runs at 2x normal speed with PowerNow enabled.
Most likely an ACPI or Windowish ACPI with your laptop.

You are not even saying which laptop you are with. Check google and the
linux on laptops website.

.Alejandro

> 
> Am I stuck with running XP on this thing?
> 
> __
> Chuck
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [EMAIL PROTECTED]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Adrian Bunk
On Sun, Sep 04, 2005 at 06:30:29PM -0700, Alex Davis wrote:
> >The NdisWrapper FAQ already tells you that you need a patch for some of 
> >the binary-only Windows drivers that require more than 8kB stacks.
> >
> >And the fact that NdisWrapper is mostly working hinders the development 
> >of open source drivers for this hardware.
> 
> If the hardware manufacturer won't give you the spec's then writing a driver
> is going to be pretty difficult, if not impossible. Reverse-engineering 
> may be possible, but still
> 
> I believe it's the lack of spec's, rather than the existence of ndiswrapper
> and driverloader, that hinder driver development. 

How do you put pressure on hardware manufacturers for getting them to 
release the specs?

If they are able to write "supported by Linux" on their products anyway 
because there's a driver that runs under NdisWrapper?

Or if people return/don't buy the hardware because of missing Linux 
support reducing the revenue of the hardware manufacturer by some $$ ?

> -Alex

cu
Adrian

-- 

   "Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
   "Only a promise," Lao Er said.
   Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


re: RFC: i386: kill !4KSTACKS

2005-09-04 Thread Alex Davis
>The NdisWrapper FAQ already tells you that you need a patch for some of 
>the binary-only Windows drivers that require more than 8kB stacks.
>
>And the fact that NdisWrapper is mostly working hinders the development 
>of open source drivers for this hardware.

If the hardware manufacturer won't give you the spec's then writing a driver
is going to be pretty difficult, if not impossible. Reverse-engineering 
may be possible, but still

I believe it's the lack of spec's, rather than the existence of ndiswrapper
and driverloader, that hinder driver development. 

-Alex




I code, therefore I am

__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: RAID1 ramdisk patch

2005-09-04 Thread Neil Brown
On Monday September 5, [EMAIL PROTECTED] wrote:
> Hi all,
> 
> I have written a small patch for use with a HDD-backed ramdisk in the md 
> raid1 driver. The raid1 driver usually does read balancing on the disks, 
> but I feel that if it encounters a single ram disk in the array that 
> should be the preferred read disk. The application of this would be for 
> example a 2GB ram disk in raid1 with a 2GB partition, where the ram disk 
> is used for reading and both 'disks' used for writing.
> 
> Attached is a bit of code which checks for a ram-disk and sets it as 
> preferred disk. It also checks if the ram disk is in sync before 
> allowing the read.

Hi,
 equivalent functionality is now available in 2.6-mm and is referred
 to as 'write mostly'.
 If you use mdadm-2.0 and mark a device as --write-mostly, then all
 read requests will go to the other device(s) if possible,.
 e.g.
   mdadm --create /dev/md0 --level=1 --raid-disks=2 /dev/ramdisk \
  --writemostly /dev/realdisk

 Does this suit your needs?

 You can also arrange for the write to the writemostly device to be
 'write-behind' so that the filesystem doesn't wait for the write to
 complete.  This can reduce write-latency (though not increase write
 throughput) at a very small cost of reliability (if the RAM dies, the
 disk may not be 100% up-to-date).

NeilBrown

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


RAID1 ramdisk patch

2005-09-04 Thread Wilco Baan Hofman

Hi all,

I have written a small patch for use with a HDD-backed ramdisk in the md 
raid1 driver. The raid1 driver usually does read balancing on the disks, 
but I feel that if it encounters a single ram disk in the array that 
should be the preferred read disk. The application of this would be for 
example a 2GB ram disk in raid1 with a 2GB partition, where the ram disk 
is used for reading and both 'disks' used for writing.


Attached is a bit of code which checks for a ram-disk and sets it as 
preferred disk. It also checks if the ram disk is in sync before 
allowing the read.


PS. I am not this list, please CC me if a reply were to be made.

Regards,

Wilco Baan Hofman
diff -urN linux-2.6.13-rc6.orig/include/linux/raid/raid1.h 
linux-2.6.13-rc6/include/linux/raid/raid1.h
--- linux-2.6.13-rc6.orig/include/linux/raid/raid1.h2005-08-07 
20:18:56.0 +0200
+++ linux-2.6.13-rc6/include/linux/raid/raid1.h 2005-09-04 11:41:24.0 
+0200
@@ -32,6 +32,7 @@
int raid_disks;
int working_disks;
int last_used;
+   int preferred_read_disk;
sector_tnext_seq_sect;
spinlock_t  device_lock;
diff -urN linux-2.6.13-rc6.orig/drivers/md/raid1.c 
linux-2.6.13-rc6/drivers/md/raid1.c 
--- linux-2.6.13-rc6.orig/drivers/md/raid1.c2005-08-07 20:18:56.0 
+0200
+++ linux-2.6.13-rc6/drivers/md/raid1.c 2005-09-05 01:54:26.0 +0200
@@ -21,6 +21,8 @@
  * Additions to bitmap code, (C) 2003-2004 Paul Clements, SteelEye Technology:
  * - persistent bitmap code
  *
+ * Special handling of ramdisk (C) 2005 Wilco Baan Hofman <[EMAIL PROTECTED]>
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2, or (at your option)
@@ -399,8 +401,6 @@
goto rb_out;
}
}
-   disk = new_disk;
-   /* now disk == new_disk == starting point for search */
 
/*
 * Don't change to another disk for sequential reads:
@@ -409,7 +409,18 @@
goto rb_out;
if (this_sector == conf->mirrors[new_disk].head_position)
goto rb_out;
-
+   
+   /* [SYN] If the preferred disk exists, return it */
+   if (conf->preferred_read_disk != -1 &&
+   
(new_rdev=conf->mirrors[conf->preferred_read_disk].rdev) != NULL &&
+   new_rdev->in_sync) {
+   new_disk = conf->preferred_read_disk;
+   goto rb_out;
+   }
+   
+   disk = new_disk;
+   /* now disk == new_disk == starting point for search */
+   
current_distance = abs(this_sector - conf->mirrors[disk].head_position);
 
/* Find the disk whose head is closest */
@@ -1292,10 +1303,11 @@
 static int run(mddev_t *mddev)
 {
conf_t *conf;
-   int i, j, disk_idx;
+   int i, j, disk_idx, ram_count;
mirror_info_t *disk;
mdk_rdev_t *rdev;
struct list_head *tmp;
+   char b[BDEVNAME_SIZE];
 
if (mddev->level != 1) {
printk("raid1: %s: raid level not set to mirroring (%d)\n",
@@ -1417,6 +1429,30 @@
mddev->queue->unplug_fn = raid1_unplug;
mddev->queue->issue_flush_fn = raid1_issue_flush;
 
+   /* [SYN] if there is a ram disk, that will be the preferred disk.
+* .. unless there are multiple ram disks. */
+   conf->preferred_read_disk = -1;
+   for (i = 0,
+ram_count = 0; 
+i < mddev->raid_disks; 
+i++) {
+   
+   bdevname(conf->mirrors[i].rdev->bdev, b);
+   if (strncmp(b, "ram", 3) == 0) {
+   if (ram_count) {
+   conf->preferred_read_disk = -1;
+   break;
+   }
+   conf->preferred_read_disk = i;
+   ram_count++;
+   }
+   }
+   if (conf->preferred_read_disk >= 0) {
+   printk(KERN_INFO 
+   "raid1: One ram disk (%s) found, setting it preferred 
read disk.\n", b);
+   }
+
+   
return 0;
 
 out_no_mem:


Re: [DVB patch 51/54] ttpci: av7110: RC5+ remote control support

2005-09-04 Thread Nish Aravamudan
On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> > On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > > On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> > > > On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > > > >
> > > > > -#define UP_TIMEOUT (HZ/4)
> > > > > +#define UP_TIMEOUT (HZ*7/25)
> > > >
> > > > #define UP_TIMEOUT msecs_to_jiffies(280)
> > > > #define UP_TIMEOUT (7*msecs_to_jiffies(40)
> > >
> > > I agree it's nicer to read, but AFAIK not required for correctness?
> > > If so, then we'll fix those up in linuxtv.org CVS and submit
> > > cleanup patches later.
> >
> > Yeah, it's correct with the three current values of HZ (100, 250 and
> > 1000), but if you try a not-so-clean value (like Con did with 864, or
> > something), you might run into rounding issues. msecs_to_jiffies()
> > should take care of them (or will be a single point to do so
> > eventually).
> 
> Well, if msecs_to_jiffies() is the new way of specifying timeouts
> we'd have a lot more to fix up in our tree. But something like
> a remote control key-up timeout doesn't need much precision.
> Generally I see nothing wrong with HZ/4, but something like
> HZ*20/1000 could be problematic with small or odd HZ values.

This discussion comes up every time ;) HZ/4 rounds incorrectly
(depends on your perspective, I guess) with HZ=250.

> Agreed? Or is it desired that people generally use msecs_to_jiffies()?

I agree, generally it's ok, as timeouts aren't meant to be precise. I,
personally, am converting code over to msecs_to_jiffies() as I come to
it, just so that the conversions are consistent (a number in the tree
were not, not that yours are) and basically self-commented. And, like
I mentioned, they are automatically rounded correctly with "strange"
values of HZ.

The changes I mentioned in your patchset are generally not critical,
but just comments and my own preferences.

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [DVB patch 51/54] ttpci: av7110: RC5+ remote control support

2005-09-04 Thread Johannes Stezenbach
On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> > > On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > > >
> > > > -#define UP_TIMEOUT (HZ/4)
> > > > +#define UP_TIMEOUT (HZ*7/25)
> > >
> > > #define UP_TIMEOUT msecs_to_jiffies(280)
> > > #define UP_TIMEOUT (7*msecs_to_jiffies(40)
> > 
> > I agree it's nicer to read, but AFAIK not required for correctness?
> > If so, then we'll fix those up in linuxtv.org CVS and submit
> > cleanup patches later.
> 
> Yeah, it's correct with the three current values of HZ (100, 250 and
> 1000), but if you try a not-so-clean value (like Con did with 864, or
> something), you might run into rounding issues. msecs_to_jiffies()
> should take care of them (or will be a single point to do so
> eventually).

Well, if msecs_to_jiffies() is the new way of specifying timeouts
we'd have a lot more to fix up in our tree. But something like
a remote control key-up timeout doesn't need much precision.
Generally I see nothing wrong with HZ/4, but something like
HZ*20/1000 could be problematic with small or odd HZ values.

Agreed? Or is it desired that people generally use msecs_to_jiffies()?

Johannes
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


2.6.11.11 and rsync oops (SATA related?)

2005-09-04 Thread Kalin KOZHUHAROV
Hi, there.
Long time no posting - didn't have kernel problems for long time :-)

That is why I am still running 2.6.11.11 (2.6.12 elsewhere). Will move
to 2.6.13 soon.

Yesterday just bought a new SATAII drive (Seagate Barracuda 7200.8
ST3300831AS) and while trying to rsync some data from the old drives the
rsync process died with segfault. My SiI3112 controller is not SATAII,
but it should work in SATA mode, have another drive for year+. Looking
at the dmesg I saw 3 oopses (see the shortened .dmesg file). Run the
ksymoops and got some output (see .ksymoops.bz2).

Although it does not seem very related to the drive, that is the only
recent change in hardware, in software: udev . The machine (MB: A7V8X
Deluxe) was working stable for 6 months with a few restarts.

As far as reproducibility goes, apart from those 3 oopses everything is
OK, didn't even have to restart and am now continuing to rsync some
200GB more.

Any ideas as to what caused this?

Kalin.

P.S. Attaching the files :-|

-- 
|[ ~~ ]|
+-> http://ThinRope.net/ <-+
|[ __ ]|

Linux version 2.6.11.11-dorf ([EMAIL PROTECTED]) (gcc version 3.3.5 (Gentoo 
Linux 3.3.5-r1, ssp-3.3.2-3, pie-8.7.7.1)) #1 Sun May 29 01:39:53 JST 2005

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
NFORCE2: IDE controller at PCI slot :00:09.0
NFORCE2: chipset revision 162
NFORCE2: not 100% native mode: will probe irqs later
NFORCE2: BIOS didn't set cable bits correctly. Enabling workaround.
NFORCE2: BIOS didn't set cable bits correctly. Enabling workaround.
NFORCE2: :00:09.0 (rev a2) UDMA133 controller
ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA
ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:DMA, hdd:DMA
Probing IDE interface ide0...
hda: WDC WD1000BB-00CAA0, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
hdc: WDC WD2000JB-00DUA0, ATA DISK drive
ide1 at 0x170-0x177,0x376 on irq 15
SiI3112 Serial ATA: IDE controller at PCI slot :01:0b.0
SiI3112 Serial ATA: chipset revision 2
SiI3112 Serial ATA: 100% native mode on irq 18
ide2: MMIO-DMA , BIOS settings: hde:pio, hdf:pio
ide3: MMIO-DMA , BIOS settings: hdg:pio, hdh:pio
Probing IDE interface ide2...
hde: WDC WD360GD-00FLA0, ATA DISK drive
ide2 at 0xf8802080-0xf8802087,0xf880208a on irq 18
Probing IDE interface ide3...
hdg: ST3300831AS, ATA DISK drive
hdg: applying pessimistic Seagate errata fix
ide3 at 0xf88020c0-0xf88020c7,0xf88020ca on irq 18
Probing IDE interface ide4...
Probing IDE interface ide5...
hda: max request size: 128KiB
hda: 195371568 sectors (100030 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(100)
hda: cache flushes not supported
 hda: hda1 hda2 hda3 hda4 < hda5 hda6 >
hdc: max request size: 1024KiB
hdc: 390721968 sectors (200049 MB) w/8192KiB Cache, CHS=24321/255/63, UDMA(100)
hdc: cache flushes supported
 hdc: hdc1 hdc2 hdc3 < hdc5 hdc6 > hdc4
hde: max request size: 64KiB
hde: 72303840 sectors (37019 MB) w/8192KiB Cache, CHS=16383/255/63, UDMA(133)
hde: cache flushes supported
 hde: hde1 hde2
hdg: max request size: 7KiB
hdg: 586072368 sectors (300069 MB) w/8192KiB Cache, CHS=36481/255/63
hdg: cache flushes supported
 hdg: hdg1

RPC: error 5 connecting to server 127.0.0.1
RPC: error 5 connecting to server 127.0.0.1
Unable to handle kernel NULL pointer dereference at virtual address 0108
 printing eip:
c013249b
*pde = 
Oops:  [#1]
PREEMPT 
Modules linked in: ipt_TCPMSS ipt_REJECT ipt_state iptable_filter 
iptable_mangle ppp_synctty ppp_async ppp_generic slhc w83l785ts asb100 
i2c_sensor i2c_nforce2 i2c_core ext3 jbd mbcache ip_nat_ftp iptable_nat 
ip_tables ip_conntrack_ftp ip_conntrack forcedeth via_rhine mii ehci_hcd 
ohci_hcd usbcore ipv6
CPU:0
EIP:0060:[]Not tainted VLI
EFLAGS: 00010213   (2.6.11.11-dorf) 
EIP is at page_waitqueue+0x1b/0x30
eax: 580da100   ebx: c10da100   ecx: 0020   edx: 
esi: 0002   edi: 000e   ebp: c1b53f40   esp: c1b53d90
ds: 007b   es: 007b   ss: 0068
Process pdflush (pid: 193, threadinfo=c1b52000 task=c198a570)
Stack: c0132573 c10da100 c10da100 c01779bd c1106fa0 c1b53f40 c1b53dd4  
   000e f7c0e5b0  0001  c019ac60   
   f7c2068c 20a6    000e  c10d6120 
Call Trace:
 [] unlock_page+0x23/0x40
 [] mpage_writepages+0x21d/0x3e0
 [] reiserfs_writepage+0x0/0x40
 [] do_writepages+0x3d/0x50
 [] __sync_single_inode+0x71/0x220
 [] __writeback_single_inode+0x67/0x150
 [] handle_IRQ_event+0x30/0x70
 [] __do_IRQ+0xf4/0x160
 [] sync_sb_inodes+0x197/0x2a0
 [] writeback_inodes+0xd4/0xf0
 [] background_writeout+0x73/0xc0
 [] __pdflush+0xca/0x1c0
 [] pdflush+0x0/0x30
 [] pdflush+0x28/0x30
 [] background_writeout+0x0/0xc0
 [] pdflush+0x0/0x30
 [] kthread+0xa5/0xb0
 [] kthread+0x0/0xb0
 [] kernel_thread_helper+0x5/0x14
Code: c4 18 c3 89 f0 e8 d6 9c 00 00 eb e9 8d

Re: [DVB patch 54/54] ttusb-budget: use time_after_eq()

2005-09-04 Thread Johannes Stezenbach
On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> > > On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > > >
> > > > -static int numpkt = 0, lastj, numts, numstuff, numsec, numinvalid;
> > > > +static int numpkt = 0, numts, numstuff, numsec, numinvalid;
> > > > +static unsigned long lastj;
> > > >
> > >
> > > I think you actually want:
> > >
> > > static void ttusb_iso_irq()
> > > {
> > >  unsigned long lastj;
> > >
> > 
> > The code in question is used to print a one-per-second debug output,
> > and lastj is assigned after every print.
> 
> Ah yes, didn't see that in the current code, sorry for that noise.
> Still, lastj is local to ttusb_iso_irq(), right?

Yes, but it needs to be static.

Johannes
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [DVB patch 54/54] ttusb-budget: use time_after_eq()

2005-09-04 Thread Nish Aravamudan
On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> > On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > >
> > > -static int numpkt = 0, lastj, numts, numstuff, numsec, numinvalid;
> > > +static int numpkt = 0, numts, numstuff, numsec, numinvalid;
> > > +static unsigned long lastj;
> > >
> > >  static void ttusb_process_muxpack(struct ttusb *ttusb, const u8 * 
> > > muxpack,
> > >int len)
> > > @@ -779,7 +781,7 @@ static void ttusb_iso_irq(struct urb *ur
> > > u8 *data;
> > > int len;
> > > numpkt++;
> > > -   if ((jiffies - lastj) >= HZ) {
> > > +   if (time_after_eq(jiffies, lastj + HZ)) {
> >
> > I think you actually want:
> >
> > static void ttusb_iso_irq()
> > {
> >  unsigned long lastj;
> >
> >  ...
> >
> >  lastj = jiffies + HZ;
> >  if (time_after_eq(jiffies, lastj)) {
> >   ...
> >
> > }
> >
> > The current code doesn't assign jiffies to lastj at any point that I see.
> 
> The code in question is used to print a one-per-second debug output,
> and lastj is assigned after every print.

Ah yes, didn't see that in the current code, sorry for that noise.
Still, lastj is local to ttusb_iso_irq(), right?

> I agree that it's ugly, though.

Fair enough :)

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [DVB patch 51/54] ttpci: av7110: RC5+ remote control support

2005-09-04 Thread Nish Aravamudan
On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> > On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > > --- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110_ir.c  
> > > 2005-09-04 22:03:40.0 +0200
> > > +++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110_ir.c   
> > > 2005-09-04 22:31:00.0 +0200
> > > @@ -7,16 +7,16 @@
> > >  #include 
> > >
> > >  #include "av7110.h"
> > > +#include "av7110_hw.h"
> > >
> > > -#define UP_TIMEOUT (HZ/4)
> > > +#define UP_TIMEOUT (HZ*7/25)
> >
> > Should this be
> >
> > #define UP_TIMEOUT msecs_to_jiffies(280)
> >
> > or
> >
> > #define UP_TIMEOUT (7*msecs_to_jiffies(40)
> >
> > ?
> 
> I agree it's nicer to read, but AFAIK not required for correctness?
> If so, then we'll fix those up in linuxtv.org CVS and submit
> cleanup patches later.

Yeah, it's correct with the three current values of HZ (100, 250 and
1000), but if you try a not-so-clean value (like Con did with 864, or
something), you might run into rounding issues. msecs_to_jiffies()
should take care of them (or will be a single point to do so
eventually).

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


2.6.11.11 and rsync oops (SATA related?)

2005-09-04 Thread Kalin KOZHUHAROV
Hi, there.
Long time no posting - didn't have kernel problems for long time :-)

That is why I am still running 2.6.11.11 (2.6.12 elsewhere). Will move
to 2.6.13 soon.

Yesterday just bought a new SATAII drive (Seagate Barracuda 7200.8
ST3300831AS) and while trying to rsync some data from the old drives the
rsync process died with segfault. My SiI3112 controller is not SATAII,
but it should work in SATA mode, have another drive for year+. Looking
at the dmesg I saw 3 oopses (see the shortened .dmesg file). Run the
ksymoops and got some output (see .ksymoops.bz2).

Although it does not seem very related to the drive, that is the only
recent change in hardware, in software: udev . The machine (MB: A7V8X
Deluxe) was working stable for 6 months with a few restarts.

As far as reproducibility goes, apart from those 3 oopses everything is
OK, didn't even have to restart and am now continuing to rsync some
200GB more.

Any ideas as to what caused this?

Kalin.

-- 
|[ ~~ ]|
+-> http://ThinRope.net/ <-+
|[ __ ]|

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.11.11 and rsync oops (SATA related?)

2005-09-04 Thread Jesper Juhl
On 9/5/05, Kalin KOZHUHAROV <[EMAIL PROTECTED]> wrote:
> Hi, there.
> Long time no posting - didn't have kernel problems for long time :-)
> 
> That is why I am still running 2.6.11.11 (2.6.12 elsewhere). Will move
> to 2.6.13 soon.
> 
> Yesterday just bought a new SATAII drive (Seagate Barracuda 7200.8
> ST3300831AS) and while trying to rsync some data from the old drives the
> rsync process died with segfault. My SiI3112 controller is not SATAII,
> but it should work in SATA mode, have another drive for year+. Looking
> at the dmesg I saw 3 oopses (see the shortened .dmesg file). Run the
> ksymoops and got some output (see .ksymoops.bz2).
> 

It seems you forgot to include the data.  Nothing inline in the email,
nor any attachments.

-- 
Jesper Juhl <[EMAIL PROTECTED]>
Don't top-post  http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please  http://www.expita.com/nomime.html
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [DVB patch 51/54] ttpci: av7110: RC5+ remote control support

2005-09-04 Thread Johannes Stezenbach
On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > --- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110_ir.c  2005-09-04 
> > 22:03:40.0 +0200
> > +++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110_ir.c   2005-09-04 
> > 22:31:00.0 +0200
> > @@ -7,16 +7,16 @@
> >  #include 
> > 
> >  #include "av7110.h"
> > +#include "av7110_hw.h"
> > 
> > -#define UP_TIMEOUT (HZ/4)
> > +#define UP_TIMEOUT (HZ*7/25)
> 
> Should this be
> 
> #define UP_TIMEOUT msecs_to_jiffies(280)
> 
> or
> 
> #define UP_TIMEOUT (7*msecs_to_jiffies(40)
> 
> ?

I agree it's nicer to read, but AFAIK not required for correctness?
If so, then we'll fix those up in linuxtv.org CVS and submit
cleanup patches later.

Thanks for your comments.

Johannes
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.13 locks my machine within 1h, 2.6.12.5 works fine (PREEMPT?)

2005-09-04 Thread Jonathan Brown
I get the exact same thing. Here is my config:

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.13
# Mon Aug 29 20:06:23 2005
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
# CONFIG_CLEAN_COMPILE is not set
CONFIG_BROKEN=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_INIT_ENV_ARG_LIMIT=32

#
# General setup
#
CONFIG_LOCALVERSION=""
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
CONFIG_SYSCTL=y
# CONFIG_AUDIT is not set
CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
# CONFIG_EMBEDDED is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SHMEM=y
CONFIG_CC_ALIGN_FUNCTIONS=0
CONFIG_CC_ALIGN_LABELS=0
CONFIG_CC_ALIGN_LOOPS=0
CONFIG_CC_ALIGN_JUMPS=0
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y

#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
CONFIG_MPENTIUMIII=y
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=5
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
# CONFIG_HPET_TIMER is not set
# CONFIG_SMP is not set
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
CONFIG_X86_UP_APIC=y
CONFIG_X86_UP_IOAPIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_TSC=y
CONFIG_X86_MCE=y
# CONFIG_X86_MCE_NONFATAL is not set
# CONFIG_X86_MCE_P4THERMAL is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_X86_REBOOTFIXUPS is not set
CONFIG_MICROCODE=m
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m

#
# Firmware Drivers
#
CONFIG_EDD=m
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_EFI is not set
# CONFIG_REGPARM is not set
CONFIG_SECCOMP=y
CONFIG_HZ_100=y
# CONFIG_HZ_250 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=100
CONFIG_PHYSICAL_START=0x10
CONFIG_KEXEC=y

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
# CONFIG_PM_DEBUG is not set
# CONFIG_SOFTWARE_SUSPEND is not set

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
# CONFIG_ACPI_SLEEP_PROC_SLEEP is not set
CONFIG_ACPI_AC=m
CONFIG_ACPI_BATTERY=m
CONFIG_ACPI_BUTTON=m
CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_HOTKEY=m
CONFIG_ACPI_FAN=m
CONFIG_ACPI_PROCESSOR=m
CONFIG_ACPI_THERMAL=m
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_IBM is not set
# CONFIG_ACPI_TOSHIBA is not set
# CONFIG_ACPI_CUSTOM_DSDT is not set
CONFIG_ACPI_BLACKLIST_YEAR=95
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_BUS=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
# CONFIG_ACPI_CONTAINER is not set

#
# APM (Advanced Power Management) BIOS Support
#
# CONFIG_APM is not set

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
# CONFIG_PCIEPORTBUS is not set
# CONFIG_PCI_MSI is not set
# CONFIG_PCI_LEGACY_PROC is not set
CONFIG_PCI_NAMES=y
CONFIG_ISA_DMA_API=y
# CONFIG_ISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not set

#
# PCCARD (PCMCIA/CardBus) support
#
# CONFIG_PCCARD is not set

#
# PCI Hotplug Support
#
# CONFIG_HO

Re: [DVB patch 23/54] usb: add TwinhanDTV StarBox support

2005-09-04 Thread Nish Aravamudan
On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> From: Patrick Boettcher <[EMAIL PROTECTED]>
> 
> Add driver for the TwinhanDTV StarBox and clones.
> 
> Thanks to Ralph Metzler for his initial work on this box and thanks to Twinhan
> for their support.



> --- /dev/null   1970-01-01 00:00:00.0 +
> +++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/vp702x-fe.c 2005-09-04 
> 22:28:15.0 +0200



> +static int vp702x_fe_refresh_state(struct vp702x_fe_state *st)
> +{
> +   u8 buf[10];
> +   if (time_after(jiffies,st->next_status_check)) {
> +   vp702x_usb_in_op(st->d,READ_STATUS,0,0,buf,10);
> +
> +   st->lock = buf[4];
> +   vp702x_usb_in_op(st->d,READ_TUNER_REG_REQ,0x11,0,&st->snr,1);
> +   vp702x_usb_in_op(st->d,READ_TUNER_REG_REQ,0x15,0,&st->sig,1);
> +
> +   st->next_status_check = jiffies + 
> (st->status_check_interval*HZ)/1000;

Should this be

st->next_status_check = jiffies + msecs_to_jiffies(st->status_check_interval);

?

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [DVB patch 54/54] ttusb-budget: use time_after_eq()

2005-09-04 Thread Johannes Stezenbach
On Sun, Sep 04, 2005 Nish Aravamudan wrote:
> On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> > 
> > -static int numpkt = 0, lastj, numts, numstuff, numsec, numinvalid;
> > +static int numpkt = 0, numts, numstuff, numsec, numinvalid;
> > +static unsigned long lastj;
> > 
> >  static void ttusb_process_muxpack(struct ttusb *ttusb, const u8 * muxpack,
> >int len)
> > @@ -779,7 +781,7 @@ static void ttusb_iso_irq(struct urb *ur
> > u8 *data;
> > int len;
> > numpkt++;
> > -   if ((jiffies - lastj) >= HZ) {
> > +   if (time_after_eq(jiffies, lastj + HZ)) {
> 
> I think you actually want:
> 
> static void ttusb_iso_irq()
> {
>  unsigned long lastj;
> 
>  ...
> 
>  lastj = jiffies + HZ;
>  if (time_after_eq(jiffies, lastj)) {
>   ...
> 
> }
> 
> The current code doesn't assign jiffies to lastj at any point that I see.

The code in question is used to print a one-per-second debug output,
and lastj is assigned after every print.

I agree that it's ugly, though.

Johannes
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] disable_local_APIC() is only available when CONFIG_X86_LOCAL_APIC is defined

2005-09-04 Thread Jesper Juhl

`disable_local_APIC' is only available when CONFIG_X86_LOCAL_APIC is defined :

arch/i386/kernel/crash.c: In function `crash_nmi_callback':
arch/i386/kernel/crash.c:153: warning: implicit declaration of function 
`disable_local_APIC'
arch/i386/kernel/crash.c: In function `nmi_shootdown_cpus':
arch/i386/kernel/crash.c:195: warning: implicit declaration of function 
`disable_local_APIC'

There may be a better fix, but the below seems to do the trick.


Signed-off-by: Jesper Juhl <[EMAIL PROTECTED]>

--- linux-2.6.13-mm1-orig/arch/i386/kernel/crash.c  2005-09-02 
23:59:27.0 +0200
+++ linux-2.6.13-mm1/arch/i386/kernel/crash.c   2005-09-05 01:54:21.0 
+0200
@@ -150,7 +150,9 @@ static int crash_nmi_callback(struct pt_
regs = &fixed_regs;
}
crash_save_this_cpu(regs, cpu);
+#ifdef CONFIG_X86_LOCAL_APIC
disable_local_APIC();
+#endif
atomic_dec(&waiting_for_crash_ipi);
/* Assume hlt works */
halt();
@@ -190,7 +192,9 @@ static void nmi_shootdown_cpus(void)
}
 
/* Leave the nmi callback set */
+#ifdef CONFIG_X86_LOCAL_APIC
disable_local_APIC();
+#endif
 }
 #else
 static void nmi_shootdown_cpus(void)


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [DVB patch 14/54] frontend: s5h1420: fixes

2005-09-04 Thread Nish Aravamudan
On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> From: Andrew de Quincey <[EMAIL PROTECTED]>
> 
> Misc. fixes.



> --- linux-2.6.13-git4.orig/drivers/media/dvb/frontends/s5h1420.c
> 2005-09-04 22:24:24.0 +0200
> +++ linux-2.6.13-git4/drivers/media/dvb/frontends/s5h1420.c 2005-09-04 
> 22:28:04.0 +0200

@@ -138,16 +146,17 @@ static int s5h1420_send_master_cmd (stru



> /* wait for transmission to complete */
> timeout = jiffies + ((100*HZ) / 1000);



> @@ -236,7 +246,7 @@ static int s5h1420_send_burst (struct dv
> s5h1420_writereg(state, 0x3b, s5h1420_readreg(state, 0x3b) | 0x08);
> 
> /* wait for transmission to complete */
> -   timeout = jiffies + ((20*HZ) / 1000);
> +   timeout = jiffies + ((100*HZ) / 1000);

Should these be

timeout = jiffies + msecs_to_jiffies(100);

?

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


RE: Potential IPSec DoS/Kernel Panic with 2.6.13

2005-09-04 Thread Matt LaPlante
I did a direct serial connection and boy was that a lot easier.  Anyway,
without further adeu, the crash:

#
Unable to handle kernel paging request at virtual address 50c86502
 printing eip:
c01bd216
*pde = 
Oops:  [#1]
PREEMPT 
Modules linked in: aes_i586 esp6 ah6 ipcomp esp4 ah4 af_key xfrm_user
michael_mic deflate twofish khazad wp512 arc4 serpent tea sha512 blowfish
sha256 md5 md4 cast6 cast5 des crypto_null zlib_deflate ipv6 ipt_ULOG
ipt_REJECT ipt_LOG ipt_state ipt_pkttype ipt_CONNMARK ipt_connmark ipt_owner
ipt_recent ipt_iprange ipt_multiport ip_nat_irc ip_nat_tftp ip_conntrack_irc
ip_conntrack_tftp evdev floppy pcspkr intel_agp via_rhine mii tulip agpgart
psmouse ide_cd cdrom
CPU:0
EIP:0060:[]Not tainted VLI
EFLAGS: 00010216   (2.6.13-Firewall.CyberDog.v12) 
EIP is at sha1_update+0x96/0xe0
eax: cd485f0c   ebx: 000c   ecx: 0003   edx: 0244
esi: 50c86502   edi: cd485f5c   ebp: 50c86502   esp: c0333c40
ds: 007b   es: 007b   ss: 0068
Process swapper (pid: 0, threadinfo=c0332000 task=c02edb80)
Stack: 0244 cd485f0c     
 
         
 
         
 
Call Trace:
 [] update+0x91/0xd0
 [] crypto_hmac_update+0x11/0x20
 [] skb_icv_walk+0xe3/0x200
 [] esp_hmac_digest+0x63/0xa0 [esp4]
 [] crypto_hmac_update+0x0/0x20
 [] cbc_encrypt+0x44/0x50
 [] esp_output+0x350/0x420 [esp4]
 [] xfrm4_output+0x70/0x170
 [] ip_forward_finish+0x0/0x40
 [] ip_forward+0x16f/0x2c0
 [] ip_forward_finish+0x0/0x40
 [] ip_rcv+0x365/0x4d0
 [] ip_rcv_finish+0x0/0x280
 [] packet_rcv_spkt+0x186/0x260
 [] tulip_poll+0x0/0x680 [tulip]
 [] netif_receive_skb+0x1a9/0x260
 [] tulip_poll+0x465/0x680 [tulip]
 [] rhine_interrupt+0x42/0x240 [via_rhine]
 [] net_rx_action+0xac/0x1b0
 [] __do_softirq+0x79/0x90
 [] do_softirq+0x27/0x30
 [] irq_exit+0x35/0x40
 [] do_IRQ+0x1e/0x30
 [] common_interrupt+0x1a/0x20
 [] default_idle+0x0/0x30
 [] default_idle+0x23/0x30
 [] cpu_idle+0x50/0x60
 [] start_kernel+0x177/0x1c0
 [] unknown_bootoption+0x0/0x1c0
Code: 83 e1 03 74 02 f3 a4 81 c4 48 01 00 00 5b 5e 5f 5d c3 8d 76 00 8b 44
24 04 bb 40 00 00 00 29 f3 89 d9 8d 7c 06 1c 89 ee c1 e9 02  a5 89 d9 83
e1 03 74 02 f3 a4 89 c6 8d 7c 24 08 89 c2 83 c6 
 <0>Kernel panic - not syncing: Fatal exception in interrupt
#

Hope that helps!  If you need more info just ask!

-
Matt


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] disable_local_APIC() is only available when CONFIG_X86_LOCAL_APIC is defined

2005-09-04 Thread Jesper Juhl
On 9/5/05, Jesper Juhl <[EMAIL PROTECTED]> wrote:
> 
> `disable_local_APIC' is only available when CONFIG_X86_LOCAL_APIC is defined :
> 
> arch/i386/kernel/crash.c: In function `crash_nmi_callback':
> arch/i386/kernel/crash.c:153: warning: implicit declaration of function 
> `disable_local_APIC'
> arch/i386/kernel/crash.c: In function `nmi_shootdown_cpus':
> arch/i386/kernel/crash.c:195: warning: implicit declaration of function 
> `disable_local_APIC'
> 
> There may be a better fix, but the below seems to do the trick.
> 
[snip]

I guess the better fix is to just provide a dummy function in the case
of CONFIG_X86_LOCAL_APIC not being defined.
If so, just let me know and I'll cook up a patch to do that, instead
of the ugly ifdef's.

-- 
Jesper Juhl <[EMAIL PROTECTED]>
Don't top-post  http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please  http://www.expita.com/nomime.html
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 30/54] usb: white space cleanup

2005-09-04 Thread Johannes Stezenbach
From: Patrick Boettcher <[EMAIL PROTECTED]>

white space cleanup

Signed-off-by: Patrick Boettcher <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-usb/vp7045.c |5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/vp7045.c   2005-09-04 
22:28:21.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/vp7045.c2005-09-04 
22:28:23.0 +0200
@@ -164,7 +164,6 @@ static int vp7045_read_eeprom(struct dvb
return 0;
 }
 
-
 static int vp7045_read_mac_addr(struct dvb_usb_device *d,u8 mac[6])
 {
return vp7045_read_eeprom(d,mac, 6, MAC_0_ADDR);
@@ -256,9 +255,9 @@ static struct dvb_usb_properties vp7045_
 static struct usb_driver vp7045_usb_driver = {
.owner  = THIS_MODULE,
.name   = "dvb_usb_vp7045",
-   .probe  = vp7045_usb_probe,
+   .probe  = vp7045_usb_probe,
.disconnect = dvb_usb_device_exit,
-   .id_table   = vp7045_usb_table,
+   .id_table   = vp7045_usb_table,
 };
 
 /* module stuff */

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 37/54] dst: fix symbol rate setting

2005-09-04 Thread Johannes Stezenbach
From: Manu Abraham <[EMAIL PROTECTED]>

Make the Symbolrate setting card specific.

Signed-off-by: Manu Abraham <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/bt8xx/dst.c |   30 +++---
 1 file changed, 15 insertions(+), 15 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/bt8xx/dst.c2005-09-04 
22:28:26.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/bt8xx/dst.c 2005-09-04 
22:28:32.0 +0200
@@ -324,12 +324,12 @@ static int dst_set_polarization(struct d
 {
switch (state->voltage) {
case SEC_VOLTAGE_13:// vertical
-   printk("%s: Polarization=[Vertical]\n", __FUNCTION__);
+   dprintk("%s: Polarization=[Vertical]\n", __FUNCTION__);
state->tx_tuna[8] &= ~0x40;  //1
break;
 
case SEC_VOLTAGE_18:// horizontal
-   printk("%s: Polarization=[Horizontal]\n", __FUNCTION__);
+   dprintk("%s: Polarization=[Horizontal]\n", 
__FUNCTION__);
state->tx_tuna[8] |= 0x40;  // 0
break;
 
@@ -344,7 +344,7 @@ static int dst_set_polarization(struct d
 static int dst_set_freq(struct dst_state *state, u32 freq)
 {
state->frequency = freq;
-   if (debug > 4)
+   if (verbose > 4)
dprintk("%s: set Frequency %u\n", __FUNCTION__, freq);
 
if (state->dst_type == DST_TYPE_IS_SAT) {
@@ -451,7 +451,6 @@ static fe_code_rate_t dst_get_fec(struct
 
 static int dst_set_symbolrate(struct dst_state* state, u32 srate)
 {
-   u8 *val;
u32 symcalc;
u64 sval;
 
@@ -463,7 +462,6 @@ static int dst_set_symbolrate(struct dst
if (debug > 4)
dprintk("%s: set symrate %u\n", __FUNCTION__, srate);
srate /= 1000;
-   val = &state->tx_tuna[0];
 
if (state->type_flags & DST_TYPE_HAS_SYMDIV) {
sval = srate;
@@ -474,17 +472,19 @@ static int dst_set_symbolrate(struct dst
if (debug > 4)
dprintk("%s: set symcalc %u\n", __FUNCTION__, symcalc);
 
-   val[5] = (u8) (symcalc >> 12);
-   val[6] = (u8) (symcalc >> 4);
-   val[7] = (u8) (symcalc << 4);
+   state->tx_tuna[5] = (u8) (symcalc >> 12);
+   state->tx_tuna[6] = (u8) (symcalc >> 4);
+   state->tx_tuna[7] = (u8) (symcalc << 4);
} else {
-   val[5] = (u8) (srate >> 16) & 0x7f;
-   val[6] = (u8) (srate >> 8);
-   val[7] = (u8) srate;
-   }
-   val[8] &= ~0x20;
-   if (srate > 8000)
-   val[8] |= 0x20;
+   state->tx_tuna[5] = (u8) (srate >> 16) & 0x7f;
+   state->tx_tuna[6] = (u8) (srate >> 8);
+   state->tx_tuna[7] = (u8) srate;
+   }
+   state->tx_tuna[8] &= ~0x20;
+   if (state->type_flags & DST_TYPE_HAS_OBS_REGS) {
+   if (srate > 8000)
+   state->tx_tuna[8] |= 0x20;
+   }
return 0;
 }
 

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 16/54] frontend: tda1004x: fix SNR reading

2005-09-04 Thread Johannes Stezenbach
From: Andrew de Quincey <[EMAIL PROTECTED]>

Fix SNR reading

Signed-off-by: Andrew de Quincey <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/frontends/tda1004x.c |3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/frontends/tda1004x.c   
2005-09-04 22:24:24.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/frontends/tda1004x.c2005-09-04 
22:28:07.0 +0200
@@ -1046,8 +1046,7 @@ static int tda1004x_read_snr(struct dvb_
tmp = tda1004x_read_byte(state, TDA1004X_SNR);
if (tmp < 0)
return -EIO;
-   if (tmp)
-   tmp = 255 - tmp;
+   tmp = 255 - tmp;
 
*snr = ((tmp << 8) | tmp);
dprintk("%s: snr=0x%x\n", __FUNCTION__, *snr);

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 36/54] Nebula DigiTV nxt6000 fix

2005-09-04 Thread Johannes Stezenbach
From: Stuart Auchterlonie <[EMAIL PROTECTED]>

Fix bug in Nebula DigiTV frontend detection for nxt6000.

Signed-off-by: Stuart Auchterlonie <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/bt8xx/dvb-bt8xx.c |4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/bt8xx/dvb-bt8xx.c  2005-09-04 
22:28:29.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/bt8xx/dvb-bt8xx.c   2005-09-04 
22:28:30.0 +0200
@@ -574,8 +574,10 @@ static void frontend_init(struct dvb_bt8
 
/* Old Nebula (marked (c)2003 on high profile pci card) has 
nxt6000 demod */
card->fe = nxt6000_attach(&vp3021_alps_tded4_config, 
card->i2c_adapter);
-   if (card->fe != NULL)
+   if (card->fe != NULL) {
dprintk ("dvb_bt8xx: an nxt6000 was detected on your 
digitv card\n");
+   break;
+   }
 
/* New Nebula (marked (c)2005 on low profile pci card) has 
mt352 demod */
digitv_alps_tded4_reset(card);

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 21/54] frontend: stv0297: QAM128 tuning improvement

2005-09-04 Thread Johannes Stezenbach
From: Patrick Boettcher <[EMAIL PROTECTED]>

while investigating the QAM_128-issue with the stv0297-driver for the
Cablestar (which is not the same as the one in dvb-kernel CVS, yet), I
fixed it, not by increasing the timeout, but by disabling the
corner-detection for QAM_128 and higher.

This patch has been tested on dvb-kernel cvs, and has been reported to
work by multiple users. Some cards still need timeout increase on top of
this patch. This will be addressed later.

Signed-off-by: Patrick Boettcher <[EMAIL PROTECTED]>
Signed-off-by: Michael Krufky <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/frontends/stv0297.c |8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/frontends/stv0297.c
2005-09-04 22:24:24.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/frontends/stv0297.c 2005-09-04 
22:28:12.0 +0200
@@ -606,7 +606,13 @@ static int stv0297_set_frontend(struct d
stv0297_set_inversion(state, inversion);
 
/* kick off lock */
-   stv0297_writereg_mask(state, 0x88, 0x08, 0x08);
+   /* Disable corner detection for higher QAMs */
+   if (p->u.qam.modulation == QAM_128 ||
+   p->u.qam.modulation == QAM_256)
+   stv0297_writereg_mask(state, 0x88, 0x08, 0x00);
+   else
+   stv0297_writereg_mask(state, 0x88, 0x08, 0x08);
+
stv0297_writereg_mask(state, 0x5a, 0x20, 0x00);
stv0297_writereg_mask(state, 0x6a, 0x01, 0x01);
stv0297_writereg_mask(state, 0x43, 0x40, 0x40);

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 50/54] av7110: conditionally disable workaround for broken firmware

2005-09-04 Thread Johannes Stezenbach
From: Oliver Endriss <[EMAIL PROTECTED]>

Disable COM_IF_LOCK workaround for firmware > 0x261f.

Signed-off-by: Oliver Endriss <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/ttpci/av7110_hw.c |6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110_hw.c  2005-09-04 
22:30:58.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110_hw.c   2005-09-04 
22:30:59.0 +0200
@@ -366,7 +366,8 @@ static int __av7110_send_fw_cmd(struct a
msleep(1);
}
 
-   wdebi(av7110, DEBINOSWAP, COM_IF_LOCK, 0x, 2);
+   if (FW_VERSION(av7110->arm_app) <= 0x261f)
+   wdebi(av7110, DEBINOSWAP, COM_IF_LOCK, 0x, 2);
 
 #ifndef _NOHANDSHAKE
start = jiffies;
@@ -439,7 +440,8 @@ static int __av7110_send_fw_cmd(struct a
 
wdebi(av7110, DEBINOSWAP, COMMAND, (u32) buf[0], 2);
 
-   wdebi(av7110, DEBINOSWAP, COM_IF_LOCK, 0x, 2);
+   if (FW_VERSION(av7110->arm_app) <= 0x261f)
+   wdebi(av7110, DEBINOSWAP, COM_IF_LOCK, 0x, 2);
 
 #ifdef COM_DEBUG
start = jiffies;

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 07/54] core: dvb_demux: remove unsused descramble callbacks

2005-09-04 Thread Johannes Stezenbach
From: Andreas Oberritter <[EMAIL PROTECTED]>

Removed unused descramble_mac_address and descramble_section_payload callbacks.

Signed-off-by: Andreas Oberritter <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-core/demux.h |   11 ---
 drivers/media/dvb/dvb-core/dvb_demux.c |3 ---
 2 files changed, 14 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/demux.h   2005-09-04 
22:27:55.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/demux.h2005-09-04 
22:27:56.0 +0200
@@ -260,17 +260,6 @@ struct dmx_demux {
  dmx_section_cb callback);
 int (*release_section_feed) (struct dmx_demux* demux,
 struct dmx_section_feed* feed);
-int (*descramble_mac_address) (struct dmx_demux* demux,
-  u8* buffer1,
-  size_t buffer1_length,
-  u8* buffer2,
-  size_t buffer2_length,
-  u16 pid);
-int (*descramble_section_payload) (struct dmx_demux* demux,
-  u8* buffer1,
-  size_t buffer1_length,
-  u8* buffer2, size_t buffer2_length,
-  u16 pid);
 int (*add_frontend) (struct dmx_demux* demux,
 struct dmx_frontend* frontend);
 int (*remove_frontend) (struct dmx_demux* demux,
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/dvb_demux.c   
2005-09-04 22:27:55.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/dvb_demux.c2005-09-04 
22:27:56.0 +0200
@@ -1232,9 +1232,6 @@ int dvb_dmx_init(struct dvb_demux *dvbde
dmx->allocate_section_feed = dvbdmx_allocate_section_feed;
dmx->release_section_feed = dvbdmx_release_section_feed;
 
-   dmx->descramble_mac_address = NULL;
-   dmx->descramble_section_payload = NULL;
-
dmx->add_frontend = dvbdmx_add_frontend;
dmx->remove_frontend = dvbdmx_remove_frontend;
dmx->get_frontends = dvbdmx_get_frontends;

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 44/54] cinergyT2: remote control fixes

2005-09-04 Thread Johannes Stezenbach
IR RC fixes:
- EVIOCSKEYCODE is not supported by this driver, fix potential crash
  when it is used by not setting rc_input_dev->keycodesize
- fix key repeat handling (hopefully)
- reduce default poll internal to 50msec (necessary for key repeat handling)

Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/cinergyT2/Kconfig |2 
 drivers/media/dvb/cinergyT2/cinergyT2.c |   93 +++-
 2 files changed, 57 insertions(+), 38 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/cinergyT2/Kconfig  2005-09-04 
22:03:40.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/cinergyT2/Kconfig   2005-09-04 
22:30:53.0 +0200
@@ -77,7 +77,7 @@ config DVB_CINERGYT2_ENABLE_RC_INPUT_DEV
 config DVB_CINERGYT2_RC_QUERY_INTERVAL
int "Infrared Remote Controller update interval [milliseconds]"
depends on DVB_CINERGYT2_TUNING && DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE
-default "100"
+default "50"
help
  If you have a very fast-repeating remote control you can try lower
  values, for normal consumer receivers the default value should be
--- linux-2.6.13-git4.orig/drivers/media/dvb/cinergyT2/cinergyT2.c  
2005-09-04 22:27:49.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/cinergyT2/cinergyT2.c   2005-09-04 
22:30:53.0 +0200
@@ -35,7 +35,6 @@
 #include "dvb_demux.h"
 #include "dvb_net.h"
 
-
 #ifdef CONFIG_DVB_CINERGYT2_TUNING
#define STREAM_URB_COUNT (CONFIG_DVB_CINERGYT2_STREAM_URB_COUNT)
#define STREAM_BUF_SIZE (CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE)
@@ -48,7 +47,7 @@
#define STREAM_URB_COUNT (32)
#define STREAM_BUF_SIZE (512)   /* bytes */
#define ENABLE_RC (1)
-   #define RC_QUERY_INTERVAL (100) /* milliseconds */
+   #define RC_QUERY_INTERVAL (50)  /* milliseconds */
#define QUERY_INTERVAL (333)/* milliseconds */
 #endif
 
@@ -141,6 +140,8 @@ struct cinergyt2 {
struct input_dev rc_input_dev;
struct work_struct rc_query_work;
int rc_input_event;
+   u32 rc_last_code;
+   unsigned long last_event_jiffies;
 #endif
 };
 
@@ -155,7 +156,7 @@ struct cinergyt2_rc_event {
uint32_t value;
 } __attribute__((packed));
 
-static const uint32_t rc_keys [] = {
+static const uint32_t rc_keys[] = {
CINERGYT2_RC_EVENT_TYPE_NEC,0xfe01eb04, KEY_POWER,
CINERGYT2_RC_EVENT_TYPE_NEC,0xfd02eb04, KEY_1,
CINERGYT2_RC_EVENT_TYPE_NEC,0xfc03eb04, KEY_2,
@@ -684,52 +685,68 @@ static struct dvb_device cinergyt2_fe_te
 #ifdef ENABLE_RC
 static void cinergyt2_query_rc (void *data)
 {
-   struct cinergyt2 *cinergyt2 = (struct cinergyt2 *) data;
-   char buf [1] = { CINERGYT2_EP1_GET_RC_EVENTS };
+   struct cinergyt2 *cinergyt2 = data;
+   char buf[1] = { CINERGYT2_EP1_GET_RC_EVENTS };
struct cinergyt2_rc_event rc_events[12];
-   int n, len;
+   int n, len, i;
 
if (down_interruptible(&cinergyt2->sem))
return;
 
len = cinergyt2_command(cinergyt2, buf, sizeof(buf),
-(char *) rc_events, sizeof(rc_events));
-
-   for (n=0; len>0 && n<(len/sizeof(rc_events[0])); n++) {
-   int i;
+   (char *) rc_events, sizeof(rc_events));
+   if (len < 0)
+   goto out;
+   if (len == 0) {
+   if (time_after(jiffies, cinergyt2->last_event_jiffies +
+  msecs_to_jiffies(150))) {
+   /* stop key repeat */
+   if (cinergyt2->rc_input_event != KEY_MAX) {
+   dprintk(1, "rc_input_event=%d Up\n", 
cinergyt2->rc_input_event);
+   input_report_key(&cinergyt2->rc_input_dev,
+cinergyt2->rc_input_event, 0);
+   cinergyt2->rc_input_event = KEY_MAX;
+   }
+   cinergyt2->rc_last_code = ~0;
+   }
+   goto out;
+   }
+   cinergyt2->last_event_jiffies = jiffies;
 
-/* dprintk(1,"rc_events[%d].value = %x, 
type=%x\n",n,le32_to_cpu(rc_events[n].value),rc_events[n].type);*/
+   for (n = 0; n < (len / sizeof(rc_events[0])); n++) {
+   dprintk(1, "rc_events[%d].value = %x, type=%x\n",
+   n, le32_to_cpu(rc_events[n].value), rc_events[n].type);
 
if (rc_events[n].type == CINERGYT2_RC_EVENT_TYPE_NEC &&
-   rc_events[n].value == ~0)
-   {
-   /**
-* keyrepeat bit. If we would handle this properly
-* we would need to emit down events as long the
-* keyrepeat goes, a up event if no further
-* repeat bits occur. Would need a timer to implement
-* and no othe

[DVB patch 18/54] frontend: cx24110: DiSEqC fix

2005-09-04 Thread Johannes Stezenbach
Fix DiSEqC switching (one bug fix suggested by Peter Hettkamp, and one
experimentally determined msleep(30) suggested by Adam Szalkowski).

Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/frontends/cx24110.c |5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/frontends/cx24110.c
2005-09-04 22:27:47.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/frontends/cx24110.c 2005-09-04 
22:28:09.0 +0200
@@ -398,7 +398,7 @@ static int cx24110_diseqc_send_burst(str
return -EINVAL;
 
rv = cx24110_readreg(state, 0x77);
-   cx24110_writereg(state, 0x77, rv|0x04);
+   cx24110_writereg(state, 0x77, rv | 0x04);
 
rv = cx24110_readreg(state, 0x76);
cx24110_writereg(state, 0x76, ((rv & 0x90) | 0x40 | bit));
@@ -418,7 +418,8 @@ static int cx24110_send_diseqc_msg(struc
cx24110_writereg(state, 0x79 + i, cmd->msg[i]);
 
rv = cx24110_readreg(state, 0x77);
-   cx24110_writereg(state, 0x77, rv|0x04);
+   cx24110_writereg(state, 0x77, rv & ~0x04);
+   msleep(30); /* reportedly fixes switching problems */
 
rv = cx24110_readreg(state, 0x76);
 

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 54/54] ttusb-budget: use time_after_eq()

2005-09-04 Thread Johannes Stezenbach
From: Marcelo Feitoza Parisi <[EMAIL PROTECTED]>

Use of the time_after_eq() macro, defined at linux/jiffies.h, which deal
with wrapping correctly and are nicer to read.

Signed-off-by: Marcelo Feitoza Parisi <[EMAIL PROTECTED]>
Signed-off-by: Domen Puncer <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c |6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c
2005-09-04 22:28:03.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c 
2005-09-04 22:31:06.0 +0200
@@ -18,6 +18,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 
 #include "dvb_frontend.h"
@@ -570,7 +571,8 @@ static void ttusb_handle_sec_data(struct
  const u8 * data, int len);
 #endif
 
-static int numpkt = 0, lastj, numts, numstuff, numsec, numinvalid;
+static int numpkt = 0, numts, numstuff, numsec, numinvalid;
+static unsigned long lastj;
 
 static void ttusb_process_muxpack(struct ttusb *ttusb, const u8 * muxpack,
   int len)
@@ -779,7 +781,7 @@ static void ttusb_iso_irq(struct urb *ur
u8 *data;
int len;
numpkt++;
-   if ((jiffies - lastj) >= HZ) {
+   if (time_after_eq(jiffies, lastj + HZ)) {
 #if DEBUG > 2
printk
("frames/s: %d (ts: %d, stuff %d, sec: %d, 
invalid: %d, all: %d)\n",

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 09/54] core: dvb_demux: use INIT_LIST_HEAD

2005-09-04 Thread Johannes Stezenbach
From: Andreas Oberritter <[EMAIL PROTECTED]>

Use INIT_LIST_HEAD for frontend_list.

Signed-off-by: Andreas Oberritter <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-core/dvb_demux.c |6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/dvb_demux.c   
2005-09-04 22:27:57.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/dvb_demux.c2005-09-04 
22:27:58.0 +0200
@@ -1188,9 +1188,9 @@ int dvb_dmx_init(struct dvb_demux *dvbde
dvbdemux->feed[i].state = DMX_STATE_FREE;
dvbdemux->feed[i].index = i;
}
-   dvbdemux->frontend_list.next=
- dvbdemux->frontend_list.prev=
-   &dvbdemux->frontend_list;
+
+   INIT_LIST_HEAD(&dvbdemux->frontend_list);
+
for (i=0; ipesfilter[i] = NULL;
dvbdemux->pids[i] = 0x;

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 33/54] bt8xx: endianness fix

2005-09-04 Thread Johannes Stezenbach
Endianness fix for risc DMA start address setting.
(reported by Stefan Haubenthal/Peter Hettkamp)

Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/bt8xx/bt878.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/bt8xx/bt878.c  2005-09-04 
22:27:47.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/bt8xx/bt878.c   2005-09-04 
22:28:27.0 +0200
@@ -219,7 +219,7 @@ void bt878_start(struct bt878 *bt, u32 c
controlreg &= ~0x1f;
controlreg |= 0x1b;
 
-   btwrite(cpu_to_le32(bt->risc_dma), BT878_ARISC_START);
+   btwrite(bt->risc_dma, BT878_ARISC_START);
 
/* original int mask had :
 *62840

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 43/54] dst: Updated Documentation

2005-09-04 Thread Johannes Stezenbach
From: Manu Abraham <[EMAIL PROTECTED]>

Updated Documentation

Signed-off-by: Manu Abraham <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 Documentation/dvb/bt8xx.txt |   95 ++--
 1 file changed, 57 insertions(+), 38 deletions(-)

--- linux-2.6.13-git4.orig/Documentation/dvb/bt8xx.txt  2005-09-04 
22:30:50.0 +0200
+++ linux-2.6.13-git4/Documentation/dvb/bt8xx.txt   2005-09-04 
22:30:51.0 +0200
@@ -1,55 +1,74 @@
-How to get the Nebula Electronics DigiTV, Pinnacle PCTV Sat, Twinhan DST + 
clones working
-=
+How to get the Nebula, PCTV and Twinhan DST cards working
+=
 
-1) General information
-==
+This class of cards has a bt878a as the PCI interface, and
+require the bttv driver.
 
-This class of cards has a bt878a chip as the PCI interface.
-The different card drivers require the bttv driver to provide the means
-to access the i2c bus and the gpio pins of the bt8xx chipset.
+Please pay close attention to the warning about the bttv module
+options below for the DST card.
 
-2) Compilation rules for Kernel >= 2.6.12
-=
+1) General informations
+===
 
-Enable the following options:
+These drivers require the bttv driver to provide the means to access
+the i2c bus and the gpio pins of the bt8xx chipset.
 
+Because of this, you need to enable
 "Device drivers" => "Multimedia devices"
- => "Video For Linux" => "BT848 Video For Linux"
+  => "Video For Linux" => "BT848 Video For Linux"
+
+Furthermore you need to enable
 "Device drivers" => "Multimedia devices" => "Digital Video Broadcasting 
Devices"
- => "DVB for Linux" "DVB Core Support" "BT8xx based PCI cards"
+  => "DVB for Linux" "DVB Core Support" "BT8xx based PCI cards"
 
-3) Loading Modules, described by two approaches
-===
+2) Loading Modules
+==
 
 In general you need to load the bttv driver, which will handle the gpio and
-i2c communication for us, plus the common dvb-bt8xx device driver,
-which is called the backend.
-The frontends for Nebula DigiTV (nxt6000), Pinnacle PCTV Sat (cx24110),
-TwinHan DST + clones (dst and dst-ca) are loaded automatically by the backend.
-For further details about TwinHan DST + clones see /Documentation/dvb/ci.txt.
-
-3a) The manual approach

-
-Loading modules:
-modprobe bttv
-modprobe dvb-bt8xx
-
-Unloading modules:
-modprobe -r dvb-bt8xx
-modprobe -r bttv
+i2c communication for us, plus the common dvb-bt8xx device driver.
+The frontends for Nebula (nxt6000), Pinnacle PCTV (cx24110) and
+TwinHan (dst) are loaded automatically by the dvb-bt8xx device driver.
+
+3a) Nebula / Pinnacle PCTV
+--
 
-3b) The automatic approach
+   $ modprobe bttv (normally bttv is being loaded automatically by kmod)
+   $ modprobe dvb-bt8xx (or just place dvb-bt8xx in /etc/modules for automatic 
loading)
+
+
+3b) TwinHan and Clones
 --
 
-If not already done by installation, place a line either in
-/etc/modules.conf or in /etc/modprobe.conf containing this text:
-alias char-major-81bttv
+   $ modprobe bttv i2c_hw=1 card=0x71
+   $ modprobe dvb-bt8xx
+   $ modprobe dst
+
+The value 0x71 will override the PCI type detection for dvb-bt8xx,
+which  is necessary for TwinHan cards.
+
+If you're having an older card (blue color circuit) and card=0x71 locks
+your machine, try using 0x68, too. If that does not work, ask on the
+mailing list.
+
+The DST module takes a couple of useful parameters.
+
+verbose takes values 0 to 4. These values control the verbosity level,
+and can be used to debug also.
+
+verbose=0 means complete disabling of messages
+   1 only error messages are displayed
+   2 notifications are also displayed
+   3 informational messages are also displayed
+   4 debug setting
+
+dst_addons takes values 0 and 0x20. A value of 0 means it is a FTA card.
+0x20 means it has a Conditional Access slot.
+
+The autodected values are determined bythe cards 'response
+string' which you can see in your logs e.g.
 
-Then place a line in /etc/modules containing this text:
-dvb-bt8xx
+dst_get_device_id: Recognise [DSTMCI]
 
-Reboot your system and have fun!
 
 --
-Authors: Richard Walker, Jamie Honan, Michael Hunold, Manu Abraham, Uwe Bugla
+Authors: Richard Walker, Jamie Honan, Michael Hunold, Manu Abraham

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 13/54] frontend: stv0299: pass i2c bus to pll callback

2005-09-04 Thread Johannes Stezenbach
From: Andreas Oberritter <[EMAIL PROTECTED]>

Pass a pointer to the i2c bus to the pll callbacks (stv0299 only).

It was not possible to tell which i2c bus should be used if an adapter has
multiple frontends on multiple i2c buses.

Signed-off-by: Andreas Oberritter <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/b2c2/flexcop-fe-tuner.c |5 ++---
 drivers/media/dvb/frontends/stv0299.c |6 +++---
 drivers/media/dvb/frontends/stv0299.h |4 ++--
 drivers/media/dvb/ttpci/av7110.c  |   10 --
 drivers/media/dvb/ttpci/budget-av.c   |4 ++--
 drivers/media/dvb/ttpci/budget-ci.c   |9 -
 drivers/media/dvb/ttpci/budget-patch.c|5 ++---
 drivers/media/dvb/ttpci/budget.c  |5 ++---
 drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c |4 ++--
 9 files changed, 23 insertions(+), 29 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/b2c2/flexcop-fe-tuner.c
2005-09-04 22:54:07.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/b2c2/flexcop-fe-tuner.c 2005-09-04 
22:54:23.0 +0200
@@ -164,12 +164,11 @@ static int samsung_tbmu24112_set_symbol_
return 0;
 }
 
-static int samsung_tbmu24112_pll_set(struct dvb_frontend* fe, struct 
dvb_frontend_parameters* params)
+static int samsung_tbmu24112_pll_set(struct dvb_frontend* fe, struct 
i2c_adapter *i2c, struct dvb_frontend_parameters* params)
 {
u8 buf[4];
u32 div;
struct i2c_msg msg = { .addr = 0x61, .flags = 0, .buf = buf, .len = 
sizeof(buf) };
-   struct flexcop_device *fc = fe->dvb->priv;
 
div = params->frequency / 125;
 
@@ -180,7 +179,7 @@ static int samsung_tbmu24112_pll_set(str
 
if (params->frequency < 150) buf[3] |= 0x10;
 
-   if (i2c_transfer(&fc->i2c_adap, &msg, 1) != 1)
+   if (i2c_transfer(i2c, &msg, 1) != 1)
return -EIO;
return 0;
 }
--- linux-2.6.13-git4.orig/drivers/media/dvb/frontends/stv0299.c
2005-09-04 22:54:07.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/frontends/stv0299.c 2005-09-04 
22:54:23.0 +0200
@@ -481,7 +481,7 @@ static int stv0299_init (struct dvb_fron
 
if (state->config->pll_init) {
stv0299_writeregI(state, 0x05, 0xb5);   /*  enable i2c repeater 
on stv0299  */
-   state->config->pll_init(fe);
+   state->config->pll_init(fe, state->i2c);
stv0299_writeregI(state, 0x05, 0x35);   /*  disable i2c 
repeater on stv0299  */
}
 
@@ -603,7 +603,7 @@ static int stv0299_set_frontend(struct d
} else {
/* A "normal" tune is requested */
stv0299_writeregI(state, 0x05, 0xb5);   /*  enable i2c 
repeater on stv0299  */
-   state->config->pll_set(fe, p);
+   state->config->pll_set(fe, state->i2c, p);
stv0299_writeregI(state, 0x05, 0x35);   /*  disable i2c 
repeater on stv0299  */
 
stv0299_writeregI(state, 0x32, 0x80);
@@ -615,7 +615,7 @@ static int stv0299_set_frontend(struct d
}
} else {
stv0299_writeregI(state, 0x05, 0xb5);   /*  enable i2c repeater 
on stv0299  */
-   state->config->pll_set(fe, p);
+   state->config->pll_set(fe, state->i2c, p);
stv0299_writeregI(state, 0x05, 0x35);   /*  disable i2c 
repeater on stv0299  */
 
stv0299_set_FEC (state, p->u.qpsk.fec_inner);
--- linux-2.6.13-git4.orig/drivers/media/dvb/frontends/stv0299.h
2005-09-04 22:54:07.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/frontends/stv0299.h 2005-09-04 
22:54:23.0 +0200
@@ -92,8 +92,8 @@ struct stv0299_config
int (*set_symbol_rate)(struct dvb_frontend* fe, u32 srate, u32 ratio);
 
/* PLL maintenance */
-   int (*pll_init)(struct dvb_frontend* fe);
-   int (*pll_set)(struct dvb_frontend* fe, struct dvb_frontend_parameters* 
params);
+   int (*pll_init)(struct dvb_frontend *fe, struct i2c_adapter *i2c);
+   int (*pll_set)(struct dvb_frontend *fe, struct i2c_adapter *i2c, struct 
dvb_frontend_parameters *params);
 };
 
 extern int stv0299_writereg (struct dvb_frontend* fe, u8 reg, u8 data);
--- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110.c 2005-09-04 
22:54:07.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110.c  2005-09-04 
22:54:23.0 +0200
@@ -1668,9 +1668,8 @@ static int alps_bsru6_set_symbol_rate(st
return 0;
 }
 
-static int alps_bsru6_pll_set(struct dvb_frontend* fe, struct 
dvb_frontend_parameters* params)
+static int alps_bsru6_pll_set(struct dvb_frontend* fe, struct i2c_adapter 
*i2c, struct dvb_frontend_parameters* params)
 {
-   struct av7110* av7110 = (struct av7110*) fe->dvb->priv;
int ret;
u8 data[4];

[DVB patch 04/54] core: glue code for DMX_GET_CAPS and DMX_SET_SOURCE

2005-09-04 Thread Johannes Stezenbach
From: Andreas Oberritter <[EMAIL PROTECTED]>

Glue code for DMX_GET_CAPS and DMX_SET_SOURCE ioctls.

Signed-off-by: Andreas Oberritter <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-core/demux.h  |5 +
 drivers/media/dvb/dvb-core/dmxdev.c |   16 
 2 files changed, 21 insertions(+)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/demux.h   2005-09-04 
22:24:24.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/demux.h2005-09-04 
22:27:52.0 +0200
@@ -30,6 +30,7 @@
 #include 
 #include 
 #include 
+#include 
 
 /*--*/
 /* Common definitions */
@@ -282,6 +283,10 @@ struct dmx_demux {
 
 int (*get_pes_pids) (struct dmx_demux* demux, u16 *pids);
 
+   int (*get_caps) (struct dmx_demux* demux, struct dmx_caps *caps);
+
+   int (*set_source) (struct dmx_demux* demux, const dmx_source_t *src);
+
 int (*get_stc) (struct dmx_demux* demux, unsigned int num,
u64 *stc, unsigned int *base);
 };
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/dmxdev.c  2005-09-04 
22:24:24.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/dmxdev.c   2005-09-04 
22:27:52.0 +0200
@@ -929,6 +929,22 @@ static int dvb_demux_do_ioctl(struct ino
dmxdev->demux->get_pes_pids(dmxdev->demux, (u16 *)parg);
break;
 
+   case DMX_GET_CAPS:
+   if (!dmxdev->demux->get_caps) {
+   ret = -EINVAL;
+   break;
+   }
+   ret = dmxdev->demux->get_caps(dmxdev->demux, parg);
+   break;
+
+   case DMX_SET_SOURCE:
+   if (!dmxdev->demux->set_source) {
+   ret = -EINVAL;
+   break;
+   }
+   ret = dmxdev->demux->set_source(dmxdev->demux, parg);
+   break;
+
case DMX_GET_STC:
if (!dmxdev->demux->get_stc) {
ret=-EINVAL;

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [DVB patch 54/54] ttusb-budget: use time_after_eq()

2005-09-04 Thread Nish Aravamudan
On 9/4/05, Johannes Stezenbach <[EMAIL PROTECTED]> wrote:
> From: Marcelo Feitoza Parisi <[EMAIL PROTECTED]>
> 
> Use of the time_after_eq() macro, defined at linux/jiffies.h, which deal
> with wrapping correctly and are nicer to read.
> 
> Signed-off-by: Marcelo Feitoza Parisi <[EMAIL PROTECTED]>
> Signed-off-by: Domen Puncer <[EMAIL PROTECTED]>
> Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>
> 
>  drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c |6 --
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> --- linux-2.6.13-git4.orig/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c  
>   2005-09-04 22:28:03.0 +0200
> +++ linux-2.6.13-git4/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c 
> 2005-09-04 22:31:06.0 +0200
> @@ -18,6 +18,7 @@
>  #include 
>  #include 
>  #include 
> +#include 
>  #include 
> 
>  #include "dvb_frontend.h"
> @@ -570,7 +571,8 @@ static void ttusb_handle_sec_data(struct
>   const u8 * data, int len);
>  #endif
> 
> -static int numpkt = 0, lastj, numts, numstuff, numsec, numinvalid;
> +static int numpkt = 0, numts, numstuff, numsec, numinvalid;
> +static unsigned long lastj;
> 
>  static void ttusb_process_muxpack(struct ttusb *ttusb, const u8 * muxpack,
>int len)
> @@ -779,7 +781,7 @@ static void ttusb_iso_irq(struct urb *ur
> u8 *data;
> int len;
> numpkt++;
> -   if ((jiffies - lastj) >= HZ) {
> +   if (time_after_eq(jiffies, lastj + HZ)) {

I think you actually want:

static void ttusb_iso_irq()
{
 unsigned long lastj;

 ...

 lastj = jiffies + HZ;
 if (time_after_eq(jiffies, lastj)) {
  ...

}

The current code doesn't assign jiffies to lastj at any point that I see.

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 26/54] usb: dtt200u: copy frontend_ops before modifying

2005-09-04 Thread Johannes Stezenbach
From: Ye Jianjun (Joey) <[EMAIL PROTECTED]>

Fix: copy frontend_ops before modifying

Signed-off-by: Ye Jianjun (Joey) <[EMAIL PROTECTED]>
Signed-off-by: Patrick Boettcher <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-usb/dtt200u-fe.c |4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/dtt200u-fe.c   
2005-09-04 22:24:23.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/dtt200u-fe.c2005-09-04 
22:28:19.0 +0200
@@ -18,6 +18,7 @@ struct dtt200u_fe_state {
 
struct dvb_frontend_parameters fep;
struct dvb_frontend frontend;
+   struct dvb_frontend_ops ops;
 };
 
 static int dtt200u_fe_read_status(struct dvb_frontend* fe, fe_status_t *stat)
@@ -163,8 +164,9 @@ struct dvb_frontend* dtt200u_fe_attach(s
deb_info("attaching frontend dtt200u\n");
 
state->d = d;
+   memcpy(&state->ops,&dtt200u_fe_ops,sizeof(struct dvb_frontend_ops));
 
-   state->frontend.ops = &dtt200u_fe_ops;
+   state->frontend.ops = &state->ops;
state->frontend.demodulator_priv = state;
 
goto success;

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 49/54] av7110: disable superflous firmware handshake

2005-09-04 Thread Johannes Stezenbach
Disable superflous firmware handshake.

Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/ttpci/av7110_hw.c |2 ++
 1 file changed, 2 insertions(+)

--- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110_hw.c  2005-09-04 
22:03:40.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110_hw.c   2005-09-04 
22:30:58.0 +0200
@@ -41,6 +41,8 @@
 #include "av7110.h"
 #include "av7110_hw.h"
 
+#define _NOHANDSHAKE
+
 /
  * DEBI functions
  /

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 05/54] core: dvb_demux: fix continuity counter error handling

2005-09-04 Thread Johannes Stezenbach
From: Andreas Oberritter <[EMAIL PROTECTED]>

Don't return immediately from dvb_dmx_swfilter_section_packet() if CC is not ok.
Otherwise a new feed drops all packets until the first packet with CC=0 arrives.

Signed-off-by: Andreas Oberritter <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-core/dvb_demux.c |1 -
 1 file changed, 1 deletion(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/dvb_demux.c   
2005-09-04 22:24:24.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/dvb_demux.c2005-09-04 
22:27:54.0 +0200
@@ -336,7 +336,6 @@ static int dvb_dmx_swfilter_section_pack
*/
feed->pusi_seen = 0;
dvb_dmx_swfilter_section_new(feed);
-   return 0;
}
 
if (buf[1] & 0x40) {

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 32/54] remove noisy debug print

2005-09-04 Thread Johannes Stezenbach
comment out noisy dprintk in dst_get_signal()
(why are errors only visible with debug on?
this needs to be cleaned up so we can disable debug by default)

Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/bt8xx/dst.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/bt8xx/dst.c2005-09-04 
22:24:23.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/bt8xx/dst.c 2005-09-04 
22:28:26.0 +0200
@@ -928,7 +928,7 @@ static int dst_get_signal(struct dst_sta
 {
int retval;
u8 get_signal[] = { 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfb };
-   dprintk("%s: Getting Signal strength and other parameters\n", 
__FUNCTION__);
+   //dprintk("%s: Getting Signal strength and other parameters\n", 
__FUNCTION__);
if ((state->diseq_flags & ATTEMPT_TUNE) == 0) {
state->decode_lock = state->decode_strength = state->decode_snr 
= 0;
return 0;

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 42/54] dst: ci doc update

2005-09-04 Thread Johannes Stezenbach
From: Manu Abraham <[EMAIL PROTECTED]>

Updated documentation

Signed-off-by: Manu Abraham <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 Documentation/dvb/ci.txt |9 +
 1 file changed, 1 insertion(+), 8 deletions(-)

--- linux-2.6.13-git4.orig/Documentation/dvb/ci.txt 2005-09-04 
22:24:23.0 +0200
+++ linux-2.6.13-git4/Documentation/dvb/ci.txt  2005-09-04 22:28:38.0 
+0200
@@ -23,7 +23,6 @@ This application requires the following 
  eg: $ szap -c channels.conf -r "TMC" -x
 
(b) a channels.conf containing a valid PMT PID
-
  eg: TMC:11996:h:0:27500:278:512:650:321
 
  here 278 is a valid PMT PID. the rest of the values are the
@@ -31,13 +30,7 @@ This application requires the following 
 
(c) after running a szap, you have to run ca_zap, for the
  descrambler to function,
-
- eg: $ ca_zap patched_channels.conf "TMC"
-
- The patched means a patch to apply to scan, such that scan can
- generate a channels.conf_with pmt, which has this PMT PID info
- (NOTE: szap cannot use this channels.conf with the PMT_PID)
-
+ eg: $ ca_zap channels.conf "TMC"
 
(d) Hopeflly Enjoy your favourite subscribed channel as you do with
  a FTA card.

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 52/54] ttpci: add PCI ids for old Siemens/TT DVB-C card

2005-09-04 Thread Johannes Stezenbach
From: Karl Herz <[EMAIL PROTECTED]>

Add PCI-ids of Siemens-DVB-C card with Technotrend manufacturer id.

Signed-off-by: Karl Herz <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/ttpci/av7110.c |   26 ++
 1 file changed, 14 insertions(+), 12 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110.c 2005-09-04 
22:31:00.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110.c  2005-09-04 
22:31:02.0 +0200
@@ -168,7 +168,9 @@ static void init_av7110_av(struct av7110
if (ret < 0)
printk("dvb-ttpci:cannot switch on SCART(AD):%d\n",ret);
if (rgb_on &&
-   (av7110->dev->pci->subsystem_vendor == 0x110a) && 
(av7110->dev->pci->subsystem_device == 0x)) {
+   ((av7110->dev->pci->subsystem_vendor == 0x110a) || 
+(av7110->dev->pci->subsystem_vendor == 0x13c2)) && 
+(av7110->dev->pci->subsystem_device == 0x)) {
saa7146_setgpio(dev, 1, SAA7146_GPIO_OUTHI); // RGB on, 
SCART pin 16
//saa7146_setgpio(dev, 3, SAA7146_GPIO_OUTLO); // 
SCARTpin 8
}
@@ -2868,7 +2870,7 @@ static struct saa7146_pci_extension_data
.ext_priv = x_name, \
.ext = &av7110_extension }
 
-MAKE_AV7110_INFO(tts_1_X,"Technotrend/Hauppauge WinTV DVB-S rev1.X");
+MAKE_AV7110_INFO(tts_1_X_fsc,"Technotrend/Hauppauge WinTV DVB-S rev1.X or 
Fujitsu Siemens DVB-C");
 MAKE_AV7110_INFO(ttt_1_X,"Technotrend/Hauppauge WinTV DVB-T rev1.X");
 MAKE_AV7110_INFO(ttc_1_X,"Technotrend/Hauppauge WinTV Nexus-CA rev1.X");
 MAKE_AV7110_INFO(ttc_2_X,"Technotrend/Hauppauge WinTV DVB-C rev2.X");
@@ -2880,16 +2882,16 @@ MAKE_AV7110_INFO(fsc,"Fujitsu Si
 MAKE_AV7110_INFO(fss,"Fujitsu Siemens DVB-S rev1.6");
 
 static struct pci_device_id pci_tbl[] = {
-   MAKE_EXTENSION_PCI(fsc,   0x110a, 0x),
-   MAKE_EXTENSION_PCI(tts_1_X,   0x13c2, 0x),
-   MAKE_EXTENSION_PCI(ttt_1_X,   0x13c2, 0x0001),
-   MAKE_EXTENSION_PCI(ttc_2_X,   0x13c2, 0x0002),
-   MAKE_EXTENSION_PCI(tts_2_X,   0x13c2, 0x0003),
-   MAKE_EXTENSION_PCI(fss,   0x13c2, 0x0006),
-   MAKE_EXTENSION_PCI(ttt,   0x13c2, 0x0008),
-   MAKE_EXTENSION_PCI(ttc_1_X,   0x13c2, 0x000a),
-   MAKE_EXTENSION_PCI(tts_2_3,   0x13c2, 0x000e),
-   MAKE_EXTENSION_PCI(tts_1_3se, 0x13c2, 0x1002),
+   MAKE_EXTENSION_PCI(fsc, 0x110a, 0x),
+   MAKE_EXTENSION_PCI(tts_1_X_fsc, 0x13c2, 0x),
+   MAKE_EXTENSION_PCI(ttt_1_X, 0x13c2, 0x0001),
+   MAKE_EXTENSION_PCI(ttc_2_X, 0x13c2, 0x0002),
+   MAKE_EXTENSION_PCI(tts_2_X, 0x13c2, 0x0003),
+   MAKE_EXTENSION_PCI(fss, 0x13c2, 0x0006),
+   MAKE_EXTENSION_PCI(ttt, 0x13c2, 0x0008),
+   MAKE_EXTENSION_PCI(ttc_1_X, 0x13c2, 0x000a),
+   MAKE_EXTENSION_PCI(tts_2_3, 0x13c2, 0x000e),
+   MAKE_EXTENSION_PCI(tts_1_3se,   0x13c2, 0x1002),
 
 /* MAKE_EXTENSION_PCI(???, 0x13c2, 0x0004), UNDEFINED CARD */ // Galaxis 
DVB PC-Sat-Carte
 /* MAKE_EXTENSION_PCI(???, 0x13c2, 0x0005), UNDEFINED CARD */ // Technisat 
SkyStar1

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 12/54] frontend: mt352: fix signal strength reading

2005-09-04 Thread Johannes Stezenbach
From: Barry Scott <[EMAIL PROTECTED]>

Fix two problems with the signal strength value in the mt352.c frontend:
1. the 4 most significant bits are zeroed - shift and mask wrong way round
2. need to align the 12 bits from the registers at the top of the 16 bit
   returned value - otherwise the range is not 0 to 0x its 0xf000 to 0x

Signed-off-by: Barry Scott <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/frontends/mt352.c |6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/frontends/mt352.c  2005-09-04 
22:24:24.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/frontends/mt352.c   2005-09-04 
22:28:02.0 +0200
@@ -462,9 +462,11 @@ static int mt352_read_signal_strength(st
 {
struct mt352_state* state = fe->demodulator_priv;
 
-   u16 signal = ((mt352_read_register(state, AGC_GAIN_1) << 8) & 0x0f) |
- (mt352_read_register(state, AGC_GAIN_0));
+   /* align the 12 bit AGC gain with the most significant bits */
+   u16 signal = ((mt352_read_register(state, AGC_GAIN_1) & 0x0f) << 12) |
+   (mt352_read_register(state, AGC_GAIN_0) << 4);
 
+   /* inverse of gain is signal strength */
*strength = ~signal;
return 0;
 }

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 08/54] core: dvb_demux: remove more unused cruft

2005-09-04 Thread Johannes Stezenbach
From: Andreas Oberritter <[EMAIL PROTECTED]>

Removed more unused variables and constants.

Signed-off-by: Andreas Oberritter <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-core/demux.h |7 ---
 drivers/media/dvb/dvb-core/dmxdev.c|4 ++--
 drivers/media/dvb/dvb-core/dvb_demux.c |   18 ++
 drivers/media/dvb/dvb-core/dvb_demux.h |7 +--
 drivers/media/dvb/dvb-core/dvb_net.c   |4 +---
 5 files changed, 6 insertions(+), 34 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/demux.h   2005-09-04 
22:27:56.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/demux.h2005-09-04 
22:27:57.0 +0200
@@ -125,9 +125,7 @@ struct dmx_ts_feed {
u16 pid,
int type,
enum dmx_ts_pes pes_type,
-   size_t callback_length,
size_t circular_buffer_size,
-   int descramble,
struct timespec timeout);
 int (*start_filtering) (struct dmx_ts_feed* feed);
 int (*stop_filtering) (struct dmx_ts_feed* feed);
@@ -160,7 +158,6 @@ struct dmx_section_feed {
 int (*set) (struct dmx_section_feed* feed,
u16 pid,
size_t circular_buffer_size,
-   int descramble,
int check_crc);
 int (*allocate_filter) (struct dmx_section_feed* feed,
struct dmx_section_filter** filter);
@@ -208,7 +205,6 @@ struct dmx_frontend {
 struct list_head connectivity_list; /* List of front-ends that can
   be connected to a particular
   demux */
-void* priv; /* Pointer to private data of the API client */
 enum dmx_frontend_source source;
 };
 
@@ -226,8 +222,6 @@ struct dmx_frontend {
 #define DMX_MEMORY_BASED_FILTERING  8/* write() available */
 #define DMX_CRC_CHECKING16
 #define DMX_TS_DESCRAMBLING 32
-#define DMX_SECTION_PAYLOAD_DESCRAMBLING64
-#define DMX_MAC_ADDRESS_DESCRAMBLING128
 
 /*
  * Demux resource type identifier.
@@ -246,7 +240,6 @@ struct dmx_demux {
 u32 capabilities;/* Bitfield of capability flags */
 struct dmx_frontend* frontend;/* Front-end connected to the demux 
*/
 void* priv;  /* Pointer to private data of the API 
client */
-int users;   /* Number of users */
 int (*open) (struct dmx_demux* demux);
 int (*close) (struct dmx_demux* demux);
 int (*write) (struct dmx_demux* demux, const char* buf, size_t count);
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/dmxdev.c  2005-09-04 
22:27:52.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/dmxdev.c   2005-09-04 
22:27:57.0 +0200
@@ -571,7 +571,7 @@ static int dvb_dmxdev_filter_start(struc
return ret;
}
 
-   ret=(*secfeed)->set(*secfeed, para->pid, 32768, 0,
+   ret=(*secfeed)->set(*secfeed, para->pid, 32768,
(para->flags & DMX_CHECK_CRC) ? 1 : 
0);
 
if (ret<0) {
@@ -654,7 +654,7 @@ static int dvb_dmxdev_filter_start(struc
(*tsfeed)->priv = (void *) filter;
 
ret = (*tsfeed)->set(*tsfeed, para->pid, ts_type, ts_pes,
-188, 32768, 0, timeout);
+32768, timeout);
 
if (ret < 0) {
dmxdev->demux->release_ts_feed(dmxdev->demux, *tsfeed);
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-core/dvb_demux.c   
2005-09-04 22:27:56.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-core/dvb_demux.c2005-09-04 
22:27:57.0 +0200
@@ -577,8 +577,7 @@ out:
 }
 
 static int dmx_ts_feed_set (struct dmx_ts_feed* ts_feed, u16 pid, int ts_type,
-enum dmx_ts_pes pes_type, size_t callback_length,
-size_t circular_buffer_size, int descramble,
+enum dmx_ts_pes pes_type, size_t circular_buffer_size,
 struct timespec timeout)
 {
struct dvb_demux_feed *feed = (struct dvb_demux_feed *) ts_feed;
@@ -610,17 +609,10 @@ static int dmx_ts_feed_set (struct dmx_t
 
feed->pid = pid;
feed->buffer_size = circular_buffer_size;
-   feed->descramble = descramble;
feed->timeout = timeout;
-   feed->cb_length = callback_length;
feed->ts_type = ts_type;
feed->pes_type = pes_type;
 
-   if (feed->descramble) {
-   up(&demux->mutex);
-   return -ENOSYS;
-   }
-
if (feed->buffer_size) {
 #ifdef NOBUFS
fee

[DVB patch 53/54] saa7146: i2c vs. sysfs fix

2005-09-04 Thread Johannes Stezenbach
From: Philipp Matthias Hahn <[EMAIL PROTECTED]>

Integrate saa7146_i2c adapter into device model:
Moves entries from /sys/device/platform to /sys/device/pci*.

Signed-off-by: Philipp Hahn <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/common/saa7146_i2c.c |1 +
 1 file changed, 1 insertion(+)

--- linux-2.6.13-git4.orig/drivers/media/common/saa7146_i2c.c   2005-09-04 
22:27:49.0 +0200
+++ linux-2.6.13-git4/drivers/media/common/saa7146_i2c.c2005-09-04 
22:31:04.0 +0200
@@ -405,6 +405,7 @@ int saa7146_i2c_adapter_prepare(struct s
if( NULL != i2c_adapter ) {
BUG_ON(!i2c_adapter->class);
i2c_set_adapdata(i2c_adapter,dev);
+   i2c_adapter->dev.parent= &dev->pci->dev;
i2c_adapter->algo  = &saa7146_algo;
i2c_adapter->algo_data = NULL;
i2c_adapter->id= I2C_ALGO_SAA7146;

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 45/54] av7110: Siemens DVB-C analog video input support

2005-09-04 Thread Johannes Stezenbach
From: thomas schorpp <[EMAIL PROTECTED]>

Add support for analog video inputs (CVBS and Y/C) of the
analog module for the Siemens DVB-C card.

Signed-off-by: thomas schorpp <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/ttpci/av7110_v4l.c |   74 +--
 1 file changed, 54 insertions(+), 20 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110_v4l.c 2005-09-04 
22:03:40.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110_v4l.c  2005-09-04 
22:30:54.0 +0200
@@ -70,7 +70,7 @@ static int msp_readreg(struct av7110 *av
return 0;
 }
 
-static struct v4l2_input inputs[2] = {
+static struct v4l2_input inputs[4] = {
{
.index  = 0,
.name   = "DVB",
@@ -87,6 +87,22 @@ static struct v4l2_input inputs[2] = {
.tuner  = 0,
.std= V4L2_STD_PAL_BG|V4L2_STD_NTSC_M,
.status = 0,
+   }, {
+   .index  = 2,
+   .name   = "Video",
+   .type   = V4L2_INPUT_TYPE_CAMERA,
+   .audioset   = 0,
+   .tuner  = 0,
+   .std= V4L2_STD_PAL_BG|V4L2_STD_NTSC_M,
+   .status = 0,
+   }, {
+   .index  = 3,
+   .name   = "Y/C",
+   .type   = V4L2_INPUT_TYPE_CAMERA,
+   .audioset   = 0,
+   .tuner  = 0,
+   .std= V4L2_STD_PAL_BG|V4L2_STD_NTSC_M,
+   .status = 0,
}
 };
 
@@ -212,24 +228,44 @@ static int av7110_dvb_c_switch(struct sa
}
 
if (0 != av7110->current_input) {
+   dprintk(1, "switching to analog TV:\n");
adswitch = 1;
source = SAA7146_HPS_SOURCE_PORT_B;
sync = SAA7146_HPS_SYNC_PORT_B;
memcpy(standard, analog_standard, sizeof(struct 
saa7146_standard) * 2);
-   dprintk(1, "switching to analog TV\n");
-   msp_writereg(av7110, MSP_WR_DSP, 0x0008, 0x); // 
loudspeaker source
-   msp_writereg(av7110, MSP_WR_DSP, 0x0009, 0x); // headphone 
source
-   msp_writereg(av7110, MSP_WR_DSP, 0x000a, 0x); // SCART 1 
source
-   msp_writereg(av7110, MSP_WR_DSP, 0x000e, 0x3000); // FM matrix, 
mono
-   msp_writereg(av7110, MSP_WR_DSP, 0x, 0x4f00); // 
loudspeaker + headphone
-   msp_writereg(av7110, MSP_WR_DSP, 0x0007, 0x4f00); // SCART 1 
volume
 
-   if (av7110->analog_tuner_flags & ANALOG_TUNER_VES1820) {
-   if (ves1820_writereg(dev, 0x09, 0x0f, 0x60))
-   dprintk(1, "setting band in demodulator 
failed.\n");
-   } else if (av7110->analog_tuner_flags & ANALOG_TUNER_STV0297) {
-   saa7146_setgpio(dev, 1, SAA7146_GPIO_OUTHI); // TDA9198 
pin9(STD)
-   saa7146_setgpio(dev, 3, SAA7146_GPIO_OUTHI); // TDA9198 
pin30(VIF)
+   switch (av7110->current_input) {
+   case 1:
+   dprintk(1, "switching SAA7113 to Analog Tuner 
Input.\n");
+   msp_writereg(av7110, MSP_WR_DSP, 0x0008, 0x); // 
loudspeaker source
+   msp_writereg(av7110, MSP_WR_DSP, 0x0009, 0x); // 
headphone source
+   msp_writereg(av7110, MSP_WR_DSP, 0x000a, 0x); // 
SCART 1 source
+   msp_writereg(av7110, MSP_WR_DSP, 0x000e, 0x3000); // FM 
matrix, mono
+   msp_writereg(av7110, MSP_WR_DSP, 0x, 0x4f00); // 
loudspeaker + headphone
+   msp_writereg(av7110, MSP_WR_DSP, 0x0007, 0x4f00); // 
SCART 1 volume
+
+   if (av7110->analog_tuner_flags & ANALOG_TUNER_VES1820) {
+   if (ves1820_writereg(dev, 0x09, 0x0f, 0x60))
+   dprintk(1, "setting band in demodulator 
failed.\n");
+   } else if (av7110->analog_tuner_flags & 
ANALOG_TUNER_STV0297) {
+   saa7146_setgpio(dev, 1, SAA7146_GPIO_OUTHI); // 
TDA9198 pin9(STD)
+   saa7146_setgpio(dev, 3, SAA7146_GPIO_OUTHI); // 
TDA9198 pin30(VIF)
+   }
+   if (i2c_writereg(av7110, 0x48, 0x02, 0xd0) != 1)
+   dprintk(1, "saa7113 write failed @ card %d", 
av7110->dvb_adapter.num);
+   break;
+   case 2:
+   dprintk(1, "switching SAA7113 to Video AV CVBS 
Input.\n");
+   if (i2c_writereg(av7110, 0x48, 0x02, 0xd2) != 1)
+   dprintk(1, "saa7113 write failed @ card %d", 
av7110->dvb_adapter.num);
+   break;
+   

[DVB patch 20/54] frontend: cx24110: clean up timeout handling.

2005-09-04 Thread Johannes Stezenbach
Clean up timeout handling.

Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/frontends/cx24110.c |   14 +-
 1 file changed, 9 insertions(+), 5 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/frontends/cx24110.c
2005-09-04 22:28:10.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/frontends/cx24110.c 2005-09-04 
22:28:11.0 +0200
@@ -387,8 +387,9 @@ static int cx24110_set_voltage (struct d
 
 static int cx24110_diseqc_send_burst(struct dvb_frontend* fe, 
fe_sec_mini_cmd_t burst)
 {
-   int rv, bit, i;
+   int rv, bit;
struct cx24110_state *state = fe->demodulator_priv;
+   unsigned long timeout;
 
if (burst == SEC_MINI_A)
bit = 0x00;
@@ -403,8 +404,9 @@ static int cx24110_diseqc_send_burst(str
 
rv = cx24110_readreg(state, 0x76);
cx24110_writereg(state, 0x76, ((rv & 0x90) | 0x40 | bit));
-   for (i = 500; i-- > 0 && !(cx24110_readreg(state,0x76)&0x40) ; )
-  ; /* wait for LNB ready */
+   timeout = jiffies + msecs_to_jiffies(100);
+   while (!time_after(jiffies, timeout) && !(cx24110_readreg(state, 0x76) 
& 0x40))
+   ; /* wait for LNB ready */
 
return 0;
 }
@@ -414,6 +416,7 @@ static int cx24110_send_diseqc_msg(struc
 {
int i, rv;
struct cx24110_state *state = fe->demodulator_priv;
+   unsigned long timeout;
 
for (i = 0; i < cmd->msg_len; i++)
cx24110_writereg(state, 0x79 + i, cmd->msg[i]);
@@ -427,8 +430,9 @@ static int cx24110_send_diseqc_msg(struc
rv = cx24110_readreg(state, 0x76);
 
cx24110_writereg(state, 0x76, ((rv & 0x90) | 0x40) | ((cmd->msg_len-3) 
& 3));
-   for (i=100; i-- > 0 && !(cx24110_readreg(state,0x76)&0x40);)
-   msleep(1); /* wait for LNB ready */
+   timeout = jiffies + msecs_to_jiffies(100);
+   while (!time_after(jiffies, timeout) && !(cx24110_readreg(state, 0x76) 
& 0x40))
+   ; /* wait for LNB ready */
 
return 0;
 }

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 51/54] ttpci: av7110: RC5+ remote control support

2005-09-04 Thread Johannes Stezenbach
From: Oliver Endriss <[EMAIL PROTECTED]>

Improved remote control support for av7110-based cards:
o extended rc5 protocol, firmware >= 0x2620 required
o key-up timer slightly adjusted
o completely moved remote control code to av7110_ir.c
o support for multiple ir receivers
o for now, all av7110 cards share the same ir configuration and event device

Signed-off-by: Oliver Endriss <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/ttpci/av7110.c|   70 +-
 drivers/media/dvb/ttpci/av7110.h|   11 +-
 drivers/media/dvb/ttpci/av7110_ir.c |  140 
 3 files changed, 110 insertions(+), 111 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110.c 2005-09-04 
22:30:55.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110.c  2005-09-04 
22:31:00.0 +0200
@@ -177,9 +177,6 @@ static void init_av7110_av(struct av7110
ret = av7110_set_volume(av7110, av7110->mixer.volume_left, 
av7110->mixer.volume_right);
if (ret < 0)
printk("dvb-ttpci:cannot set volume :%d\n",ret);
-   ret = av7110_setup_irc_config(av7110, 0);
-   if (ret < 0)
-   printk("dvb-ttpci:cannot setup irc config :%d\n",ret);
 }
 
 static void recover_arm(struct av7110 *av7110)
@@ -265,60 +262,6 @@ static int arm_thread(void *data)
 }
 
 
-/**
- *  Hack! we save the last av7110 ptr. This should be ok, since
- *  you rarely will use more then one IR control.
- *
- *  If we want to support multiple controls we would have to do much more...
- */
-int av7110_setup_irc_config(struct av7110 *av7110, u32 ir_config)
-{
-   int ret = 0;
-   static struct av7110 *last;
-
-   dprintk(4, "%p\n", av7110);
-
-   if (!av7110)
-   av7110 = last;
-   else
-   last = av7110;
-
-   if (av7110) {
-   ret = av7110_fw_cmd(av7110, COMTYPE_PIDFILTER, SetIR, 1, 
ir_config);
-   av7110->ir_config = ir_config;
-   }
-   return ret;
-}
-
-static void (*irc_handler)(u32);
-
-void av7110_register_irc_handler(void (*func)(u32))
-{
-   dprintk(4, "registering %p\n", func);
-   irc_handler = func;
-}
-
-void av7110_unregister_irc_handler(void (*func)(u32))
-{
-   dprintk(4, "unregistering %p\n", func);
-   irc_handler = NULL;
-}
-
-static void run_handlers(unsigned long ircom)
-{
-   if (irc_handler != NULL)
-   (*irc_handler)((u32) ircom);
-}
-
-static DECLARE_TASKLET(irtask, run_handlers, 0);
-
-static void IR_handle(struct av7110 *av7110, u32 ircom)
-{
-   dprintk(4, "ircommand = %08x\n", ircom);
-   irtask.data = (unsigned long) ircom;
-   tasklet_schedule(&irtask);
-}
-
 /
  * IRQ handling
  /
@@ -711,8 +654,9 @@ static void gpioirq(unsigned long data)
return;
 
case DATA_IRCOMMAND:
-   IR_handle(av7110,
- swahw32(irdebi(av7110, DEBINOSWAP, Reserved, 0, 4)));
+   if (av7110->ir_handler)
+   av7110->ir_handler(av7110,
+   swahw32(irdebi(av7110, DEBINOSWAP, Reserved, 0, 
4)));
iwdebi(av7110, DEBINOSWAP, RX_BUFF, 0, 2);
break;
 
@@ -2783,7 +2727,7 @@ static int av7110_attach(struct saa7146_
goto err_av7110_exit_v4l_12;
 
 #if defined(CONFIG_INPUT_EVDEV) || defined(CONFIG_INPUT_EVDEV_MODULE)
-   av7110_ir_init();
+   av7110_ir_init(av7110);
 #endif
printk(KERN_INFO "dvb-ttpci: found av7110-%d.\n", av7110_num);
av7110_num++;
@@ -2825,6 +2769,9 @@ static int av7110_detach(struct saa7146_
struct av7110 *av7110 = saa->ext_priv;
dprintk(4, "%p\n", av7110);
 
+#if defined(CONFIG_INPUT_EVDEV) || defined(CONFIG_INPUT_EVDEV_MODULE)
+   av7110_ir_exit(av7110);
+#endif
if (budgetpatch) {
/* Disable RPS1 */
saa7146_write(saa, MC1, MASK_29);
@@ -2980,9 +2927,6 @@ static int __init av7110_init(void)
 
 static void __exit av7110_exit(void)
 {
-#if defined(CONFIG_INPUT_EVDEV) || defined(CONFIG_INPUT_EVDEV_MODULE)
-   av7110_ir_exit();
-#endif
saa7146_unregister_extension(&av7110_extension);
 }
 
--- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/av7110.h 2005-09-04 
22:03:40.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttpci/av7110.h  2005-09-04 
22:31:00.0 +0200
@@ -228,7 +228,10 @@ struct av7110 {
struct dvb_video_events  video_events;
video_size_t video_size;
 
-   u32 ir_config;
+   u32 ir_config;
+   u32 ir_command;
+   void(*ir_handler)(struct av7110 *av7110, u32 
ircom); 
+   struct tasklet_struct   ir_tasklet;
 
/* firmware st

[DVB patch 27/54] usb: dtt200u: add proper device names

2005-09-04 Thread Johannes Stezenbach
From: Patrick Boettcher <[EMAIL PROTECTED]>

Added names for clones of the DVB-T stick.
Whitespace cleanups.

Signed-off-by: Patrick Boettcher <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-usb/dtt200u.c |   17 -
 1 file changed, 8 insertions(+), 9 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/dtt200u.c  2005-09-04 
22:24:23.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/dtt200u.c   2005-09-04 
22:28:20.0 +0200
@@ -106,12 +106,11 @@ static int dtt200u_usb_probe(struct usb_
 }
 
 static struct usb_device_id dtt200u_usb_table [] = {
-// { USB_DEVICE(0x04b4,0x8613) },
-   { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_DTT200U_COLD) },
-   { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_DTT200U_WARM) },
-   { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_COLD)  },
-   { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_WARM)  },
-   { 0 },
+   { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_DTT200U_COLD) },
+   { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_DTT200U_WARM) },
+   { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_COLD)  },
+   { USB_DEVICE(USB_VID_WIDEVIEW, USB_PID_WT220U_WARM)  },
+   { 0 },
 };
 MODULE_DEVICE_TABLE(usb, dtt200u_usb_table);
 
@@ -189,7 +188,7 @@ static struct dvb_usb_properties wt220u_
 
.num_device_descs = 1,
.devices = {
-   { .name = "WideView WT-220U PenType Receiver (and clones)",
+   { .name = "WideView WT-220U PenType Receiver (Typhoon/Freecom)",
  .cold_ids = { &dtt200u_usb_table[2], NULL },
  .warm_ids = { &dtt200u_usb_table[3], NULL },
},
@@ -201,9 +200,9 @@ static struct dvb_usb_properties wt220u_
 static struct usb_driver dtt200u_usb_driver = {
.owner  = THIS_MODULE,
.name   = "dvb_usb_dtt200u",
-   .probe  = dtt200u_usb_probe,
+   .probe  = dtt200u_usb_probe,
.disconnect = dvb_usb_device_exit,
-   .id_table   = dtt200u_usb_table,
+   .id_table   = dtt200u_usb_table,
 };
 
 /* module stuff */

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[DVB patch 28/54] usb: core: change dvb_usb_device_init() API

2005-09-04 Thread Johannes Stezenbach
From: Patrick Boettcher <[EMAIL PROTECTED]>

Change the init call to optionally return the new dvb_usb_device directly.

Signed-off-by: Patrick Boettcher <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/dvb-usb/a800.c |2 +-
 drivers/media/dvb/dvb-usb/cxusb.c|2 +-
 drivers/media/dvb/dvb-usb/dibusb-mb.c|6 +++---
 drivers/media/dvb/dvb-usb/dibusb-mc.c|2 +-
 drivers/media/dvb/dvb-usb/digitv.c   |2 +-
 drivers/media/dvb/dvb-usb/dtt200u.c  |4 ++--
 drivers/media/dvb/dvb-usb/dvb-usb-ids.h  |3 +++
 drivers/media/dvb/dvb-usb/dvb-usb-init.c |7 ++-
 drivers/media/dvb/dvb-usb/dvb-usb.h  |4 ++--
 drivers/media/dvb/dvb-usb/nova-t-usb2.c  |2 +-
 drivers/media/dvb/dvb-usb/umt-010.c  |2 +-
 drivers/media/dvb/dvb-usb/vp702x.c   |2 +-
 drivers/media/dvb/dvb-usb/vp7045.c   |2 +-
 13 files changed, 24 insertions(+), 16 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/a800.c 2005-09-04 
23:30:21.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/a800.c  2005-09-04 
23:32:19.0 +0200
@@ -90,7 +90,7 @@ static struct dvb_usb_properties a800_pr
 static int a800_probe(struct usb_interface *intf,
const struct usb_device_id *id)
 {
-   return dvb_usb_device_init(intf,&a800_properties,THIS_MODULE);
+   return dvb_usb_device_init(intf,&a800_properties,THIS_MODULE,NULL);
 }
 
 /* do not change the order of the ID table */
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/dibusb-mb.c
2005-09-04 23:32:19.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/dibusb-mb.c 2005-09-04 
23:32:19.0 +0200
@@ -86,9 +86,9 @@ static struct dvb_usb_properties dibusb2
 static int dibusb_probe(struct usb_interface *intf,
const struct usb_device_id *id)
 {
-   if (dvb_usb_device_init(intf,&dibusb1_1_properties,THIS_MODULE) == 0 ||
-   
dvb_usb_device_init(intf,&dibusb1_1_an2235_properties,THIS_MODULE) == 0 ||
-   dvb_usb_device_init(intf,&dibusb2_0b_properties,THIS_MODULE) == 
0)
+   if (dvb_usb_device_init(intf,&dibusb1_1_properties,THIS_MODULE,NULL) == 
0 ||
+   
dvb_usb_device_init(intf,&dibusb1_1_an2235_properties,THIS_MODULE,NULL) == 0 ||
+   
dvb_usb_device_init(intf,&dibusb2_0b_properties,THIS_MODULE,NULL) == 0)
return 0;
 
return -EINVAL;
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/dibusb-mc.c
2005-09-04 23:30:21.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/dibusb-mc.c 2005-09-04 
23:32:19.0 +0200
@@ -20,7 +20,7 @@ static struct dvb_usb_properties dibusb_
 static int dibusb_mc_probe(struct usb_interface *intf,
const struct usb_device_id *id)
 {
-   return dvb_usb_device_init(intf,&dibusb_mc_properties,THIS_MODULE);
+   return dvb_usb_device_init(intf,&dibusb_mc_properties,THIS_MODULE,NULL);
 }
 
 /* do not change the order of the ID table */
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/dtt200u.c  2005-09-04 
23:32:19.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/dtt200u.c   2005-09-04 
23:32:19.0 +0200
@@ -98,8 +98,8 @@ static struct dvb_usb_properties wt220u_
 static int dtt200u_usb_probe(struct usb_interface *intf,
const struct usb_device_id *id)
 {
-   if (dvb_usb_device_init(intf,&dtt200u_properties,THIS_MODULE) == 0 ||
-   dvb_usb_device_init(intf,&wt220u_properties,THIS_MODULE) == 0)
+   if (dvb_usb_device_init(intf,&dtt200u_properties,THIS_MODULE,NULL) == 0 
||
+   dvb_usb_device_init(intf,&wt220u_properties,THIS_MODULE,NULL) 
== 0)
return 0;
 
return -ENODEV;
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/dvb-usb-ids.h  
2005-09-04 23:32:19.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/dvb-usb/dvb-usb-ids.h   2005-09-04 
23:32:19.0 +0200
@@ -27,6 +27,7 @@
 #define USB_VID_KWORLD 0xeb2a
 #define USB_VID_KYE0x0458
 #define USB_VID_MEDION 0x1660
+#define USB_VID_PINNACLE   0x2304
 #define USB_VID_VISIONPLUS 0x13d3
 #define USB_VID_TWINHAN0x1822
 #define USB_VID_ULTIMA_ELECTRONIC  0x05d8
@@ -88,5 +89,7 @@
 #define USB_PID_MEDION_MD95700 0x0932
 #define USB_PID_KYE_DVB_T_COLD 0x701e
 #define USB_PID_KYE_DVB_T_WARM 0x701f
+#define USB_PID_PCTV_200E  0x020e
+#define USB_PID_PCTV_400E  0x020f
 
 #endif
--- linux-2.6.13-git4.orig/drivers/media/dvb/dvb-usb/dvb-usb-init.c 
2005-09-04 23:32:19.

[DVB patch 47/54] budget-av: fixes for CI interface

2005-09-04 Thread Johannes Stezenbach
From: Andrew de Quincey <[EMAIL PROTECTED]>

Fixes for CI interface.

Signed-off-by: Andrew de Quincey <[EMAIL PROTECTED]>
Signed-off-by: Johannes Stezenbach <[EMAIL PROTECTED]>

 drivers/media/dvb/ttpci/budget-av.c |4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

--- linux-2.6.13-git4.orig/drivers/media/dvb/ttpci/budget-av.c  2005-09-04 
22:03:40.0 +0200
+++ linux-2.6.13-git4/drivers/media/dvb/ttpci/budget-av.c   2005-09-04 
22:30:56.0 +0200
@@ -192,7 +192,7 @@ static int ciintf_slot_reset(struct dvb_
 {
struct budget_av *budget_av = (struct budget_av *) ca->data;
struct saa7146_dev *saa = budget_av->budget.dev;
-   int timeout = 50; // 5 seconds (4.4.6 Ready)
+   int timeout = 500; // 5 seconds (4.4.6 Ready)
 
if (slot != 0)
return -EINVAL;
@@ -217,7 +217,6 @@ static int ciintf_slot_reset(struct dvb_
{
printk(KERN_ERR "budget-av: cam reset failed (timeout).\n");
saa7146_setgpio(saa, 2, SAA7146_GPIO_OUTHI); /* disable card */
-   saa7146_setgpio(saa, 0, SAA7146_GPIO_OUTHI); /* Vcc off */
return -ETIMEDOUT;
}
 
@@ -276,7 +275,6 @@ static int ciintf_poll_slot_status(struc
{
printk(KERN_INFO "budget-av: cam ejected\n");
saa7146_setgpio(saa, 2, SAA7146_GPIO_OUTHI); /* disable 
card */
-   saa7146_setgpio(saa, 0, SAA7146_GPIO_OUTHI); /* Vcc off 
*/
budget_av->slot_status = 0;
}
}

--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


  1   2   3   >