Andrew Morton [Mon, 23 Feb 2004 12:45:25 +0000 (04:45 -0800)]
[PATCH] ppc64: Fix __get_SP()
From: Anton Blanchard <anton@samba.org>
__get_SP used to be a function call which meant we allocated a stack
frame before calling it. This meant the SP it returned was one frame
below the current function. Lets call that bogusSP (and the real one
SP).
The new dump_stack was being tail call optimised so it remained one
frame above bogusSP. dump_stack would then store below SP (as the ABI
allows us to) and would stomp over the back link that bogusSP pointed
to (__get_SP had set the back link up so it worked sometimes, just not
all the time).
Fix this by just making __get_SP an inline that returns the current SP.
Andrew Morton [Mon, 23 Feb 2004 12:43:38 +0000 (04:43 -0800)]
[PATCH] ppc64 cpu spinup fixes
From: Rusty Russell <rusty@rustcorp.com.au>
1) Check for cpuids >= NR_CPUS in prom_hold_cpus: we previously
overflowed arrays when this happened, and checking it here ensures
that it doesn't happen elsewhere. Still move processors to
secondary_hold (out of OF), but we won't release them.
2) smp_iSeries_message_pass and smp_xics_message_pass don't need to
iterate if given a specific CPU: cleanup and fix.
3) kick_cpu variants don't need to check cpu range (caller is screwed
anyway if this happened): replaced with BUG_ON for now.
4) smp_openpic_probe and smp_xics_probe can use cpus_weight(): it's
faster and simpler.
5) User for_each_cpu/for_each_online_cpu as appropriate.
Andrew Morton [Mon, 23 Feb 2004 12:41:50 +0000 (04:41 -0800)]
[PATCH] ppc64: add log_rtas_error()
From: Nathan Fontenot <nfont@austin.ibm.com>
Add log_rtas_error(), to be called in the event that a rtas call
returns a hardware error (-1) so we can log additional information
about the hardware error.
Andrew Morton [Mon, 23 Feb 2004 12:40:59 +0000 (04:40 -0800)]
[PATCH] ppc64: cleanup lmb code
From: Anton Blanchard <anton@samba.org>
- remove LMB_MEMORY_AREA, LMB_IO_AREA, we only allocate/reserve memory
areas now
- remove lmb_property->type, lmb_region->iosize, lmb_region->lcd_size,
no longer used
- bump number of regions to 128, we'll hit this limit sooner or later
with our big boxes (if we have more than 64 PCI host bridges the
reserved array will fill up for example)
- make all the lmb stuff __init
- no need to explicitly zero struct lmb lmb now we zero the BSS early
- we had two functions to dump the lmb array, kill one of them
- move the inline functions into lmb.c, they are only ever called from
there
Alexander Viro [Mon, 23 Feb 2004 08:16:36 +0000 (00:16 -0800)]
[PATCH] removal of bogus CONFIG_BINFMT_ELF uses
We never use CONFIG_BINFTM_ELF and CONFIG_BINFMT_ELF_MODULE
anywhere in the source (they are used in makefiles, obviously).
32bit-emulation binfmt_elf_... in arch/* still define those guys
even though it hadn't been needed for years.
Junk removed.
PS: BTW, CONFIG_BINFMT_ELF32 _is_ used in several places in arch/mips and it
looks like they really want
#if defined(CONFIG_BINFMT_ELF32) || defined(CONFIG_BINFMT_ELF32_MODULE)
in these ifdefs, but that's a separate story...
Nathan Scott [Mon, 23 Feb 2004 08:16:26 +0000 (00:16 -0800)]
[PATCH] blkdev_open/bd_claim vs BLKBSZSET
I was modifying mkfs.xfs to use O_EXCL for 2.6, and hit a snag.
It seems that once I've opened a block dev with O_EXCL I can no
longer issue the BLKBSZSET ioctl to it.
Making this change, the ioctl succeeds cos the original filp bdev owner
from open now matches with the owner in the ioctl call.
David S. Miller [Mon, 23 Feb 2004 06:09:29 +0000 (22:09 -0800)]
[NET]: Set default socket rmem/wmem values more sanely and consistently.
1) Take into account the fact that struct sk_buff, which counts towards
socket buffer limits, changes across different platforms.
2) Give ipv4/ipv6 ICMP sockets more accurately the wmem limits they
want.
Andrew Morton [Sun, 22 Feb 2004 15:07:34 +0000 (07:07 -0800)]
[PATCH] Fix fs/partitions/efi.c printk warnings
Lots of these:
fs/partitions/efi.c:387: warning: long unsigned int format, u64 arg (arg 2)
fs/partitions/efi.c:387: warning: long unsigned int format, u64 arg (arg 3)
fs/partitions/efi.c:387: warning: long unsigned int format, u64 arg (arg 2)
fs/partitions/efi.c:387: warning: long unsigned int format, u64 arg (arg 3)
fs/partitions/efi.c:395: warning: long unsigned int format, u64 arg (arg 2)
fs/partitions/efi.c:395: warning: long unsigned int format, u64 arg (arg 3)
because it is assuming that you can print a u64 with %ld on 64-bit machines.
Andrew Morton [Sun, 22 Feb 2004 15:07:24 +0000 (07:07 -0800)]
[PATCH] Fix ISDN v.110.
From: David Woodhouse <dwmw2@infradead.org>
Now that we coalesce ACKs for outgoing packets, the v.110 code needs to
look at the size it's given rather than assuming it'll get precisely one
callback for each packet sent...
Andrew Morton [Sun, 22 Feb 2004 15:06:42 +0000 (07:06 -0800)]
[PATCH] security oops fix
From: Stephen Smalley <sds@epoch.ncsc.mil>
Looking at d_splice_alias, it appears that the security_d_instantiate call
in the first case (where it ends up moving an entry in place of the given
dentry) should be passing 'new' rather than 'dentry' to ensure that the
passed dentry is associated with the inode. This patch should fix the
problem.
Andrew Morton [Sun, 22 Feb 2004 15:06:20 +0000 (07:06 -0800)]
[PATCH] Another x86-64 fix for problems from the recent merge
From: Andi Kleen <ak@suse.de>,
From Suresh.B.Siddha
Fix another bug caused by the recent IA32e merge. The full L1 cache size
padding of the GDT didn't work with smaller cache line sizes. Just revert
that.
I must admit I still don't understand why it didn't work, but it's better
to have a working system for now.
Andrew Morton [Sun, 22 Feb 2004 15:05:27 +0000 (07:05 -0800)]
[PATCH] nbd: remove PARANOIA and other cleanups
From: Paul Clements <Paul.Clements@SteelEye.com>
This patch removes the PARANOIA define (it was always defined anyway). It
also removes the requests_in/out counters (which weren't always accurate,
and are superfluous anyway, since the block layer keeps its own in_flight
counter). Also some minor cleanup of comments.
Andrew Morton [Sun, 22 Feb 2004 15:05:05 +0000 (07:05 -0800)]
[PATCH] Kconfig help: dm-crypto && cryptoloop
From: bert hubert <ahu@ds9a.nl>
Current bitkeeper features a cryptoloop which is not safe for journaled
file systems and also a Device Mapper target which is. The patch below
updates Kconfig to that effect.
Andrew Morton [Sun, 22 Feb 2004 15:03:18 +0000 (07:03 -0800)]
[PATCH] m68k: M68k configuration
From: Geert Uytterhoeven <geert@linux-m68k.org>
Update M68k configuration logic:
- Introduce CONFIG_MMU_MOTOROLA and CONFIG_MMU_SUN3
- Move Sun-3 config selection to the top since all other platforms conflict
with it
- Sun-3 implies MMU_SUN3
- All other platforms imply MMU_MOTOROLA
- Sun-3 implies M68020
- Sun-3x implies M68030
- Sun-3 kernels cannot support 68030, 68040, or 68060
Andrew Morton [Sun, 22 Feb 2004 15:02:58 +0000 (07:02 -0800)]
[PATCH] m68k: M68k uses drivers/Kconfig
From: Geert Uytterhoeven <geert@linux-m68k.org>
M68k: Use drivers/Kconfig and fix up some remaining dependencies:
- M68k no longer uses rtc.c
- M68k never has AGP
- CONFIG_ZORRO depends on CONFIG_AMIGS
Andrew Morton [Sun, 22 Feb 2004 15:00:49 +0000 (07:00 -0800)]
[PATCH] Intel i830 AGP fix
From: Terence Ripperda <tripperda@nvidia.com>
When coming out of standby, some chipsets lose their configuration in pci
config space. this includes not just the agp master register being lost, but
chipset-specific information, such as the physical address of the gatt table
and other settings. Calling this configure routine again restores those
settings.
Dave said he was adding chipsets to this list on an "as needed and tested"
basis. I ran across this problem I believe on a Dell Inspiron 4100 with
nv11. (there had been some similar problems with specific nv11 systems when
doing apm with the 2.4 kernel, I suspect, but haven't been able to verify,
it's the same problem).
Andrew Morton [Sun, 22 Feb 2004 15:00:39 +0000 (07:00 -0800)]
[PATCH] more serial driver fixups
From: Russell King <rmk@arm.linux.org.uk>
Here is a patch which updates various serial drivers in the kernel to make
them less broken than they were before. Nevertheless, they are still
broken.
The improvement is to make these drivers use the tiocmget/tiocmset methods,
which are present in the 2.6 kernel.
Many of these have been incorrectly converted from the old global IRQ
locking without regard for SMP issues, or still use the old global IRQ
locking methods which are no longer present in 2.6 kernels.