Linus Torvalds [Sun, 4 Mar 2007 21:16:49 +0000 (13:16 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
[VLAN]: Avoid a 4-order allocation.
[HDLC] Fix dev->header_cache_update having a random value.
[NetLabel]: Verify sensitivity level has a valid CIPSO mapping
[PPPOE]: Key connections properly on local device.
[AF_UNIX]: Test against sk_max_ack_backlog properly.
[NET]: Fix bugs in "Whether sock accept queue is full" checking
Linus Torvalds [Sun, 4 Mar 2007 21:15:48 +0000 (13:15 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm: (30 commits)
[ARM] Acorn: move the i2c bus driver into drivers/i2c
[ARM] ARM SCSI: Don't try to dma_map_sg too many scatterlist entries
[ARM] ARM FAS216: don't modify scsi_cmnd request_bufflen
[ARM] rtc-pcf8583: Final fixes for this RTC on RiscPC
[ARM] rtc-pcf8583: correct month and year offsets
[ARM] rtc-pcf8583: don't use BCD_TO_BIN/BIN_TO_BCD
[ARM] EBSA110: Work around build errors
[ARM] 4241/1: Define mb() as compiler barrier on a uniprocessor system
[ARM] 4239/1: S3C24XX: Update kconfig entries for PM
[ARM] 4238/1: S3C24XX: docs: update suspend and resume
[ARM] 4237/2: oprofile: Always allow backtraces on ARM
[ARM] Yet more asm/apm-emulation.h stuff
ARM: OMAP: Add missing get_irqnr_preamble and arch_ret_to_user for omap2
ARM: OMAP: Use linux/delay.h not asm/delay.h
ARM: OMAP: Remove obsolete alsa typedefs
ARM: OMAP: omap1510->15xx conversions needed for sx1
ARM: OMAP: Add missing includes to board-nokia770
ARM: OMAP: Workqueue changes for board-h4.c
ARM: OMAP: dmtimer.c omap1 register fix
ARM: OMAP: board-nokia770: correct lcd name
...
Linus Torvalds [Sun, 4 Mar 2007 21:15:00 +0000 (13:15 -0800)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
[MIPS] MTX1: clear PCI errors
[MIPS] MTX1: add idsel cardbus ressources
[MIPS] MTX1: remove unneeded settings
[MIPS] dma_sync_sg_for_cpu is a no-op except for non-coherent R10000s.
[MIPS] Cobalt: update reserved resources
[MIPS] SN: PCI fixup needs to include <irq.h>.
[MIPS] DMA: Fix a bunch of warnings due to missing inline keywords.
[MIPS] RM: It should be #ifdef CONFIG_FOO not #if CONFIG_FOO ...
[MIPS] Fix and cleanup the mess that a dozen prom_printf variants are.
[MIPS] DEC: Remove redeclarations of mips_machgroup and mips_machtype.
[MIPS] No need to write c0_compare in plat_timer_setup
[MIPS] Convert to RTC-class ds1742 driver
[MIPS] Oprofile: Add missing break statements.
[MIPS] jmr3927: build fix
[MIPS] SNI: Fix mc146818_decode_year
[MIPS] Replace sys32_timer_create with the generic compat_sys_timer_create.
[MIPS] Replace sys32_socketcall with the generic compat_sys_socketcall.
[MIPS] N32 waitid is the same as o32.
Russell King [Sun, 4 Mar 2007 20:40:50 +0000 (20:40 +0000)]
[ARM] Acorn: move the i2c bus driver into drivers/i2c
Move the Acorn IOC/IOMD I2C bus driver from drivers/i2c, strip
out the reminants of the platform specific parts of the old
PCF8583 RTC code, and remove the old obsolete PCF8583 driver.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sun, 4 Mar 2007 20:21:38 +0000 (20:21 +0000)]
[ARM] ARM SCSI: Don't try to dma_map_sg too many scatterlist entries
An off-by-one bug meant we were always trying to map one too many
scatterlist entries. This was mostly harmless prior to the checks
going in to consistent_sync(), but now causes the kernel to BUG.
Also, powertec.c was missing an assignment to info->ec.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sun, 4 Mar 2007 20:19:07 +0000 (20:19 +0000)]
[ARM] ARM FAS216: don't modify scsi_cmnd request_bufflen
SCSI doesn't want drivers to modify request_bufflen, so keep a
driver-private copy of this in the scsi_pointer structure instead.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sun, 4 Mar 2007 20:33:07 +0000 (20:33 +0000)]
[ARM] rtc-pcf8583: Final fixes for this RTC on RiscPC
Replace the I2C bus address, as per drivers/acorn/char/pcf8583.c.
Also, since this driver also contains Acorn RiscPC specific code
for obtaining the current year from the SRAM (and updating the
platform specific checksum when writing new data back) this is
NOT a platform independent driver.
Document it as such, and update the dependencies to reflect this
fact.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sun, 4 Mar 2007 20:13:13 +0000 (20:13 +0000)]
[ARM] rtc-pcf8583: correct month and year offsets
No, today is not 4th April 3907, it's 4th March 2007.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sun, 4 Mar 2007 20:12:07 +0000 (20:12 +0000)]
[ARM] rtc-pcf8583: don't use BCD_TO_BIN/BIN_TO_BCD
Both BCD_TO_BIN(x) and BIN_TO_BCD(x) have an unexpected side-effect -
not only do they return the value as expected, they _modify_ their
argument in the process.
Let's play it safe and avoid these macros.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Florian Fainelli [Fri, 2 Mar 2007 21:08:01 +0000 (22:08 +0100)]
[MIPS] MTX1: clear PCI errors
This patch clears PCI errors after showing more debug informations.
Signed-off-by: Florian Fainelli <florian.fainelli@int-evry.fr>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Florian Fainelli [Fri, 2 Mar 2007 21:07:48 +0000 (22:07 +0100)]
[MIPS] MTX1: add idsel cardbus ressources
Adds cardbus ressources for MTX1 boards which have a PCMCIA controller.
Signed-off-by: Florian Fainelli <florian.fainelli@int-evry.fr>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Florian Fainelli [Fri, 2 Mar 2007 21:07:41 +0000 (22:07 +0100)]
[MIPS] MTX1: remove unneeded settings
This patch removes unnecessary settings at setup time.
Signed-off-by: Florian Fainelli <florian.fainelli@int-evry.fr>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Fri, 2 Mar 2007 11:42:11 +0000 (11:42 +0000)]
[MIPS] dma_sync_sg_for_cpu is a no-op except for non-coherent R10000s.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Yoichi Yuasa [Thu, 1 Mar 2007 13:50:25 +0000 (22:50 +0900)]
[MIPS] Cobalt: update reserved resources
This patch has removed unused timer resource.
Moreover, the name of reserved resources ware changed.
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Mar 2007 15:35:54 +0000 (15:35 +0000)]
[MIPS] SN: PCI fixup needs to include <irq.h>.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Mar 2007 15:30:01 +0000 (15:30 +0000)]
[MIPS] DMA: Fix a bunch of warnings due to missing inline keywords.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Mar 2007 15:29:25 +0000 (15:29 +0000)]
[MIPS] RM: It should be #ifdef CONFIG_FOO not #if CONFIG_FOO ...
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Mar 2007 11:56:43 +0000 (11:56 +0000)]
[MIPS] Fix and cleanup the mess that a dozen prom_printf variants are.
early_printk is a so much saner thing.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 1 Mar 2007 10:47:23 +0000 (10:47 +0000)]
[MIPS] DEC: Remove redeclarations of mips_machgroup and mips_machtype.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Wed, 28 Feb 2007 16:53:13 +0000 (01:53 +0900)]
[MIPS] No need to write c0_compare in plat_timer_setup
If R4k counter was used for hpt_timer and interrupt source,
c0_hpt_timer_init() initializes the c0_compare register.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Wed, 28 Feb 2007 15:40:21 +0000 (00:40 +0900)]
[MIPS] Convert to RTC-class ds1742 driver
The generic rtc-ds1742 driver can be used for RBTX4927 and JMR3927
(with __swizzle_addr trick). This patch also removes MIPS local
DS1742 stuff.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Wed, 28 Feb 2007 15:34:22 +0000 (15:34 +0000)]
[MIPS] Oprofile: Add missing break statements.
This was causing oprofile to fail on R10000, R12000, R14000.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Tue, 27 Feb 2007 16:42:19 +0000 (01:42 +0900)]
[MIPS] jmr3927: build fix
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Thomas Bogendoerfer [Sat, 3 Feb 2007 13:06:10 +0000 (14:06 +0100)]
[MIPS] SNI: Fix mc146818_decode_year
Big endian RMs uses a different mc146818_decode_year than little endian RMs
Correct mc146818_decode_year for years before 2000
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Tue, 27 Feb 2007 01:21:17 +0000 (01:21 +0000)]
[MIPS] Replace sys32_timer_create with the generic compat_sys_timer_create.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Tue, 27 Feb 2007 01:11:28 +0000 (01:11 +0000)]
[MIPS] Replace sys32_socketcall with the generic compat_sys_socketcall.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Tue, 27 Feb 2007 00:56:37 +0000 (00:56 +0000)]
[MIPS] N32 waitid is the same as o32.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Andrew Morton [Thu, 1 Mar 2007 09:28:13 +0000 (11:28 +0200)]
KVM: Move kvmfs magic number to <linux/magic.h>
Use the standard magic.h for kvmfs.
Cc: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Mon, 26 Feb 2007 14:29:43 +0000 (16:29 +0200)]
KVM: Fix bogus failure in kvm.ko module initialization
A bogus 'return r' can cause an otherwise successful module load to fail.
This both denies users the use of kvm, and it also denies them the use of
their machine, as it leaves a filesystem registered with its callbacks
pointing into now-freed module memory.
Fix by returning a zero like a good module.
Thanks to Richard Lucassen <mailinglists@lucassen.org> (?) for reporting
the problem and for providing access to a machine which exhibited it.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Uri Lublin [Thu, 22 Feb 2007 15:37:32 +0000 (17:37 +0200)]
KVM: Remove write access permissions when dirty-page-logging is enabled
Enabling dirty page logging is done using KVM_SET_MEMORY_REGION ioctl.
If the memory region already exists, we need to remove write accesses,
so writes will be caught, and dirty pages will be logged.
Signed-off-by: Uri Lublin <uril@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Uri Lublin [Thu, 22 Feb 2007 15:15:33 +0000 (17:15 +0200)]
kvm: move do_remove_write_access() up
To be called from kvm_vm_ioctl_set_memory_region()
Signed-off-by: Uri Lublin <uril@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Uri Lublin [Thu, 22 Feb 2007 14:43:09 +0000 (16:43 +0200)]
KVM: Fix dirty page log bitmap size/access calculation
Since dirty_bitmap is an unsigned long array, the alignment and size need
to take that into account.
Signed-off-by: Uri Lublin <uril@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Uri Lublin [Wed, 21 Feb 2007 16:25:21 +0000 (18:25 +0200)]
KVM: Add missing calls to mark_page_dirty()
A few places where we modify guest memory fail to call mark_page_dirty(),
causing live migration to fail. This adds the missing calls.
Signed-off-by: Uri Lublin <uril@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Wed, 21 Feb 2007 17:47:40 +0000 (19:47 +0200)]
KVM: Bump API version
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Wed, 21 Feb 2007 16:04:26 +0000 (18:04 +0200)]
KVM: Per-vcpu inodes
Allocate a distinct inode for every vcpu in a VM. This has the following
benefits:
- the filp cachelines are no longer bounced when f_count is incremented on
every ioctl()
- the API and internal code are distinctly clearer; for example, on the
KVM_GET_REGS ioctl, there is no need to copy the vcpu number from
userspace and then copy the registers back; the vcpu identity is derived
from the fd used to make the call
Right now the performance benefits are completely theoretical since (a) we
don't support more than one vcpu per VM and (b) virtualization hardware
inefficiencies completely everwhelm any cacheline bouncing effects. But
both of these will change, and we need to prepare the API today.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Tue, 20 Feb 2007 16:41:05 +0000 (18:41 +0200)]
KVM: Move kvm_vm_ioctl_create_vcpu() around
In preparation of some hacking.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Tue, 20 Feb 2007 16:27:58 +0000 (18:27 +0200)]
KVM: Rename some kvm_dev_ioctl_*() functions to kvm_vm_ioctl_*()
This reflects the changed scope, from device-wide to single vm (previously
every device open created a virtual machine).
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Wed, 21 Feb 2007 17:28:04 +0000 (19:28 +0200)]
KVM: Create an inode per virtual machine
This avoids having filp->f_op and the corresponding inode->i_fop different,
which is a little unorthodox.
The ioctl list is split into two: global kvm ioctls and per-vm ioctls. A new
ioctl, KVM_CREATE_VM, is used to create VMs and return the VM fd.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Tue, 20 Feb 2007 12:07:37 +0000 (14:07 +0200)]
KVM: Add internal filesystem for generating inodes
The kvmfs inodes will represent virtual machines and vcpus, as necessary,
reducing cacheline bouncing due to inodes and filps being shared.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Mon, 19 Feb 2007 12:37:48 +0000 (14:37 +0200)]
KVM: More 0 -> NULL conversions
Signed-off-by: Avi Kivity <avi@qumranet.com>
Joerg Roedel [Mon, 19 Feb 2007 12:37:47 +0000 (14:37 +0200)]
KVM: SVM: intercept SMI to handle it at host level
This patch changes the SVM code to intercept SMIs and handle it
outside the guest.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Mon, 19 Feb 2007 12:37:47 +0000 (14:37 +0200)]
KVM: svm: init cr0 with the wp bit set
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Mon, 19 Feb 2007 12:37:47 +0000 (14:37 +0200)]
KVM: Wire up hypercall handlers to a central arch-independent location
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Mon, 19 Feb 2007 12:37:47 +0000 (14:37 +0200)]
KVM: Add hypercall host support for svm
Signed-off-by: Avi Kivity <avi@qumranet.com>
Ingo Molnar [Mon, 19 Feb 2007 12:37:47 +0000 (14:37 +0200)]
KVM: Add host hypercall support for vmx
Signed-off-by: Avi Kivity <avi@qumranet.com>
Ingo Molnar [Mon, 19 Feb 2007 12:37:47 +0000 (14:37 +0200)]
KVM: add MSR based hypercall API
This adds a special MSR based hypercall API to KVM. This is to be
used by paravirtual kernels and virtual drivers.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Markus Rechberger [Mon, 19 Feb 2007 12:37:47 +0000 (14:37 +0200)]
KVM: Use page_private()/set_page_private() apis
Besides using an established api, this allows using kvm in older kernels.
Signed-off-by: Markus Rechberger <markus.rechberger@amd.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Ahmed S. Darwish [Mon, 19 Feb 2007 12:37:46 +0000 (14:37 +0200)]
KVM: Use ARRAY_SIZE macro instead of manual calculation.
Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
Signed-off-by: Dor Laor <dor.laor@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Joerg Roedel [Mon, 19 Feb 2007 12:37:46 +0000 (14:37 +0200)]
KVM: vmx: hack set_cr0_no_modeswitch() to actually do modeswitch
The whole thing is rotten, but this allows vmx to boot with the guest reboot
fix.
Signed-off-by: Markus Rechberger <markus.rechberger@amd.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Mon, 19 Feb 2007 12:37:46 +0000 (14:37 +0200)]
KVM: Cosmetics
Signed-off-by: Avi Kivity <avi@qumranet.com>
Jeremy Katz [Mon, 19 Feb 2007 12:37:46 +0000 (14:37 +0200)]
KVM: Move virtualization deactivation from CPU_DEAD state to CPU_DOWN_PREPARE
This gives it more chances of surviving suspend.
Signed-off-by: Jeremy Katz <katzj@redhat.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Avi Kivity [Mon, 19 Feb 2007 12:37:46 +0000 (14:37 +0200)]
KVM: mmu: add missing dirty page tracking cases
We fail to mark a page dirty in three cases:
- setting the accessed bit in a pte
- setting the dirty bit in a pte
- emulating a write into a pagetable
This fix adds the missing cases.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Russell King [Sat, 3 Mar 2007 11:54:19 +0000 (11:54 +0000)]
[ARM] EBSA110: Work around build errors
Work around EBSA110 build errors by selecting NO_IOPORT. EBSA110
can't support an IO port to MMIO mapping mechanism because the
MMIO and IO port spaces have quite different and complex addressing
requirements.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Dan Aloni [Sat, 3 Mar 2007 04:44:51 +0000 (20:44 -0800)]
[VLAN]: Avoid a 4-order allocation.
This patch splits the vlan_group struct into a multi-allocated struct. On
x86_64, the size of the original struct is a little more than 32KB, causing
a 4-order allocation, which is prune to problems caused by buddy-system
external fragmentation conditions.
I couldn't just use vmalloc() because vfree() cannot be called in the
softirq context of the RCU callback.
Signed-off-by: Dan Aloni <da-x@monatomic.org>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Krzysztof Halasa [Fri, 2 Mar 2007 23:52:22 +0000 (15:52 -0800)]
[HDLC] Fix dev->header_cache_update having a random value.
Switching HDLC devices from Ethernet-framing mode caused stale ethernet
function assignments within net_device.
Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Paul Moore [Fri, 2 Mar 2007 21:19:02 +0000 (13:19 -0800)]
[NetLabel]: Verify sensitivity level has a valid CIPSO mapping
The current CIPSO engine has a problem where it does not verify that
the given sensitivity level has a valid CIPSO mapping when the "std"
CIPSO DOI type is used. The end result is that bad packets are sent
on the wire which should have never been sent in the first place.
This patch corrects this problem by verifying the sensitivity level
mapping similar to what is done with the category mapping. This patch
also changes the returned error code in this case to -EPERM to better
match what the category mapping verification code returns.
Signed-off-by: Paul Moore <paul.moore@hp.com>
Acked-by: James Morris <jmorris@namei.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Florian Zumbiehl [Fri, 2 Mar 2007 21:16:56 +0000 (13:16 -0800)]
[PPPOE]: Key connections properly on local device.
It is based on the assumption that an interface's ifindex is basically
an alias for a local MAC address, so incoming packets now are matched
to sockets based on remote MAC, session id, and ifindex of the
interface the packet came in on/the socket was bound to by connect().
For relayed packets, the socket that's used for relaying is selected
based on destination MAC, session ID and the interface index of the
interface whose name currently matches the name requested by userspace
as the relaying source interface.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Fri, 2 Mar 2007 20:49:23 +0000 (12:49 -0800)]
[AF_UNIX]: Test against sk_max_ack_backlog properly.
This brings things inline with the sk_acceptq_is_full() bug
fix. The limit test should be x >= sk_max_ack_backlog.
Signed-off-by: David S. Miller <davem@davemloft.net>
Wei Dong [Fri, 2 Mar 2007 20:37:26 +0000 (12:37 -0800)]
[NET]: Fix bugs in "Whether sock accept queue is full" checking
when I use linux TCP socket, and find there is a bug in function
sk_acceptq_is_full().
When a new SYN comes, TCP module first checks its validation. If valid,
send SYN,ACK to the client and add the sock to the syn hash table. Next
time if received the valid ACK for SYN,ACK from the client. server will
accept this connection and increase the sk->sk_ack_backlog -- which is
done in function tcp_check_req().We check wether acceptq is full in
function tcp_v4_syn_recv_sock().
Consider an example:
After listen(sockfd, 1) system call, sk->sk_max_ack_backlog is set to
1. As we know, sk->sk_ack_backlog is initialized to 0. Assuming accept()
system call is not invoked now.
1. 1st connection comes. invoke sk_acceptq_is_full(). sk-
>sk_ack_backlog=0 sk->sk_max_ack_backlog=1, function return 0 accept
this connection. Increase the sk->sk_ack_backlog
2. 2nd connection comes. invoke sk_acceptq_is_full(). sk-
>sk_ack_backlog=1 sk->sk_max_ack_backlog=1, function return 0 accept
this connection. Increase the sk->sk_ack_backlog
3. 3rd connection comes. invoke sk_acceptq_is_full(). sk-
>sk_ack_backlog=2 sk->sk_max_ack_backlog=1, function return 1. Refuse
this connection.
I think it has bugs. after listen system call. sk->sk_max_ack_backlog=1
but now it can accept 2 connections.
Signed-off-by: Wei Dong <weid@np.css.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Sat, 3 Mar 2007 01:58:52 +0000 (17:58 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
libata: add CONFIG_PM to libata core layer
libata: add missing CONFIG_PM in LLDs
libata: add missing PM callbacks
pata_qdi: Fix initialisation
[libata] pata_cmd64x: fix driver description in comments
[libata] pata_{legacy,sc1200,sl82c105}: add missing hooks
[libata] change master/slave IDENTIFY order
libata-core: Fix simplex handling
Jeff Garzik [Sat, 3 Mar 2007 01:21:56 +0000 (20:21 -0500)]
[netdrvr] tulip, de2104x: fix typo: s/__sparc_/__sparc__/
Noticed by Doug Nazar (via David Miller).
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Dale Farnsworth [Thu, 1 Mar 2007 23:31:48 +0000 (16:31 -0700)]
mv643xx_eth: move mac_addr inside mv643xx_eth_platform_data
The information contained within platform_data should be self-contained.
Replace the pointer to a MAC address with the actual MAC address in
struct mv643xx_eth_platform_data.
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Dave Jones [Wed, 28 Feb 2007 20:41:39 +0000 (15:41 -0500)]
Fix mv643xx_eth compilation.
Commit
908b637fe793165b6aecdc875cdca67c4959a1ad removed ETH_DMA_ALIGN
but missed a usage of it in a macro, which broke the build.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Ron Mercer [Thu, 1 Mar 2007 00:42:17 +0000 (16:42 -0800)]
qla3xxx: bugfix for line omitted in previous patch.
This missing line caused transmit errors on the Qlogic 4032 chip.
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Linsys Contractor Mithlesh Thukral [Wed, 28 Feb 2007 13:16:40 +0000 (05:16 -0800)]
NetXen: Fix second rmmod failure observed on PowerPC machines.
Signed-off by: Mithlesh Thukral <mithlesh@netxen.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Linsys Contractor Mithlesh Thukral [Wed, 28 Feb 2007 13:14:07 +0000 (05:14 -0800)]
NetXen: Updates, removal of unsupported features and minor bug fixes.
Signed-off-by: Mithlesh Thukral <mithlesh@netxen.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Divy Le Ray [Wed, 28 Feb 2007 03:28:14 +0000 (19:28 -0800)]
cxgb3 - Tag driver version
This patch adds a "-ko" tag to the driver version.
Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Brice Goglin [Tue, 27 Feb 2007 16:18:40 +0000 (17:18 +0100)]
myri10ge: fix copyright and license
Fix copyright and license ("regents" should not have ever been used).
Signed-off-by: Brice Goglin <brice@myri.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Ralf Baechle [Tue, 27 Feb 2007 18:15:01 +0000 (18:15 +0000)]
jmr3927: do not call tc35815_killall().
No need to stop tc35815 before resetting the board. This fixes the
build of tc35815 as a module. This also means there is no caller of
tc35815_killall left, so remove that function also.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Sat, 3 Mar 2007 00:40:24 +0000 (19:40 -0500)]
Merge branch 'upstream-fixes' of git://git./linux/kernel/git/linville/wireless-2.6 into upstream-fixes
Tejun Heo [Fri, 2 Mar 2007 08:32:47 +0000 (17:32 +0900)]
libata: add CONFIG_PM to libata core layer
Conditionalize all PM related stuff in libata core layer using
CONFIG_PM.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tejun Heo [Fri, 2 Mar 2007 08:31:26 +0000 (17:31 +0900)]
libata: add missing CONFIG_PM in LLDs
Add missing #ifdef CONFIG_PM conditionals around all PM related parts
in libata LLDs.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tejun Heo [Fri, 2 Mar 2007 08:30:01 +0000 (17:30 +0900)]
libata: add missing PM callbacks
Some LLDs were missing scsi device PM callbacks while having host/port
suspend support. Add missing ones.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
David S. Miller [Fri, 2 Mar 2007 02:30:08 +0000 (18:30 -0800)]
[AOE]: Add get_unaligned() calls where needed.
Based upon a report by Andrew Walrond.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Fri, 2 Mar 2007 02:29:14 +0000 (18:29 -0800)]
[RADEON]: Fix blanking return value.
If you'll recall, over a year ago, I pointed out that the current
Radeon driver erroneously returns -EINVAL for valid blanking codes,
here is a link to that thread:
http://lkml.org/lkml/2006/1/28/6
No other driver does this, and it confuses the X server into thinking
that the device does not support blanking properly.
I looked again and there is simply no reason for the Radeon driver to
return -EINVAL for FB_BLANK_NORMAL. It claims it wants to do this in
order to convince fbcon to blank in software, right here:
if (fb_blank(info, blank))
fbcon_generic_blank(vc, info, blank);
to software blank the screen. But it only causes that to happen
in the FB_BLANK_NORMAL case.
That makes no sense because the Radeon code does this:
val |= CRTC_DISPLAY_DIS;
in the FB_BLANK_NORMAL case so should be blanking the hardware, and
there is therefore no reason to SW blank by returning -EINVAL.
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Antonino Daplas <adaplas@gmail.com>
David S. Miller [Fri, 2 Mar 2007 02:10:25 +0000 (18:10 -0800)]
[SPARC]: Provide 'get_property()' alias for of_get_property().
Another powerpc compatibility item, this will allow us to share
more code with them.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Fri, 2 Mar 2007 02:09:18 +0000 (18:09 -0800)]
[SPARC]: Provide pci_device_to_OF_node() just like powerpc.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Fri, 2 Mar 2007 02:08:05 +0000 (18:08 -0800)]
[SPARC]: Handle unresolvable resources better in of_device.c
Just leave them as zero if we couldn't calculate it.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Thu, 1 Mar 2007 07:20:12 +0000 (23:20 -0800)]
[SPARC]: Fix bus handling in build_device_resources().
We mistakedly modify 'bus' in the innermost loop. What
should happen is that at each register index iteration,
we start with the same 'bus'.
So preserve it's value at the top level, and use a loop
local variable 'dbus' for iteration.
This bug causes registers other than the first to be
decoded improperly.
Signed-off-by: David S. Miller <davem@davemloft.net>
Alan Cox [Fri, 2 Mar 2007 14:56:35 +0000 (14:56 +0000)]
pata_qdi: Fix initialisation
The QDI init code contains some bugs which mean it only works if you have
a test setup that causes both a successful and failed probe. Fix this
Found by Philip Guo
(Who found it working on code analysis tools not running VLB IDE
controllers)
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Fri, 2 Mar 2007 23:17:22 +0000 (18:17 -0500)]
[libata] pata_cmd64x: fix driver description in comments
Trivial comment fix, taken out of a larger Alan Cox patch.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Fri, 2 Mar 2007 23:09:05 +0000 (18:09 -0500)]
[libata] pata_{legacy,sc1200,sl82c105}: add missing hooks
Alan Cox noticed several hooks in pata_* drivers were missing, when
he authored his ->cable_detect hook patches. This patch extracts
just those fixes from Alan's patches, adding the necessary hooks
(usually ->freeze, ->thaw, and ->post_internal_cmd) to the drivers.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Fri, 2 Mar 2007 22:47:28 +0000 (17:47 -0500)]
[libata] change master/slave IDENTIFY order
2.6.21-rc has horrible problems with libata and PATA cable types (and
thus speeds). This occurs because Tejun fixed a pile of other bugs and
we now do cable detect enforcement for drive side detection properly.
Unfortunately we don't do the process around cable detection right. Tejun
identified the problem and pointed to the right Annex in the spec, this patch
implements the needed changes.
The basic requirement is that we have to identify the slave before the
master.
The patch switches the identify order so that we can do the drive side
detection correctly.
[NOTE: patch and description extracted from a larger work written
and signed-off-by Alan Cox]
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Alan [Thu, 1 Mar 2007 17:36:46 +0000 (17:36 +0000)]
libata-core: Fix simplex handling
The initial simplex handling code is fooled if you suspend and resume.
This also causes problems with some single channel controllers which
claim to be simplex.
The fix is fairly simple, instead of keeping a flag to remember if we
gave away the simplex channel we remember the actual owner. As the owner
is always part of the host_set we don't even need a refcount.
Knowing the owner also means we can reassign simplex DMA channels in
future hotplug code etc if we need to
Signed-off-by: Alan Cox <alan@redhat.com>
(and a signed-off for the patch I sent before while I remember)
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Russell King [Fri, 2 Mar 2007 11:59:16 +0000 (11:59 +0000)]
Merge branch 'omap-fixes' of /linux/kernel/git/tmlind/linux-omap-2.6
Catalin Marinas [Wed, 28 Feb 2007 11:30:38 +0000 (12:30 +0100)]
[ARM] 4241/1: Define mb() as compiler barrier on a uniprocessor system
Currently, the mb() is defined as a DMB operation on ARMv6, even for
UP systems. This patch defines mb() as a compiler barrier only. For
the SMP case, the smp_* variants should be used anyway and the patch
defines them as DMB.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Tue, 27 Feb 2007 23:23:20 +0000 (00:23 +0100)]
[ARM] 4239/1: S3C24XX: Update kconfig entries for PM
Update help text with location of documentation
and duplicate the note on the speed of CRC
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Tue, 27 Feb 2007 23:16:26 +0000 (00:16 +0100)]
[ARM] 4238/1: S3C24XX: docs: update suspend and resume
Remove some of the explicit use of S3C2410 where
it is generic to all the S3C24XX series. Add more
info on the CRC code, and add an example of using
IRQ_EINT0 to resume from suspend
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Richard Purdie [Tue, 27 Feb 2007 11:09:33 +0000 (12:09 +0100)]
[ARM] 4237/2: oprofile: Always allow backtraces on ARM
Always allow backtrace when using oprofile on ARM, even if a PMU
isn't present.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Tue, 27 Feb 2007 12:10:07 +0000 (12:10 +0000)]
[ARM] Yet more asm/apm-emulation.h stuff
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Tony Lindgren [Thu, 1 Mar 2007 12:46:43 +0000 (04:46 -0800)]
ARM: OMAP: Add missing get_irqnr_preamble and arch_ret_to_user for omap2
Only entries for omap1 were added earlier.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 12 Feb 2007 18:50:53 +0000 (10:50 -0800)]
ARM: OMAP: Use linux/delay.h not asm/delay.h
Use linux/delay.h not asm/delay.h
Signed-off-by: Tony Lindgren <tony@atomide.com>
Tony Lindgren [Mon, 12 Feb 2007 18:16:43 +0000 (10:16 -0800)]
ARM: OMAP: Remove obsolete alsa typedefs
Remove obsolete alsa typedefs
Signed-off-by: Tony Lindgren <tony@atomide.com>
Vladimir Ananiev [Mon, 11 Dec 2006 21:30:21 +0000 (13:30 -0800)]
ARM: OMAP: omap1510->15xx conversions needed for sx1
Convert 1510->15xx in generic omap code, so that sx1 can work.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Dirk Behme [Fri, 26 Jan 2007 00:29:42 +0000 (16:29 -0800)]
ARM: OMAP: Add missing includes to board-nokia770
Add missing includes to board-nokia770 to make it
compile again.
Signed-off-by: Dirk Behme <dirk.behme_at_gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Dirk Behme [Fri, 26 Jan 2007 00:29:17 +0000 (16:29 -0800)]
ARM: OMAP: Workqueue changes for board-h4.c
Workqueue changes for board-h4.c
Signed-off-by: Dirk Behme <dirk.behme_at_gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Matthew Percival [Fri, 26 Jan 2007 00:24:29 +0000 (16:24 -0800)]
ARM: OMAP: dmtimer.c omap1 register fix
When I went to use dmtimer7 it did not seem to work. I noticed that
the base addresses for dmtimers 7 and 8 were set wrong. A simple patch
to correct a small error. Confirmed to fix the problem on an OSK.
Signed-off-by: Matthew Percival <matthew@capgo.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Arnaud Patard [Thu, 7 Dec 2006 01:14:06 +0000 (17:14 -0800)]
ARM: OMAP: board-nokia770: correct lcd name
Some time ago, the 'lcd_lph8923' device was renamed to 'lcd_mipid' but
the board-nokia770.c file was not updated accordingly, leading to not
working lcd.
This one-liner fixe the trouble.
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
David Brownell [Thu, 7 Dec 2006 01:14:04 +0000 (17:14 -0800)]
ARM: OMAP: omap GP timer: HZ != 100
Teach OMAP2 gp timer that HZ isn't always 100.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Dirk Behme [Thu, 7 Dec 2006 01:14:04 +0000 (17:14 -0800)]
ARM: OMAP: Fix warning in mach-omap1
Fix warning
arch/arm/mach-omap1/pm.c: In function 'omap_pm_init':
arch/arm/mach-omap1/pm.c:765: warning: ignoring return value
of 'subsys_create_file', declared with attribute
warn_unused_result
Signed-off-by: Dirk Behme <dirk.behme_at_gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>