Andi Kleen [Mon, 16 Jun 2003 03:10:50 +0000 (20:10 -0700)]
[PATCH] x86-64 merge
Lots of small fixes and I merged the PCI subsystem with i386 again
because it was mostly identical. This makes the patch quite big,
but it only removes files.
- Merge PCI subsystem with i386.
This changes the initialization order of PCI and IOMMU slightly. It
didn't see any problems yet, but it could cause some in theory. It
re-adds some code that used to be removed, but it's only small stuff
and it should hopefully cause less mainteance overhead longer term.
- Fix warnings
- Merge cpuid.c with i386.c
- Sync msr.c with i386
- Consolidate externs in asm/proto.h
- sysfs/sysdev fixes for apic/nmi (Bryan O'Sullivan)
- Fix /proc/kcore access
- Add real kern_addr_valid (used for above).
- Support consistent dma_mask in IOMMU
- Fix double print of AMD for CPU model.
- Remove unused wakeup.S file.
- Remove obsolete CONFIG_SIMNOW ifdef.
- Support ptrace access for 32bit vsyscalls.
- Fix warnings in 32bit boot code compilation.
Alexey Kuznetsov [Sun, 15 Jun 2003 22:24:45 +0000 (15:24 -0700)]
[IPV4]: More sane rtcache behavior.
1) More reasonable ip_rt_gc_min_interval default
2) Trim less valuable entries in hash chain during
rt_intern_hash when such chains grow too long.
Rusty Russell [Sun, 15 Jun 2003 20:18:10 +0000 (13:18 -0700)]
[PATCH] clean up overzealous deprecated warning
1) We export __check_region, so making it __deprecated gives a spurious
warning in kernel/ksyms.c.
2) Other warnings refer to __check_region rather than check_region,
which has confused some people.
Make check_region an inline, not a macro, and deprecate *that*.
Greg Ungerer [Sun, 15 Jun 2003 20:18:03 +0000 (13:18 -0700)]
[PATCH] ColdFire serial driver fixups
A number of small ColdFire serial driver fixups:
- use correct irq handler return type (irqreturn_t)
- add support for mark and space parity
- some casting to keep types clean (and remove compile warnings)
- fix missing ";" after local tty_driver struct definition
Matthew Dharm [Sun, 15 Jun 2003 14:10:59 +0000 (07:10 -0700)]
[PATCH] unusual_devs fixups
This moves the initialization of the struct scsi_device fields
use_10_for_ms and use_10_for_rw into a central place. This allows the
host's slave_configure() function to change them (with effect). This
also collapses two identical sections of code into a single one.
This is needed by usb-storage, so we can resolve some Babble problems,
some device-crashing problems, and remove a great deal of troublesome
mode-sense-translation code.
Russell King [Sun, 15 Jun 2003 18:59:55 +0000 (19:59 +0100)]
[PCMCIA] Prevent class_device related oops.
Although no such oops has been reported, removing a socket driver
while a file under /sysfs/class/pcmcia_socket/pcmcia_socket* is
held open by user space could potentially cause an oops.
Plug this by preventing pcmcia_unregister_socket from returning
until all references by sysfs to the pcmcia socket have been dropped.
Daniel Ritz [Sun, 15 Jun 2003 17:33:47 +0000 (18:33 +0100)]
[PCMCIA] fix yenta unload oops
Patch from Daniel Ritz
rmmod yenta produces the following oops:
Unable to handle kernel paging request at virtual address d084781e
EIP is at yenta_config_init+0x18f/0x1e0 [yenta]
Process pccardd (pid: 2618, threadinfo=c3236000 task=c988ae60)
Roman Zippel [Sun, 15 Jun 2003 12:21:48 +0000 (05:21 -0700)]
[PATCH] Clean up kernel parameter array declaration
Declare the parameter array as an array, rather than a single entry.
This doesn't matter for code generation, but may be less likely to cause
problems down the line, since we're telling gcc more about the real
situation.
Andi Kleen [Sun, 15 Jun 2003 12:21:41 +0000 (05:21 -0700)]
[PATCH] Fix over-alignment problem on x86-64
Thanks to Jan Hubicka who suggested this fix.
The problem seems to be that gcc generates a 32byte alignment for static
objects > 32bytes. This causes gas to set a high alignment on the
section, which causes the uneven (not multiple of sizeof(struct
kernel_param)) section size. The pointer division with a base not being
a multiple of sizeof(*ptr) then causes the invalid result.
This just forces a small alignment, which makes the section end come out
with the correct alignment.
The only mystery left is why ld chose a 16 byte padding instead of
32byte.
Stelian Pop [Sun, 15 Jun 2003 02:54:57 +0000 (19:54 -0700)]
[PATCH] meye driver update
* replace the pci_alloc_consistent calls with dma_alloc_coherent
because we want to do the allocations at GFP_KERNEL priority and
not GFP_ATOMIC because we request quite a bit of memory and the
allocation fails quite frequently.
It would be better to have a pci_alloc_consistent with an extra
parameter (priority) but since we haven't, and the meye driver is
supposed to work only on ix86 platforms we can safely do the
change.
* fix the DMA engine stop request. The hard freezes encountered
when using this driver and repeatedly opening/closing the device
have been tracked down to this particular piece of code. The new
version seems to work way better, I haven't had a single freeze
since the change.
* fix the irq handler prototype (irqreturn_t changes).
Stelian Pop [Sun, 15 Jun 2003 02:54:50 +0000 (19:54 -0700)]
[PATCH] sonypi driver update
* fix a hang problem when loading the driver on (at least) a
PCG-FX105k. Thanks to Jozef Kruger for reporting the problem
and testing different versions of this fix.
* fix a .text.exit problem in the sonypi driver related to the
recent PM changes (thanks to Adrian Bunk for the patch).
* fix the irq handling reports (make sonypi always report IRQ_HANDLED)
because there *are* events belonging to the sonypi device which
are not (yet) recognized by the driver and we don't want those
to pollute the logs...
* test if the ACPI subsystem is not disabled before trying to
use its ec_read/ec_write methods.
* fix the hangs when enabling bluetooth (thanks to Daniel K. for
the patch).
Trond Myklebust [Sun, 15 Jun 2003 02:32:35 +0000 (19:32 -0700)]
[PATCH] Fix rpc dentry list usage
This fixes the problems with NFS that got triggered by the list
poisoning.
The problem is that whereas using the dentry->d_hash list for private
purposes was previously harmless, it is not allowed with the RCU lists,
because we depend on the unhashed node continuing to point back to the
original list.
So keep a small vector of dentries around instead of using the d_hash
list to keep track of them.
This patch changes network devices to run hotplug out of the
kobject/class_device infrastructure rather than calling it
from the network code. The code gets simpler and there is
only one place for Greg to fix when he changes the API.
All hotplug now happens off the chain:
rtnl_unlock -> netdev_run_todo -> netdev_sysfs_{un}register
The state flag deadbeef was converted to a state enumeration tp
handle necessary book keeping, and adds some defense against
drivers that have unexpected semantics.
Andrew Morton [Sat, 14 Jun 2003 14:22:09 +0000 (07:22 -0700)]
[PATCH] dm: Repair persistent minors
From: Joe Thornber <thornber@sistina.com>
Split the dm_create() function into two variants, depending on whether you
want the device to have a specific minor number. This avoids the broken
overloading of the minor argument to the old dm_create().
Andrew Morton [Sat, 14 Jun 2003 14:22:02 +0000 (07:22 -0700)]
[PATCH] tmpfs: revert license to 2.4 version
From: Hugh Dickins <hugh@veritas.com>, Christoph Rohland <cr@sap.com>
Switches the long GPL blurb which Hugh took from the 2.4-ac version of
mm/shmem.c, back to the original oneliner (as in 2.4.current).
Christoph spotted that the long blurb says "either version 2 of the License,
or (at your option) any later version", whereas he intended it be as COPYING
says, version 2 period. Hugh and Christoph are happier with known version 2
than undefined future variants.
Andrew Morton [Sat, 14 Jun 2003 14:21:54 +0000 (07:21 -0700)]
[PATCH] remove anon_hash_chain
From: James Morris <jmorris@intercode.com.au>
This patch against current bk removes anon_hash_chain from fs/inode.c, as
all inodes in the 2.5 kernel must be associated with a superblock, and the
anon hash is no longer needed.
(akpm: Well there's one inode with a null i_sb: swapper_inode. But it
shouldn't get here and if it does, we'll fix it by other means).