Sergei Shtylyov [Wed, 30 Apr 2008 19:28:17 +0000 (23:28 +0400)]
[MIPS] Pb1550 code style cleanup
Fix a few errors and warnings given by checkpatch.pl:
- macros with complex values not enclosed in parentheses;
- printk() without KERN_* facility level;
- unnecessary braces for single-statement block;
- using simple_strtol() where strict_strtol() could be used.
In addition to these changes, also do the following:
- replace numeric literals with the matching macros;
- properly indent the code and the array initializers;
- insert spaces between operator and its operands, also remove excess spaces
there;
- remove space after the type cast's closing parenthesis;
- insert missing space before closing brace in the array initializers;
- replace spaces after the macro name with tabs in the #define directives, also
sometimes insert space there for better looks;
- remove excess tabs after the macro name in the #define directives;
- fix typos/errors, capitalize acronyms, etc. in the comments;
- make the multi-line comment style consistent with the kernel style elsewhere
by adding empty first line;
- update MontaVista copyright;
- remove Pete Popov's old email address...
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Sergei Shtylyov [Wed, 30 Apr 2008 19:27:20 +0000 (23:27 +0400)]
[MIPS] Pb1500 code style cleanup
Fix several errors and warnings given by checkpatch.pl:
- use of C99 // comments;
- printk() without KERN_* facility level;
- unnecessary braces for single-statement block;
- using simple_strtol() where strict_strtol() could be used.
In addition to these changes, also do the following:
- replace numeric literals/expressions with the matching macros;
- insert spaces between operator and its operands;
- properly indent the code and the array initializers;
- remove useless #if dirctive from board_setup();
- remove needless parentheses;
- remove unneeded type casts;
- remove excess new lines;
- make hexadecimal literals all lower case;
- remove space after the type cast's closing parenthesis;
- insert missing space before closing brace in the array initializers;
- replace spaces after the macro name with tabs in the #define directives,
also sometimes insert space there for better looks;
- fix typos/errors, capitalize acronyms, etc. in the comments;
- update MontaVista copyright;
- remove Pete Popov's old email address...
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Sergei Shtylyov [Wed, 30 Apr 2008 19:26:28 +0000 (23:26 +0400)]
[MIPS] Pb1100 code style cleanup
Fix several errors and warnings given by checkpatch.pl:
- space between asterisk and variable name;
- use of C99 // comments;
- using simple_strtol() where strict_strtol() could be used.
In addition to these changes, also do the following:
- properly indent the code;
- remove space after the type cast's closing parenthesis;
- replace numeric literals/expressions with the matching macros;
- replace spaces after the macro name with tabs in the #define directives,
and sometimes insert spaces there;
- fix typos/errors, capitalize acronyms, etc. in the comments;
- make the multi-line comment style consistent with the kernel style
elsewhere by adding empty first line;
- update MontaVista copyright;
- remove Pete Popov's old email address...
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Sergei Shtylyov [Wed, 30 Apr 2008 19:25:55 +0000 (23:25 +0400)]
[MIPS] Pb1000 code style cleanup
Fix several errors and warnings given by checkpatch.pl:
- use of C99 // comments;
- brace not on the same line with condition in the 'switch' statement;
- printk() without KERN_* facility level;
- unnecessary braces for single-statement block;
- using simple_strtol() where strict_strtol() could be used.
In addition to these changes, also do the following:
- properly indent the 'switch' statement;
- remove needless parentheses;
- insert spaces between operator and its operands;
- replace numeric literals/expressions with the matching macros;
- remove useless #if dirctive from board_setup();
- remove unneeded numeric literal type casts;
- remove space after the type cast's closing parenthesis;
- replace spaces after the macro name with tabs in the #define directives, and
sometimes insert spaces there;
- remove excess new lines;
- fix typos/errors, capitalize acronyms, etc. in the comments;
- make the multi-line comment style consistent with the kernel style elsewhere
by adding empty first/last line;
- combine some comments;
- update MontaVista copyright;
- remove Pete Popov's old email address...
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Sergei Shtylyov [Wed, 30 Apr 2008 19:25:04 +0000 (23:25 +0400)]
[MIPS] DBAu1xx0 code style cleanup
Fix several errors and warnings given by checkpatch.pl:
- macros with complex values not enclosed in parentheses;
- leading spaces instead of tabs;
- printk() without KERN_* facility level;
- using simple_strtol() where strict_strtol() could be used;
- line over 80 characters.
In addition to these changes, also do the following:
- initialize variable instead of assigning value later where it makes sense;
- insert spaces between operator and its operands, also remove excess spaces
there;
- remove unneeded numeric literal type casts;
- remove needless parentheses;
- remove space after the type cast's closing parenthesis;
- insert missing space before closing brace in the array initializers;
- replace spaces after the macro name with tabs in the #define directives;
- remove excess tabs after the macro name in the #define directives;
- fix typos/errors, capitalize acronyms, etc. in the comments;
- make the multi-line comment style consistent with the kernel style elsewhere
by adding empty first/last line;
- update MontaVista copyright;
- remove Pete Popov's old email address...
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Sergei Shtylyov [Wed, 30 Apr 2008 19:23:27 +0000 (23:23 +0400)]
[MIPS] Alchemy PCI code style cleanup
Fix 15 errors and 4 warnings given by checkpatch.pl:
- space between the asterisk and variable name;
- space after opening and before closing parentheses;
- leading spaces instead of tabs;
- printk() without KERN_* facility level;
- unnecessary braces for single-statement block;
- line over 80 characters.
In addition to these changes, also do the following:
- combine the nested 'if' statements into one when possible;
- remove needless parentheses;
- add missing and remove excess spaces between operator and its operands;
- fix printk() format specifiers mismatching the argument types;
- put the function's result type and name/parameters on the same line;
- insert missing and remove excess new lines;
- properly indent multi-line expressions;
- make the multi-line comment style consistent with the kernel style elsewhere
by adding empty first line;
- fix typos, capitalize acronyms, etc. in the comments;
- update MontaVista copyright;
- remove Pete Popov's old email address...
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Sergei Shtylyov [Wed, 30 Apr 2008 19:18:41 +0000 (23:18 +0400)]
[MIPS] Alchemy common code style cleanup
Fix many errors and warnings given by checkpatch.pl:
- use of C99 // comments;
- missing space between the type and asterisk in a variable declaration;
- space between the asterisk and function/variable name;
- leading spaces instead of tabs;
- space after opening and before closing parentheses;
- initialization of a 'static' variable to 0;
- missing spaces around assignement/comparison operator;
- brace not on the same line with condition (or 'else') in the 'if'/'switch'
statement;
- missing space between 'if'/'for'/'while' and opening parenthesis;
- use of assignement in 'if' statement's condition;
- printk() without KERN_* facility level;
- EXPORT_SYMBOL() not following its function immediately;
- unnecessary braces for single-statement block;
- adding new 'typedef' (where including <linux/types.h> will do);
- use of 'extern' in the .c file (where it can be avoided by including header);
- line over 80 characters.
In addition to these changes, also do the following:
- insert missing space after opening brace and/or before closing brace in the
structure initializers;
- insert spaces between operator and its operands;
- put the function's result type and name/parameters on the same line;
- properly indent multi-line expressions;
- remove commented out code;
- remove useless initializers and code;
- remove needless parentheses;
- fix broken/excess indentation;
- add missing spaces between operator and its operands;
- insert missing and remove excess new lines;
- group 'else' and 'if' together where possible;
- make au1xxx_platform_init() 'static';
- regroup variable declarations in pm_do_freq() for prettier look;
- replace numeric literals with the matching macros;
- fix printk() format specifiers mismatching the argument types;
- make the multi-line comment style consistent with the kernel style elsewhere
by adding empty first line and/or adding space on their left side;
- make two-line comments that only have one line of text one-line;
- fix typos/errors, capitalize acronyms, etc. in the comments;
- fix/remove obsolete references in the comments;
- reformat some comments;
- add comment about the CPU:counter clock ratio to calc_clock();
- update MontaVista copyright;
- remove Pete Popov's and Steve Longerbeam's old email addresses...
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Sergei Shtylyov [Wed, 30 Apr 2008 19:18:35 +0000 (23:18 +0400)]
[MIPS] Alchemy common headers style cleanup
Fix several errors and warnings given by checkpatch.pl:
- space after opening and before closing parentheses;
- opening brace following 'struct' not on the same line;
- leading spaces instead of tabs;
- use of C99 // comments;
- macros with complex values not enclosed in parentheses;
- missing space between the type and asterisk in a variable declaration;
- space between asterisk and function name;
- including <asm/io.h> instead of <linux/io.h> and <asm/irq.h> instead of
<linux/irq.h>;
- use of '__inline__' instead of 'inline';
- space between function name and opening parenthesis;
- line over 80 characters.
In addition to these changes, also do the following:
- remove needless parentheses;
- insert spaces between operator and its operands;
- replace spaces after the macro name with tabs in the #define directives and
after the type in the structure field declarations;
- remove excess tabs after the macro name in the #define directives and in the
'extern' variable declarations;
- remove excess spaces between # and define for the SSI_*_MASK macros to align
with other such macros;
- put '||' operator on the same line with its first operand;
- properly indent multi-line function prototypes;
- make the multi-line comment style consistent with the kernel style elsewhere
by adding empty first line and/or adding space/asterisk on their left side;
- make two-line comments that only have one line of text one-line;
- convert the large multi-line comment in au1xxx_ide.h into several one-liners,
replace spaces with tabs there;
- fix typos/errors, capitalize acronyms, etc. in the comments;
- insert missing and remove excess new lines;
- update MontaVista copyright;
- remove Pete Popov's and Steve Longerbeam's old email addresses...
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 May 2008 14:28:53 +0000 (15:28 +0100)]
[MIPS] Add empty argument parenthesis to GCC_IMM_ASM
This is to clarify that GCC_IMM_ASM does not take an argument as the
context of the macro's invocation seems to imply.
As suggested by Maciej W. Rozycki (macro@linux-mips.org).
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Jeff Garzik [Fri, 18 Apr 2008 23:23:01 +0000 (19:23 -0400)]
[MIPS] msp_hwbutton.c: minor irq handler cleanups
- remove always-true test
- neaten request_irq() indentation
This change's main purpose is to prepare for the patchset in
jgarzik/misc-2.6.git#irq-remove, that explores removal of the
never-used 'irq' argument in each interrupt handler.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Adrian Bunk [Mon, 21 Apr 2008 08:51:37 +0000 (11:51 +0300)]
[MIPS] unexport __kmap_atomic_to_page
This patch removes the no longer used export of __kmap_atomic_to_page.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Fri, 18 Apr 2008 09:56:07 +0000 (10:56 +0100)]
[MIPS] Initialize max_pfn again.
This was dropped by
commit
a0d9e2d891e4cf54676c430da63bd4a17d1cdb80 (lmo)
commit
b6f1f0dea1469e0c956eb89399916d60dd2a3808 (ko)
Author: Franck Bui-Huu <vagabon.xyz@gmail.com>
Date: Fri Aug 11 17:51:48 2006 +0200
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Wed, 16 Apr 2008 18:55:26 +0000 (19:55 +0100)]
[MIPS] IRIX: Handle do_brk() error return correctly.
do_brk's return value was stored in an unsigned long variable before being
tested for less than zero making the test always fail. Also do_brk's
called irix_map_prda_page wasn't forwarding do_brk() success.
Bug checking the return value of do_brk() and initial fix for it found
by Roel Kluin <12o3l@tiscali.nl>.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Kevin D. Kissell [Wed, 16 Apr 2008 13:32:22 +0000 (15:32 +0200)]
[MIPS] MT: Functional fixes and a little reformatting of APRP support
Signed-off-by: Kevin D. Kissell <kevink@mips.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 17 Apr 2008 12:42:50 +0000 (13:42 +0100)]
[MIPS] Don't use max_pfn which is no longer initialized these days.
Still won't play nicely with esotheric configurations such as discontig
memory ...
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Roel Kluin [Wed, 16 Apr 2008 15:09:58 +0000 (17:09 +0200)]
[MIPS] ip27-timer: fix unsigned irq < 0
Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Acked-By: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Kevin D. Kissell [Wed, 16 Apr 2008 13:32:22 +0000 (15:32 +0200)]
[MIPS] Fixes necessary for non-SMP kernels and non-relocatable binaries
Signed-off-by: Kevin D. Kissell <kevink@mips.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Sergei Shtylyov [Sat, 5 Apr 2008 18:16:21 +0000 (22:16 +0400)]
[MIPS] Alchemy: SMBus resource fix
The Alchemy platform code registers the SMBus device using the virtual
address of its registers instead of the physical one -- fix this, taking
into account that actually the whole megabyte is decoded by any of the
programmable serial controllers (one of which is SMBus), and that all the
Alchemy peripherals are directly mappable into KSEG1 kernel space and
therefore ioremap() call would just boil down to CKSEG1ADDR() invocation.
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Linus Torvalds [Mon, 12 May 2008 00:09:41 +0000 (17:09 -0700)]
Linux 2.6.26-rc2
Linus Torvalds [Mon, 12 May 2008 00:09:24 +0000 (17:09 -0700)]
Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
i2c: Convert some more new-style drivers to use module aliasing
i2c: Match dummy devices by type
i2c-sibyte: Mark i2c_sibyte_add_bus() as static
i2c-sibyte: Correct a comment about frequency
i2c: Improve the functionality documentation
i2c: Improve smbus-protocol documentation
i2c-piix4: Blacklist two mainboards
i2c-piix4: Increase the intitial delay for the ServerWorks CSB5
i2c-mpc: Compare to NO_IRQ instead of zero
Linus Torvalds [Sun, 11 May 2008 23:04:48 +0000 (16:04 -0700)]
Add new 'cond_resched_bkl()' helper function
It acts exactly like a regular 'cond_resched()', but will not get
optimized away when CONFIG_PREEMPT is set.
Normal kernel code is already preemptable in the presense of
CONFIG_PREEMPT, so cond_resched() is optimized away (see commit
02b67cc3ba36bdba351d6c3a00593f4ec550d9d3 "sched: do not do
cond_resched() when CONFIG_PREEMPT").
But when wanting to conditionally reschedule while holding a lock, you
need to use "cond_sched_lock(lock)", and the new function is the BKL
equivalent of that.
Also make fs/locks.c use it.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Jean Delvare [Sun, 11 May 2008 18:37:06 +0000 (20:37 +0200)]
i2c: Convert some more new-style drivers to use module aliasing
Update 3 more new-style i2c drivers to use standard module aliasing
instead of the old driver_name/type driver matching scheme. These
video drivers aren't used yet so converting them is trivial.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Jean Delvare [Sun, 11 May 2008 18:37:06 +0000 (20:37 +0200)]
i2c: Match dummy devices by type
As the old driver_name/type matching scheme is going away soon, change
the dummy device mechanism to use the new matching scheme.
This has the downside that dummy i2c clients can no longer choose
their name, they'll all appear as "dummy" in sysfs and in log
messages. I don't think it is a problem in practice though, as there
is little reason to use these i2c clients to log messages.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Maciej W. Rozycki [Sun, 11 May 2008 18:37:05 +0000 (20:37 +0200)]
i2c-sibyte: Mark i2c_sibyte_add_bus() as static
The i2c_sibyte_add_bus() function is not called, nor meant to, from
outside, so mark it as static; fixing a sparse warning too.
Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Maciej W. Rozycki [Sun, 11 May 2008 18:37:05 +0000 (20:37 +0200)]
i2c-sibyte: Correct a comment about frequency
The frequency may have been once hardcoded to 100 kHz, but currently it is
passed as an argument to i2c_sibyte_add_bus(), so update the comment to
match code. While at it, reformat a nearby comment for consistency. No
functional changes.
Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Jean Delvare [Sun, 11 May 2008 18:37:05 +0000 (20:37 +0200)]
i2c: Improve the functionality documentation
Attempt to make the documentation about the I2C/SMBus functionality
checking API clearer.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
David Brownell [Sun, 11 May 2008 18:37:05 +0000 (20:37 +0200)]
i2c: Improve smbus-protocol documentation
Improve the smbus-protocol documentation file somewhat:
- Use the names of the SMBus protocol operations (from the 2.0
specification), not made-up-for-Linux names.
- Add the name of the call used to execute each operation ... and
point out that there are mismatches, where functions execute
different protocol operations than their names specify.
The most confusing examples are that "Read Byte" isn't executed by
i2c_smbus_read_byte(), and that "Write Byte" isn't executed by
i2c_smbus_write_byte(). When coding, that's not as bad as it may
seem; but that case would seem to be worth fixing.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Jean Delvare [Sun, 11 May 2008 18:37:05 +0000 (20:37 +0200)]
i2c-piix4: Blacklist two mainboards
We had a report that running sensors-detect on a Sapphire AM2RD790
motherbord killed the CPU. While the exact cause is still unknown,
I'd rather play it safe and prevent any access to the SMBus on that
machine by not letting the i2c-piix4 driver attach to the SMBus host
device on that machine. Also blacklist a similar board made by DFI.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
David Milburn [Sun, 11 May 2008 18:37:05 +0000 (20:37 +0200)]
i2c-piix4: Increase the intitial delay for the ServerWorks CSB5
Per the PIIX4 errata, there maybe a delay between setting the
start bit in the Smbus Host Controller Register and the transaction
actually starting. If the driver doesn't delay long enough, it
may appear that the transaction is complete when actually it
hasn't started, this may lead to bus collisions.
While 1 ms appears to be enough for most chips, the ServerWorks CSB5
wants 2 ms.
Signed-off-by: David Milburn <dmilburn@redhat.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Jon Smirl [Sun, 11 May 2008 18:37:04 +0000 (20:37 +0200)]
i2c-mpc: Compare to NO_IRQ instead of zero
Alter the mpc i2c driver to use the NO_IRQ symbol instead of the constant
zero when checking for valid interrupts. NO_IRQ=-1 on ppc and NO_IRQ=0 on
powerpc so the checks against zero are not correct.
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Bernhard Beck [Sun, 11 May 2008 16:23:13 +0000 (09:23 -0700)]
usb-serial: Add ThinkOptics WavIT
Add ThinkOptics WavIt to cp2101 device table
Signed-off-by: Bernhard Beck <kernel@goodcoffee.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Sun, 11 May 2008 16:55:48 +0000 (09:55 -0700)]
Merge git://git./linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
sparc: Fix debugger syscall restart interactions.
sparc: Fix ptrace() detach.
sparc32: Don't twiddle PT_DTRACE in exec.
sparc video: remove open boot prom code
Linus Torvalds [Sun, 11 May 2008 16:52:45 +0000 (09:52 -0700)]
Merge branch 'upstream-linus' of git://git./linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
[libata] revert new check-ready Status register logic
David S. Miller [Sun, 11 May 2008 09:07:19 +0000 (02:07 -0700)]
sparc: Fix debugger syscall restart interactions.
So, forever, we've had this ptrace_signal_deliver implementation
which tries to handle all of the nasties that can occur when the
debugger looks at a process about to take a signal. It's meant
to address all of these issues inside of the kernel so that the
debugger need not be mindful of such things.
Problem is, this doesn't work.
The idea was that we should do the syscall restart business first, so
that the debugger captures that state. Otherwise, if the debugger for
example saves the child's state, makes the child execute something
else, then restores the saved state, we won't handle the syscall
restart properly because we lose the "we're in a syscall" state.
The code here worked for most cases, but if the debugger actually
passes the signal through to the child unaltered, it's possible that
we would do a syscall restart when we shouldn't have.
In particular this breaks the case of debugging a process under a gdb
which is being debugged by yet another gdb. gdb uses sigsuspend
to wait for SIGCHLD of the inferior, but if gdb itself is being
debugged by a top-level gdb we get a ptrace_stop(). The top-level gdb
does a PTRACE_CONT with SIGCHLD to let the inferior gdb see the
signal. But ptrace_signal_deliver() assumed the debugger would cancel
out the signal and therefore did a syscall restart, because the return
error was ERESTARTNOHAND.
Fix this by simply making ptrace_signal_deliver() a nop, and providing
a way for the debugger to control system call restarting properly:
1) Report a "in syscall" software bit in regs->{tstate,psr}.
It is set early on in trap entry to a system call and is fully
visible to the debugger via ptrace() and regsets.
2) Test this bit right before doing a syscall restart. We have
to do a final recheck right after get_signal_to_deliver() in
case the debugger cleared the bit during ptrace_stop().
3) Clear the bit in trap return so we don't accidently try to set
that bit in the real register.
As a result we also get a ptrace_{is,clear}_syscall() for sparc32 just
like sparc64 has.
M68K has this same exact bug, and is now the only other user of the
ptrace_signal_deliver hook. It needs to be fixed in the same exact
way as sparc.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 11 May 2008 04:11:23 +0000 (21:11 -0700)]
sparc: Fix ptrace() detach.
Forever we had a PTRACE_SUNOS_DETACH which was unconditionally
recognized, regardless of the personality of the process.
Unfortunately, this value is what ended up in the GLIBC sys/ptrace.h
header file on sparc as PTRACE_DETACH and PT_DETACH.
So continue to recognize this old value. Luckily, it doesn't conflict
with anything we actually care about.
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Sun, 11 May 2008 04:14:05 +0000 (21:14 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm:
[ARM] 5033/1: Unbreak corgi_ssp by registering ssp drivers earlier.
[ARM] Orion: clean up addr-map.c after window setting code purge
[ARM] Orion: pass proper t_clk into mv643xx_eth
[ARM] Orion: use mv643xx_eth driver mbus window handling
[ARM] pxa: Fix RCSR handling
[ARM] lubbock: fix compilation
[ARM] 5032/1: Added cpufreq support for pxa27x CPU
[ARM] 5031/1: Indentation correction in cpu-pxa.c.
[ARM] 5028/1: pxafb: fix broken "backward compatibility way" in framebuffer
[ARM] 4882/2: Correction for S3C2410 clkout generation
[ARM] 5027/1: Fixed random memory corruption on pxa suspend cycle.
[ARM] 5024/1: Fix some minor clk issues in the MMCI PL18x driver
[ARM] 5023/1: Fix broken gpio interrupts on ep93xx
ns9xxx: fix sparse warning
ns9xxx: check for irq lockups
ns9xxx: fix handle_prio_irq to unmask irqs with lower priority
Linus Torvalds [Sun, 11 May 2008 04:10:48 +0000 (21:10 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/x86/linux-2.6-x86
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86:
x86: rdc: leds build/config fix
x86: sysfs cpu?/topology is empty in 2.6.25 (32-bit Intel system)
x86: revert commit
709f744 ("x86: bitops asm constraint fixes")
x86: restrict keyboard io ports reservation to make ipmi driver work
x86: fix fpu restore from sig return
x86: remove spew print out about bus to node mapping
x86: revert printk format warning change which is for linux-next
x86: cleanup PAT cpu validation
x86: geode: define geode_has_vsa2() even if CONFIG_MGEODE_LX is not set
x86: GEODE: cache results from geode_has_vsa2() and uninline
x86: revert geode config dependency
Linus Torvalds [Sun, 11 May 2008 03:58:02 +0000 (20:58 -0700)]
BKL: revert back to the old spinlock implementation
The generic semaphore rewrite had a huge performance regression on AIM7
(and potentially other BKL-heavy benchmarks) because the generic
semaphores had been rewritten to be simple to understand and fair. The
latter, in particular, turns a semaphore-based BKL implementation into a
mess of scheduling.
The attempt to fix the performance regression failed miserably (see the
previous commit
00b41ec2611dc98f87f30753ee00a53db648d662 'Revert
"semaphore: fix"'), and so for now the simple and sane approach is to
instead just go back to the old spinlock-based BKL implementation that
never had any issues like this.
This patch also has the advantage of being reported to fix the
regression completely according to Yanmin Zhang, unlike the semaphore
hack which still left a couple percentage point regression.
As a spinlock, the BKL obviously has the potential to be a latency
issue, but it's not really any different from any other spinlock in that
respect. We do want to get rid of the BKL asap, but that has been the
plan for several years.
These days, the biggest users are in the tty layer (open/release in
particular) and Alan holds out some hope:
"tty release is probably a few months away from getting cured - I'm
afraid it will almost certainly be the very last user of the BKL in
tty to get fixed as it depends on everything else being sanely locked."
so while we're not there yet, we do have a plan of action.
Tested-by: Yanmin Zhang <yanmin_zhang@linux.intel.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Matthew Wilcox <matthew@wil.cx>
Cc: Alexander Viro <viro@ftp.linux.org.uk>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Sun, 11 May 2008 03:43:22 +0000 (20:43 -0700)]
Revert "semaphore: fix"
This reverts commit
bf726eab3711cf192405d21688a4b21e07b6188a, as it has
been reported to cause a regression with processes stuck in __down(),
apparently because some missing wakeup.
Quoth Sven Wegener:
"I'm currently investigating a regression that has showed up with my
last git pull yesterday. Bisecting the commits showed bf726e
"semaphore: fix" to be the culprit, reverting it fixed the issue.
Symptoms: During heavy filesystem usage (e.g. a kernel compile) I get
several compiler processes in uninterruptible sleep, blocking all i/o
on the filesystem. System is an Intel Core 2 Quad running a 64bit
kernel and userspace. Filesystem is xfs on top of lvm. See below for
the output of sysrq-w."
See
http://lkml.org/lkml/2008/5/10/45
for full report.
In the meantime, we can just fix the BKL performance regression by
reverting back to the good old BKL spinlock implementation instead,
since any sleeping lock will generally perform badly, especially if it
tries to be fair.
Reported-by: Sven Wegener <sven.wegener@stealer.net>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Sun, 11 May 2008 02:52:43 +0000 (19:52 -0700)]
Make <asm-x86/spinlock.h> use ACCESS_ONCE()
..instead of cooking up its own uglier local version of it.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Sun, 11 May 2008 02:51:16 +0000 (19:51 -0700)]
Move ACCESS_ONCE() to <linux/compiler.h>
It actually makes much more sense there, and we do tend to need it for
non-RCU usage too. Moving it to <linux/compiler.h> will allow some
other cases that have open-coded the same logic to use the same helper
function that RCU has used.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Ingo Molnar [Thu, 1 May 2008 01:46:22 +0000 (03:46 +0200)]
x86: rdc: leds build/config fix
select NEW_LEDS for now until the Kconfig dependencies have been
fixed.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Vaidyanathan Srinivasan [Mon, 5 May 2008 13:52:15 +0000 (19:22 +0530)]
x86: sysfs cpu?/topology is empty in 2.6.25 (32-bit Intel system)
System topology on intel based system needs to be exported
for non-numa case as well.
All parts of asm-i386/topology.h has come under
#ifdef CONFIG_NUMA after the merge to asm-x86/topology.h
/sys/devices/system/cpu/cpu?/topology/* is populated based on
ENABLE_TOPO_DEFINES
The sysfs cpu topology is not being populated on my dual socket
dual core xeon 5160 processor based (x86 32 bit) system.
CONFIG_NUMA is not set in my case yet the topology is relevant
and useful.
irqbalance daemon application depends on topology to build the
cpus and package list and it fails on Fedora9 beta since the
sysfs topology was not being populated in the 2.6.25 kernel.
I am not sure if it was intentional to not define ENABLE_TOPO_DEFINES
for non-numa systems.
This fix has been tested on the above mentioned dual core, dual socket
system.
Signed-off-by: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: stable@kernel.org
Simon Holm Thøgersen [Mon, 5 May 2008 13:45:28 +0000 (15:45 +0200)]
x86: revert commit
709f744 ("x86: bitops asm constraint fixes")
709f744 causes my computer to freeze during the start up of X and my
login manger (GDM). It gets to the point where it has shown the default
X mouse cursor logo (a big X / cross) and does not respond to anything
from that point on.
This worked fine before
709f744, and it works fine with 
709f744
reverted on top of Linus' current tree (
f74d505). The revert had
conflicts, as far as I can tell due to white space changes. The diff I
ended up with is below.
It is 100% reproducible.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Helge Wagner [Tue, 29 Apr 2008 12:20:40 +0000 (14:20 +0200)]
x86: restrict keyboard io ports reservation to make ipmi driver work
On some of our (single board computer) boards (x86) we are using an
IPMI controller that uses I/O ports 0x62 and 0x66 for a KCS (keyboard
controller style) IPMI system interface.
Trying to load the openipmi driver fails, because the ports
(0x62/0x66) are reserved for keyboard. keyboard reserves the full
range 0x60-0x6F while it doesn't need to.
Reserve only ports 0x60 and 0x64 for the legacy PS/2 i8042 keyboad
controller instead of 0x60-0x6F to allow the openipmi driver to work.
[ tglx: added 64bit fixup ]
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Suresh Siddha [Wed, 7 May 2008 19:09:52 +0000 (12:09 -0700)]
x86: fix fpu restore from sig return
If the task never used fpu, initialize the fpu before restoring the FP
state from the signal handler context. This will allocate the fpu
state, if the task never needed it before.
Reported-and-bisected-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Tested-by: Eric Sesterhenn <snakebyte@gmx.de>
Cc: Frederik Deweerdt <deweerdt@free.fr>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Yinghai Lu [Sun, 4 May 2008 20:41:02 +0000 (13:41 -0700)]
x86: remove spew print out about bus to node mapping
Jeff Garzik pointed out that this printout is not needed.
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 8 May 2008 14:38:11 +0000 (16:38 +0200)]
x86: revert printk format warning change which is for linux-next
commit
62179849b40aded9e727cca5006627a1c4d6446e
x86: fix setup printk format warning
is for linux-next and not for .26
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
David S. Miller [Sat, 10 May 2008 07:31:28 +0000 (00:31 -0700)]
sparc32: Don't twiddle PT_DTRACE in exec.
That bit isn't used on this platform.
Signed-off-by: David S. Miller <davem@davemloft.net>
Russell King [Fri, 9 May 2008 22:24:09 +0000 (23:24 +0100)]
Merge branch 'for-rmk' of git://git./linux/kernel/git/nico/orion into fixes
Dmitry Baryshkov [Fri, 9 May 2008 07:56:54 +0000 (08:56 +0100)]
[ARM] 5033/1: Unbreak corgi_ssp by registering ssp drivers earlier.
A lot of stuff in spitz/akita/etc. depends on corgi_ssp to be initialised
early. However corgi_ssp initialisation fails, because at that time pxa*-ssp
devices don't have drivers. Move ssp earlier in the makefile so they are
registered before corgi-ssp.
Also move sleep/suspend and cpu-freq to more logical places
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Jeff Garzik [Fri, 9 May 2008 19:00:55 +0000 (15:00 -0400)]
[libata] revert new check-ready Status register logic
This behavior differs across multiple controllers, so we cannot use
common logic for all controllers.
Revert back to the basic common behavior, and specific drivers will
be updated from here to take into account the unusual Status return
values.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Linus Torvalds [Fri, 9 May 2008 17:34:00 +0000 (10:34 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/cooloney/blackfin-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (21 commits)
Blackfin Serial Driver: abstract away DLAB differences into header
Blackfin Serial Driver: macro away the IER differences between processors
[Blackfin] arch: remove useless IRQ_SW_INT defines
[Blackfin] arch: protect linux/usb/musb.h include until the driver gets mainlined
[Blackfin] arch: protect linux/usb/isp1362.h include until the driver gets mainlined
[Blackfin] arch: add EBIU supporting for BF54x EZKIT SMSC LAN911x/LAN921x families embedded ethernet driver
[Blackfin] arch: Set spi flash partition on bf527 as like bf548.
[Blackfin] arch: fix bug - Remove module will not free L1 memory used
[Blackfin] arch: fix wrong header name in comment
[Blackfin] arch: Fix BUG - spi flash on bf527 ezkit would fail at mount
[Blackfin] arch: add twi_lcd and twi_keypad i2c board info to bf527-ezkit
[Blackfin] arch: Add physmap partition for BF527-EZkit
[Blackfin] arch: fix gdb testing regression
[Blackfin] arch: disable single stepping when delivering a signal
[Blackfin] arch: Delete unused (copied from m68k) entries in asm-offsets.c.
[Blackfin] arch: In the double fault handler, set up the PT_RETI slot
[Blackfin] arch: Support for CPU_FREQ and NOHZ
[Blackfin] arch: Functional power management support: Add CPU and platform voltage scaling support
[Blackfin] arch: fix bug - breaking the atomic sections code.
[Blackfin] arch: Equalize include files: Add VR_CTL masks
...
Linus Torvalds [Fri, 9 May 2008 15:10:09 +0000 (08:10 -0700)]
Merge git://git./linux/kernel/git/sfrench/cifs-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
[CIFS] fix build warning
[CIFS] Fixed build warning in is_ip
[CIFS] cleanup cifsd completion
[CIFS] Remove over-indented code in find_unc().
[CIFS] fix typo
[CIFS] Remove duplicate call to mode_to_acl
[CIFS] convert usage of implicit booleans to bool
[CIFS] fixed compatibility issue with samba refferal request
[CIFS] Fix statfs formatting
[CIFS] Adds to dns_resolver checking if the server name is an IP addr and skipping upcall in this case.
[CIFS] Fix spelling mistake
[CIFS] Update cifs version number
Linus Torvalds [Fri, 9 May 2008 15:07:58 +0000 (08:07 -0700)]
Merge git://git./linux/kernel/git/lethal/sh-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (37 commits)
SH: catch negative denormal_subf1() retval in denormal_add()
sh: Fix DMAC base address for SH7709S
sh: update smc91x platform data for se7206.
sh: Stub in cpu_to_node() and friends for NUMA build.
sh: intc register modify fix
sh: no high level trigger on some sh3 cpus
sh: clean up sh7710 and sh7720 intc tables
sh: add interrupt ack code to sh3
sh: unify external irq pin code for sh3
sh-sci: avoid writing to nonexistent registers
sh-sci: sh7722 lacks scsptr registers
sh-sci: improve sh7722 support
sh: reset hardware from early printk
sh: drain and wait for early printk
sh: use sci_out() for early printk
sh: add memory resources to /proc/iomem
sh: add kernel bss resource
sh: fix sh7705 interrupt vector typo
sh: update smc91x platform data for se7722
sh: update smc91x platform data for MigoR
...
Linus Torvalds [Fri, 9 May 2008 15:07:21 +0000 (08:07 -0700)]
Merge git://git./linux/kernel/git/herbert/crypto-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
[CRYPTO] hmac: Avoid calling virt_to_page on key
Linus Torvalds [Fri, 9 May 2008 15:06:31 +0000 (08:06 -0700)]
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (23 commits)
[POWERPC] Remove leftover printk in isa-bridge.c
[POWERPC] Remove duplicate #include
[POWERPC] Initialize lockdep earlier
[POWERPC] Document when printk is useable
[POWERPC] Fix bogus paca->_current initialization
[POWERPC] Fix of_i2c include for module compilation
[POWERPC] Make default cputable entries reflect selected CPU family
[POWERPC] spufs: lockdep annotations for spufs_dir_close
[POWERPC] spufs: don't requeue victim contex in find_victim if it's not in spu_run
[POWERPC] 4xx: Fix PCI mem in sequoia DTS
[POWERPC] 4xx: Add endpoint support to 4xx PCIe driver
[POWERPC] 4xx: Fix problem with new TLB storage attibute fields on 440x6 core
[POWERPC] spufs: spu_create should send inotify IM_CREATE event
[POWERPC] spufs: handle faults while the context switch pending flag is set
[POWERPC] spufs: fix concurrent delivery of class 0 & 1 exceptions
[POWERPC] spufs: try to route SPU interrupts to local node
[POWERPC] spufs: set SPU_CONTEXT_SWITCH_PENDING before synchronising SPU irqs
[POWERPC] spufs: don't acquire state_mutex interruptible while performing callback
[POWERPC] spufs: update master runcntl with context lock held
[POWERPC] spufs: fix post-stopped update of MFC_CNTL register
...
Christoph Hellwig [Fri, 9 May 2008 12:44:02 +0000 (14:44 +0200)]
m32r: use generic sys_pipe
m32r can use the generic sys_pipe implementation.
The current sys_pipe implementation on m32r only differes from the
generic one by passing a lot of additional unused registers to sys_pipe.
Reviewed and tested by Hirokazu Takata.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Hirokazu Takata <takata@linux-m32r.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Christoph Hellwig [Fri, 9 May 2008 10:41:17 +0000 (12:41 +0200)]
cris: kill sys_pipe implementation
The cris implementation of sys_pipe only differs from the generic one
by taking the BKL before calling do_pipe which isn't not nessecary.
Just kill the cris implementation and use the generic one.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Fri, 9 May 2008 15:01:19 +0000 (08:01 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
sit: Add missing kfree_skb() on pskb_may_pull() failure.
tipc: Increase buffer header to support worst-case device
Rusty Russell [Fri, 9 May 2008 06:25:28 +0000 (16:25 +1000)]
module: don't ignore vermagic string if module doesn't have modversions
Linus found a logic bug: we ignore the version number in a module's
vermagic string if we have CONFIG_MODVERSIONS set, but modversions
also lets through a module with no __versions section for modprobe
--force (with tainting, but still).
We should only ignore the start of the vermagic string if the module
actually *has* crcs to check. Rather than (say) having an
entertaining hissy fit and creating a config option to work around the
buggy code.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Rusty Russell [Fri, 9 May 2008 06:24:21 +0000 (16:24 +1000)]
module: be more picky about allowing missing module versions
We allow missing __versions sections, because modprobe --force strips
it. It makes less sense to allow sections where there's no version
for a specific symbol the module uses, so disallow that.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Rusty Russell [Fri, 9 May 2008 06:23:17 +0000 (16:23 +1000)]
module: put modversions in vermagic
Don't allow a module built without versions altogether to be inserted
into a kernel which expects modversions.
modprobe --force will strip vermagic as well as modversions, so it
won't be effected, but this will make sure that a
non-CONFIG_MODVERSIONS module won't be accidentally inserted into a
CONFIG_MODVERSIONS kernel.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Lennert Buytenhek [Sat, 26 Apr 2008 18:48:11 +0000 (14:48 -0400)]
[ARM] Orion: clean up addr-map.c after window setting code purge
This patch cleans up Orion's addr-map.c a bit after all peripheral
window programming code has been moved out into the relevant drivers.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Reviewed-by: Tzachi Perelstein <tzachi@marvell.com>
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Lennert Buytenhek [Sat, 26 Apr 2008 18:48:11 +0000 (14:48 -0400)]
[ARM] Orion: pass proper t_clk into mv643xx_eth
Pass the Orion TCLK tick rate into the ethernet driver.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Lennert Buytenhek [Sat, 26 Apr 2008 18:48:11 +0000 (14:48 -0400)]
[ARM] Orion: use mv643xx_eth driver mbus window handling
Make the Orion 5x platform code use the mbus window handling code
that's in the mv643xx_eth driver, instead of programming the GigE
block's mbus window registers by hand.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Reviewed-by: Tzachi Perelstein <tzachi@marvell.com>
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Roel Kluin [Fri, 9 May 2008 11:05:10 +0000 (20:05 +0900)]
SH: catch negative denormal_subf1() retval in denormal_add()
'ix' is unsigned but denormal_subf1() may return a negative int.
Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Nate Case [Thu, 8 May 2008 16:41:17 +0000 (02:41 +1000)]
[POWERPC] Remove leftover printk in isa-bridge.c
This printk() appears twice in the same function. Only the latter one
in the inval_range: section appears to be legitimate.
Signed-off-by: Nate Case <ncase@xes-inc.com>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Huang Weiyi [Thu, 8 May 2008 13:34:29 +0000 (23:34 +1000)]
[POWERPC] Remove duplicate #include
Remove duplicate #include of <asm/prom.h> in
arch/powerpc/kernel/btext.c.
Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Benjamin Herrenschmidt [Wed, 7 May 2008 00:25:34 +0000 (10:25 +1000)]
[POWERPC] Initialize lockdep earlier
This moves lockdep_init() to before udbg_early_init() as the later
can call things that acquire spinlocks etc... This also makes printk
safer to use earlier.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Benjamin Herrenschmidt [Wed, 7 May 2008 00:00:56 +0000 (10:00 +1000)]
[POWERPC] Document when printk is useable
When debugging early boot problems, it's common to sprinkle printk's
all over the place. However, on 64-bit powerpc, this can lead to
memory corruption if done too early due to the PACA pointer and
lockdep core not being initialized.
This adds some comments to early_setup() that document when it is
safe to do so in order to save time for whoever has to debug that
stuff next.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Benjamin Herrenschmidt [Wed, 7 May 2008 00:00:55 +0000 (10:00 +1000)]
[POWERPC] Fix bogus paca->_current initialization
When doing lockdep, I had two patches to initialize paca->_current
early, one bogus, and one correct. Unfortunately both got merged
as the bad one ended up being part of the main lockdep patch by
mistake. This causes memory corruption at boot. This removes
the offending code.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Jochen Friedrich [Tue, 6 May 2008 18:40:01 +0000 (04:40 +1000)]
[POWERPC] Fix of_i2c include for module compilation
Remove #ifdef CONFIG_OF_I2C as this breaks module compilation.
Drivers using this header should depend on OF_I2C anyways, so
there's no need to make this conditional.
Signed-off-by: Jochen Friedrich <jochen@scram.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Benjamin Herrenschmidt [Mon, 5 May 2008 05:22:27 +0000 (15:22 +1000)]
[POWERPC] Make default cputable entries reflect selected CPU family
Changes the cputable so that various CPU families that have an exclusive
CONFIG_ option have a more sensible default entry to use if the specific
processor hasn't been identified.
This makes the kernel more generally useful when booted on an unknown
PVR for things like new 4xx variants.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Paul Mackerras [Fri, 9 May 2008 10:12:06 +0000 (20:12 +1000)]
Merge branch 'for-2.6.26' of /linux/kernel/git/jwboyer/powerpc-4xx into merge
Steve Glendinning [Tue, 6 May 2008 10:36:27 +0000 (11:36 +0100)]
sh: Fix DMAC base address for SH7709S
On SH7709S, DMAC can be found at 0xa4000020 (as with most of
the other sh3 cpu subtypes).
Split out definition of DMAC base address from definitions of
DMTE irqs.
Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
David S. Miller [Fri, 9 May 2008 06:40:26 +0000 (23:40 -0700)]
sit: Add missing kfree_skb() on pskb_may_pull() failure.
Noticed by Paul Marks <paul@pmarks.net>.
Signed-off-by: David S. Miller <davem@davemloft.net>
Paul Mundt [Fri, 9 May 2008 05:13:17 +0000 (14:13 +0900)]
sh: update smc91x platform data for se7206.
Follows the se7722 change.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Allan Stephens [Fri, 9 May 2008 04:38:24 +0000 (21:38 -0700)]
tipc: Increase buffer header to support worst-case device
This patch increases the headroom TIPC reserves in each sk_buff
to accommodate the largest possible link level device header.
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Robert Reif [Fri, 9 May 2008 04:37:30 +0000 (21:37 -0700)]
sparc video: remove open boot prom code
Replace remaining open boot prom code with of.
Boot tested on sparc32 and compile tested on sparc64.
Signed-off-by: Robert Reif <reif@earthlink.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Steve French [Fri, 9 May 2008 03:48:05 +0000 (03:48 +0000)]
[CIFS] fix build warning
Signed-off-by: Steve French <sfrench@us.ibm.com>
Linus Torvalds [Fri, 9 May 2008 02:03:26 +0000 (19:03 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (32 commits)
net: Added ASSERT_RTNL() to dev_open() and dev_close().
can: Fix can_send() handling on dev_queue_xmit() failures
netns: Fix arbitrary net_device-s corruptions on net_ns stop.
netfilter: Kconfig: default DCCP/SCTP conntrack support to the protocol config values
netfilter: nf_conntrack_sip: restrict RTP expect flushing on error to last request
macvlan: Fix memleak on device removal/crash on module removal
net/ipv4: correct RFC 1122 section reference in comment
tcp FRTO: SACK variant is errorneously used with NewReno
e1000e: don't return half-read eeprom on error
ucc_geth: Don't use RX clock as TX clock.
cxgb3: Use CAP_SYS_RAWIO for firmware
pcnet32: delete non NAPI code from driver.
fs_enet: Fix a memory leak in fs_enet_mdio_probe
[netdrvr] eexpress: IPv6 fails - multicast problems
3c59x: use netstats in net_device structure
3c980-TX needs EXTRA_PREAMBLE
fix warning in drivers/net/appletalk/cops.c
e1000e: Add support for BM PHYs on ICH9
uli526x: fix endianness issues in the setup frame
uli526x: initialize the hardware prior to requesting interrupts
...
Linus Torvalds [Fri, 9 May 2008 02:03:19 +0000 (19:03 -0700)]
Merge git://git./linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
sparc: Fix SA_ONSTACK signal handling.
Linus Torvalds [Fri, 9 May 2008 01:41:48 +0000 (18:41 -0700)]
Revert "PCI: remove default PCI expansion ROM memory allocation"
This reverts commit
9f8daccaa05c14e5643bdd4faf5aed9cc8e6f11e, which was
reported to break X startup (xf86-video-ati-6.8.0). See
http://bugs.freedesktop.org/show_bug.cgi?id=15523
for details.
Reported-by: Laurence Withers <l@lwithers.me.uk>
Cc: Gary Hade <garyhade@us.ibm.com>
Cc: Greg KH <greg@kroah.com>
Cc: Jan Beulich <jbeulich@novell.com>
Cc: "Jun'ichi Nomura" <j-nomura@ce.jp.nec.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Igor Mammedov [Thu, 8 May 2008 20:48:42 +0000 (20:48 +0000)]
[CIFS] Fixed build warning in is_ip
Signed-off-by: Igor Mammedov <niallain@gmail.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Linus Torvalds [Thu, 8 May 2008 18:31:07 +0000 (11:31 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/mingo/linux-2.6-sched-fixes
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-fixes:
sched: fix weight calculations
semaphore: fix
Linus Torvalds [Thu, 8 May 2008 17:58:45 +0000 (10:58 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/tiwai/sound-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
[ALSA] soc at91 minor bug fixes
[ALSA] soc - at91-pcm - Fix line wrapping
pcspkr: fix dependancies
Huang Weiyi [Thu, 8 May 2008 14:48:31 +0000 (22:48 +0800)]
Remove duplicated include in net/sunrpc/svc.c
<linux/sched.h> we included twice.
Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Huang Weiyi [Thu, 8 May 2008 14:36:27 +0000 (22:36 +0800)]
fs/proc/task_mmu.c: remove duplicated include files
Removed duplicated include files <linux/ptrace.h> and <linux/seq_file.h> in
fs/proc/task_mmu.c.
Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Ingo Molnar [Wed, 30 Apr 2008 07:48:07 +0000 (09:48 +0200)]
Fix drivers/media build for modular builds
Fix allmodconfig build bug introduced in latest -git by commit
7c91f0624a9 ("V4L/DVB(7767): Move tuners to common/tuners"):
LD kernel/built-in.o
LD drivers/built-in.o
ld: drivers/media/built-in.o: No such file: No such file or directory
which happens if all media drivers are modular:
http://redhat.com/~mingo/misc/config-Wed_Apr_30_09_24_48_CEST_2008.bad
In that case there's no obj-y rule connecting all the built-in.o files and
the link tree breaks.
The fix is to add a guaranteed obj-y rule for the core vmlinux to build.
(which results in an empty object file if all media drivers are modular)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Thu, 8 May 2008 17:50:34 +0000 (10:50 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/roland/infiniband
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
IB/ehca: Wait for async events to finish before destroying QP
IB/ipath: Fix SDMA error recovery in absence of link status change
IB/ipath: Need to always request and handle PIO avail interrupts
IB/ipath: Fix count of packets received by kernel
IB/ipath: Return the correct opcode for RDMA WRITE with immediate
IB/ipath: Fix bug that can leave sends disabled after freeze recovery
IB/ipath: Only increment SSN if WQE is put on send queue
IB/ipath: Only warn about prototype chip during init
RDMA/cxgb3: Fix severe limit on userspace memory registration size
RDMA/cxgb3: Don't add PBL memory to gen_pool in chunks
David Howells [Wed, 7 May 2008 14:31:54 +0000 (15:31 +0100)]
MN10300: Make cpu_relax() invoke barrier()
Make cpu_relax() invoke barrier() to be the same as other arches.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Thu, 8 May 2008 17:48:36 +0000 (10:48 -0700)]
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
* 'for-linus' of git://git.kernel.dk/linux-2.6-block:
Revert "relay: fix splice problem"
docbook: fix bio missing parameter
block: use unitialized_var() in bio_alloc_bioset()
block: avoid duplicate calls to get_part() in disk stat code
cfq-iosched: make io priorities inherit CPU scheduling class as well as nice
block: optimize generic_unplug_device()
block: get rid of likely/unlikely predictions in merge logic
vfs: splice remove_suid() cleanup
cfq-iosched: fix RCU race in the cfq io_context destructor handling
block: adjust tagging function queue bit locking
block: sysfs store function needs to grab queue_lock and use queue_flag_*()
Linus Torvalds [Thu, 8 May 2008 17:48:03 +0000 (10:48 -0700)]
Merge branch 'for_linus' of git://git./linux/kernel/git/jack/linux-udf-2.6
* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6:
udf: Fix memory corruption when fs mounted with noadinicb option
udf: Make udf exportable
udf: fs/udf/partition.c:udf_get_pblock() mustn't be inline
Linus Torvalds [Thu, 8 May 2008 17:47:39 +0000 (10:47 -0700)]
Merge branch 'for-linus' of git://git390.osdl.marist.edu/linux-2.6
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
[S390] guest page hinting light
[S390] tty3270: fix put_char fail/success conversion.
[S390] compat ptrace cleanup
[S390] s390mach compile warning
[S390] cio: Fix parsing mechanism for blacklisted devices.
[S390] cio: Remove cio_msg kernel parameter.
[S390] s390-kvm: leave sie context on work. Removes preemption requirement
[S390] s390: Optimize user and work TIF check
Andrew Morton [Wed, 7 May 2008 03:42:42 +0000 (20:42 -0700)]
drivers/scsi/dpt_i2o.c: fix build on alpha
alpha:
drivers/scsi/dpt_i2o.c:1997: error: implicit declaration of function 'adpt_alpha_info'
drivers/scsi/dpt_i2o.c: At top level:
drivers/scsi/dpt_i2o.c:2032: warning: conflicting types for 'adpt_alpha_info'
drivers/scsi/dpt_i2o.c:2032: error: static declaration of 'adpt_alpha_info' follows non-static declaration
drivers/scsi/dpt_i2o.c:1997: error: previous implicit declaration of 'adpt_alpha_info' was here
Due to a copy-n-paste error in drivers/scsi/dpti.h.
Fix that up and remove some of the many daft static-declarations-in-a-header
which this driver enjoys.
Cc: Miquel van Smoorenburg <miquels@cistron.nl>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Paul Menage [Wed, 7 May 2008 03:42:41 +0000 (20:42 -0700)]
Fix cpuset sched_relax_domain_level control file
Due to a merge conflict, the sched_relax_domain_level control file was marked
as being handled by cpuset_read/write_u64, but the code to handle it was
actually in cpuset_common_file_read/write.
Since the value being written/read is in fact a signed integer, it should be
treated as such; this patch adds cpuset_read/write_s64 functions, and uses
them to handle the sched_relax_domain_level file.
With this patch, the sched_relax_domain_level can be read and written, and the
correct contents seen/updated.
Signed-off-by: Paul Menage <menage@google.com>
Cc: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Cc: Paul Jackson <pj@sgi.com>
Cc: Ingo Molnar <mingo@elte.hu>
Reviewed-by: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Benjamin Herrenschmidt [Wed, 7 May 2008 03:42:39 +0000 (20:42 -0700)]
slub: fix atomic usage in any_slab_objects()
any_slab_objects() does an atomic_read on an atomic_long_t, this
fixes it to use atomic_long_read instead.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Christoph Lameter <clameter@sgi.com>
Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Ulrich Drepper [Wed, 7 May 2008 03:42:38 +0000 (20:42 -0700)]
sys_pipe(): fix file descriptor leaks
Remember to close the files if copy_to_user() failed.
Spotted by dm.n9107@gmail.com.
Signed-off-by: Ulrich Drepper <drepper@redhat.com>
Cc: DM <dm.n9107@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Samuel Thibault [Wed, 7 May 2008 03:42:37 +0000 (20:42 -0700)]
vt: fix canonical input in UTF-8 mode
For e.g. proper TTY canonical support, IUTF8 termios flag has to be set as
appropriate. Linux used to not care about setting that flag for VT TTYs.
This patch fixes that by activating it according to the current mode of the
VT, and sets the default value according to the vt.default_utf8 parameter.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Cc: Willy Tarreau <w@1wt.eu>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>