Li Zefan [Wed, 29 Oct 2008 21:00:52 +0000 (14:00 -0700)]
freezer_cg: remove redundant check in freezer_can_attach()
It is sufficient to check if @task is frozen, and no need to check if the
original freezer is frozen.
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Acked-by: Cedric Le Goater <clg@fr.ibm.com>
Acked-by: Matt Helsley <matthltc@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Li Zefan [Wed, 29 Oct 2008 21:00:51 +0000 (14:00 -0700)]
freezer_cg: fix improper BUG_ON() causing oops
The BUG_ON() should be protected by freezer->lock, otherwise it can be
triggered easily when a task has been unfreezed but the corresponding
cgroup hasn't been changed to FROZEN state.
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Acked-by: Cedric Le Goater <clg@fr.ibm.com>
Acked-by: Matt Helsley <matthltc@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Hitoshi Mitake [Wed, 29 Oct 2008 21:00:50 +0000 (14:00 -0700)]
edac x38: new MC driver module
I wrote a new module for Intel X38 chipset. This chipset is very similar
to Intel 3200 chipset, but there are some different points, so I copyed
i3200_edac.c and modified.
This is Intel's web page describing this chipset.
http://www.intel.com/Products/Desktop/Chipsets/X38/X38-overview.htm
I've tested this new module with broken memory, and it seems to be working
well.
Signed-off-by: Hitoshi Mitake <mitake@clustcom.com>
Signed-off-by: Doug Thompson <dougthompson@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Alexey Dobriyan [Wed, 29 Oct 2008 21:00:50 +0000 (14:00 -0700)]
.gitignore updates
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Huang Weiyi [Wed, 29 Oct 2008 21:00:49 +0000 (14:00 -0700)]
viafb: removed duplicated #include's
Removed duplicated #include's in drivers/video/via/global.h.
debug.h
viafbdev.h
viamode.h
Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Cc: Joseph Chan <josephchan@via.com.tw>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Kurt Garloff [Wed, 29 Oct 2008 21:00:48 +0000 (14:00 -0700)]
mm: increase the default mlock limit from 32k to 64k
By default, non-privileged tasks can only mlock() a small amount of
memory to avoid a DoS attack by ordinary users. The Linux kernel
defaulted to 32k (on a 4k page size system) to accommodate the needs of
gpg.
However, newer gpg2 needs 64k in various circumstances and otherwise
fails miserably, see bnc#329675.
Change the default to 64k, and make it more agnostic to PAGE_SIZE.
Signed-off-by: Kurt Garloff <garloff@suse.de>
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Tue, 28 Oct 2008 16:52:25 +0000 (09:52 -0700)]
Merge branch 'tracing-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (31 commits)
ftrace: fix current_tracer error return
tracing: fix a build error on alpha
ftrace: use a real variable for ftrace_nop in x86
tracing/ftrace: make boot tracer select the sched_switch tracer
tracepoint: check if the probe has been registered
asm-generic: define DIE_OOPS in asm-generic
trace: fix printk warning for u64
ftrace: warning in kernel/trace/ftrace.c
ftrace: fix build failure
ftrace, powerpc, sparc64, x86: remove notrace from arch ftrace file
ftrace: remove ftrace hash
ftrace: remove mcount set
ftrace: remove daemon
ftrace: disable dynamic ftrace for all archs that use daemon
ftrace: add ftrace warn on to disable ftrace
ftrace: only have ftrace_kill atomic
ftrace: use probe_kernel
ftrace: comment arch ftrace code
ftrace: return error on failed modified text.
ftrace: dynamic ftrace process only text section
...
Linus Torvalds [Tue, 28 Oct 2008 16:50:11 +0000 (09:50 -0700)]
Merge branch 'kvm-updates/2.6.28' of git://git./linux/kernel/git/avi/kvm
* 'kvm-updates/2.6.28' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:
KVM: ia64: Makefile fix for forcing to re-generate asm-offsets.h
KVM: Future-proof device assignment ABI
KVM: ia64: Fix halt emulation logic
KVM: Fix guest shared interrupt with in-kernel irqchip
KVM: MMU: sync root on paravirt TLB flush
Linus Torvalds [Tue, 28 Oct 2008 16:49:27 +0000 (09:49 -0700)]
Merge branch 'core-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
lockdep: fix irqs on/off ip tracing
lockdep: minor fix for debug_show_all_locks()
x86: restore the old swiotlb alloc_coherent behavior
x86: use GFP_DMA for 24bit coherent_dma_mask
swiotlb: remove panic for alloc_coherent failure
xen: compilation fix of drivers/xen/events.c on IA64
xen: portability clean up and some minor clean up for xencomm.c
xen: don't reload cr3 on suspend
kernel/resource: fix reserve_region_with_split() section mismatch
printk: remove unused code from kernel/printk.c
Linus Torvalds [Tue, 28 Oct 2008 16:48:25 +0000 (09:48 -0700)]
Merge branch 'irq-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
irq: make variable static
Linus Torvalds [Tue, 28 Oct 2008 16:46:20 +0000 (09:46 -0700)]
Merge branch 'sched-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
sched: fix documentation reference for sched_min_granularity_ns
sched: virtual time buddy preemption
sched: re-instate vruntime based wakeup preemption
sched: weaken sync hint
sched: more accurate min_vruntime accounting
sched: fix a find_busiest_group buglet
sched: add CONFIG_SMP consistency
Linus Torvalds [Tue, 28 Oct 2008 16:45:31 +0000 (09:45 -0700)]
Merge branch 'x86-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
x86, memory hotplug: remove wrong -1 in calling init_memory_mapping()
x86: keep the /proc/meminfo page count correct
x86/uv: memory allocation at initialization
xen: fix Xen domU boot with batched mprotect
Linus Torvalds [Tue, 28 Oct 2008 16:44:59 +0000 (09:44 -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] s390: Fix build for !CONFIG_S390_GUEST + CONFIG_VIRTIO_CONSOLE
[S390] No more 4kb stacks.
[S390] Change default IPL method to IPL_VM.
[S390] tape: disable interrupts in tape_open and tape_release
[S390] appldata: unsigned ops->size cannot be negative
[S390] tape block: complete request with correct locking
[S390] Fix sysdev class file creation.
[S390] pgtables: Fix race in enable_sie vs. page table ops
[S390] qdio: remove incorrect memset
[S390] qdio: prevent double qdio shutdown in case of I/O errors
Linus Torvalds [Tue, 28 Oct 2008 16:42:48 +0000 (09:42 -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: ahci enclosure management bit mask
libata: ahci enclosure management led sync
pata_ninja32: suspend/resume support
libata: Fix LBA48 on pata_it821x RAID volumes.
libata: clear saved xfer_mode and ncq_enabled on device detach
sata_sil24: configure max read request size to 4k
libata: add missing kernel-doc
libata: fix device iteration bugs
ahci: Add support for Promise PDC42819
ata: Switch all my stuff to a common address
Steven Rostedt [Tue, 28 Oct 2008 14:44:24 +0000 (10:44 -0400)]
ftrace: fix current_tracer error return
The commit (in linux-tip)
c2931e05ec5965597cbfb79ad332d4a29aeceb23
( ftrace: return an error when setting a nonexistent tracer )
added useful code that would error when a bad tracer was written into
the current_tracer file.
But this had a bug if the amount written was more than the amount read by
that code. The first iteration would set the tracer correctly, but since
it did not consume the rest of what was written (usually whitespace), the
userspace utility would continue to write what was not consumed. This
second iteration would fail to find a tracer and return -EINVAL. Funny
thing is that the tracer would have already been set.
This patch just consumes all the data that is written to the file.
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Xiantao Zhang [Thu, 23 Oct 2008 02:37:06 +0000 (10:37 +0800)]
KVM: ia64: Makefile fix for forcing to re-generate asm-offsets.h
To avoid using stale asm-offsets.h.
Signed-off-by: Xiantao Zhang <xiantao.zhang@intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Avi Kivity [Sun, 19 Oct 2008 14:39:45 +0000 (16:39 +0200)]
KVM: Future-proof device assignment ABI
Reserve some space so we can add more data.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Xiantao Zhang [Thu, 16 Oct 2008 07:58:15 +0000 (15:58 +0800)]
KVM: ia64: Fix halt emulation logic
Common halt logic was changed by x86 and did not update ia64. This patch
updates halt for ia64.
Fixes a regression causing guests to hang with more than 2 vcpus.
Signed-off-by: Xiantao Zhang <xiantao.zhang@intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Sheng Yang [Wed, 15 Oct 2008 12:15:06 +0000 (20:15 +0800)]
KVM: Fix guest shared interrupt with in-kernel irqchip
Every call of kvm_set_irq() should offer an irq_source_id, which is
allocated by kvm_request_irq_source_id(). Based on irq_source_id, we
identify the irq source and implement logical OR for shared level
interrupts.
The allocated irq_source_id can be freed by kvm_free_irq_source_id().
Currently, we support at most sizeof(unsigned long) different irq sources.
[Amit: - rebase to kvm.git HEAD
- move definition of KVM_USERSPACE_IRQ_SOURCE_ID to common file
- move kvm_request_irq_source_id to the update_irq ioctl]
[Xiantao: - Add kvm/ia64 stuff and make it work for kvm/ia64 guests]
Signed-off-by: Sheng Yang <sheng@linux.intel.com>
Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Xiantao Zhang <xiantao.zhang@intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Marcelo Tosatti [Wed, 15 Oct 2008 09:45:08 +0000 (07:45 -0200)]
KVM: MMU: sync root on paravirt TLB flush
The pvmmu TLB flush handler should request a root sync, similarly to
a native read-write CR3.
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Heiko Carstens [Tue, 28 Oct 2008 10:14:58 +0000 (11:14 +0100)]
lockdep: fix irqs on/off ip tracing
Impact: fix lockdep lock-api-caller output when irqsoff tracing is enabled
81d68a96 "ftrace: trace irq disabled critical timings" added wrappers around
trace_hardirqs_on/off_caller. However these functions use
__builtin_return_address(0) to figure out which function actually disabled
or enabled irqs. The result is that we save the ips of trace_hardirqs_on/off
instead of the real caller. Not very helpful.
However since the patch from Steven the ip already gets passed. So use that
and get rid of __builtin_return_address(0) in these two functions.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Christian Borntraeger [Tue, 28 Oct 2008 10:10:22 +0000 (11:10 +0100)]
[S390] s390: Fix build for !CONFIG_S390_GUEST + CONFIG_VIRTIO_CONSOLE
The s390 kernel does not compile if virtio console is enabled, but guest
support is disabled:
LD .tmp_vmlinux1
arch/s390/kernel/built-in.o: In function `setup_arch':
/space/linux-2.5/arch/s390/kernel/setup.c:773: undefined reference to
`s390_virtio_console_init'
The fix is related to
commit
99e65c92f2bbf84f43766a8bf701e36817d62822
Author: Christian Borntraeger <borntraeger@de.ibm.com>
Date: Fri Jul 25 15:50:04 2008 +0200
KVM: s390: Fix guest kconfig
Which changed the build process to build kvm_virtio.c only if CONFIG_S390_GUEST
is set. We must ifdef the prototype in the header file accordingly.
Reported-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 28 Oct 2008 10:10:21 +0000 (11:10 +0100)]
[S390] No more 4kb stacks.
We got a stack overflow with a small stack configuration on a 32 bit
system. It just looks like as 4kb isn't enough and too dangerous.
So lets get rid of 4kb stacks on 32 bit.
But one thing I completely dislike about the call trace below is that
just for debugging or tracing purposes sprintf gets called (cio_start_key):
/* process condition code */
sprintf(dbf_txt, "ccode:%d", ccode);
CIO_TRACE_EVENT(4, dbf_txt);
But maybe its just me who thinks that this could be done better.
<4>Kernel stack overflow.
<4>Modules linked in: dm_multipath sunrpc bonding qeth_l2 dm_mod qeth ccwgroup vmur
<4>CPU: 1 Not tainted 2.6.27-30.x.
20081015-s390default #1
<4>Process httpd (pid: 3807, task:
20ae2df8, ksp:
1666fb78)
<4>Krnl PSW :
040c0000 8027098a (number+0xe/0x348)
<4> R:0 T:1 IO:0 EX:0 Key:0 M:1 W:0 P:0 AS:0 CC:0 PM:0
<4>Krnl GPRS:
00d43318 0027097c 1666f277 9666f270
<4>
00000000 00000000 0000000a ffffffff
<4>
9666f270 1666f228 1666f277 1666f098
<4>
00000002 80270982 80271016 1666f098
<4>Krnl Code:
8027097e:
f0340dd0a7f1 srp 3536(4,%r0),2033(%r10),4
<4>
80270984: 0f00 clcl %r0,%r0
<4>
80270986:
a7840001 brc 8,
80270988
<4> >
8027098a: 18ef lr %r14,%r15
<4>
8027098c:
a7faff68 ahi %r15,-152
<4>
80270990: 18bf lr %r11,%r15
<4>
80270992: 18a2 lr %r10,%r2
<4>
80270994: 1893 lr %r9,%r3
Modified calltrace with annotated stackframe size of each function:
stackframe size
|
0 304 vsnprintf+850 [0x271016]
1 72 sprintf+74 [0x271522]
2 56 cio_start_key+262 [0x2d4c16]
3 56 ccw_device_start_key+222 [0x2dfe92]
4 56 ccw_device_start+40 [0x2dff28]
5 48 raw3215_start_io+104 [0x30b0f8]
6 56 raw3215_write+494 [0x30ba0a]
7 40 con3215_write+68 [0x30bafc]
8 40 __call_console_drivers+146 [0x12b0fa]
9 32 _call_console_drivers+102 [0x12b192]
10 64 release_console_sem+268 [0x12b614]
11 168 vprintk+462 [0x12bca6]
12 72 printk+68 [0x12bfd0]
13 256 __print_symbol+50 [0x15a882]
14 56 __show_trace+162 [0x103d06]
15 32 show_trace+224 [0x103e70]
16 48 show_stack+152 [0x103f20]
17 56 dump_stack+126 [0x104612]
18 96 __alloc_pages_internal+592 [0x175004]
19 80 cache_alloc_refill+776 [0x196f3c]
20 40 __kmalloc+258 [0x1972ae]
21 40 __alloc_skb+94 [0x328086]
22 32 pskb_copy+50 [0x328252]
23 32 skb_realloc_headroom+110 [0x328a72]
24 104 qeth_l2_hard_start_xmit+378 [0x7803bfde]
25 56 dev_hard_start_xmit+450 [0x32ef6e]
26 56 __qdisc_run+390 [0x3425d6]
27 48 dev_queue_xmit+410 [0x331e06]
28 40 ip_finish_output+308 [0x354ac8]
29 56 ip_output+218 [0x355b6e]
30 24 ip_local_out+56 [0x354584]
31 120 ip_queue_xmit+300 [0x355cec]
32 96 tcp_transmit_skb+812 [0x367da8]
33 40 tcp_push_one+158 [0x369fda]
34 112 tcp_sendmsg+852 [0x35d5a0]
35 240 sock_sendmsg+164 [0x32035c]
36 56 kernel_sendmsg+86 [0x32064a]
37 88 sock_no_sendpage+98 [0x322b22]
38 104 tcp_sendpage+70 [0x35cc1e]
39 48 sock_sendpage+74 [0x31eb66]
40 64 pipe_to_sendpage+102 [0x1c4b2e]
41 64 __splice_from_pipe+120 [0x1c5340]
42 72 splice_from_pipe+90 [0x1c57e6]
43 56 generic_splice_sendpage+38 [0x1c5832]
44 48 do_splice_from+104 [0x1c4c38]
45 48 direct_splice_actor+52 [0x1c4c88]
46 80 splice_direct_to_actor+180 [0x1c4f80]
47 72 do_splice_direct+70 [0x1c5112]
48 64 do_sendfile+360 [0x19de18]
49 72 sys_sendfile64+126 [0x19df32]
50 336 sysc_do_restart+18 [0x111a1a]
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 28 Oct 2008 10:10:20 +0000 (11:10 +0100)]
[S390] Change default IPL method to IPL_VM.
allyesconfig and allmodconfig built kernels have a tape IPL record.
A the vmreader record makes much more sense, since hardly anybody will
ever IPL a kernel from tape. So change the default.
As I side effect I can test these kernels without fiddling around with
the kernel config ;)
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Frank Munzert [Tue, 28 Oct 2008 10:10:19 +0000 (11:10 +0100)]
[S390] tape: disable interrupts in tape_open and tape_release
Get tape device lock with interrupts disabled. Otherwise lockdep will issue a
warning similar to:
=================================
[ INFO: inconsistent lock state ]
2.6.27 #1
---------------------------------
inconsistent {in-hardirq-W} -> {hardirq-on-W} usage.
vol_id/2903 [HC0[0]:SC0[0]:HE1:SE1] takes:
(sch->lock){++..}, at: [<
000003e00004c7a2>] tape_open+0x42/0x1a4 [tape]
{in-hardirq-W} state was registered at:
[<
000000000007ce5c>] __lock_acquire+0x894/0xa74
[<
000000000007d0ce>] lock_acquire+0x92/0xb8
[<
0000000000345154>] _spin_lock+0x5c/0x9c
[<
0000000000202264>] do_IRQ+0x124/0x1f0
[<
0000000000026610>] io_return+0x0/0x8
irq event stamp: 847
hardirqs last enabled at (847): [<
000000000007aca6>] trace_hardirqs_on+0x2a/0x38
hardirqs last disabled at (846): [<
0000000000076ca2>] trace_hardirqs_off+0x2a/0x38
softirqs last enabled at (0): [<
000000000004909e>] copy_process+0x43e/0x11f4
softirqs last disabled at (0): [<
0000000000000000>] 0x0
other info that might help us debug this:
1 lock held by vol_id/2903:
#0: (&bdev->bd_mutex){--..}, at: [<
000000000010e0f4>] do_open+0x78/0x358
stack backtrace:
CPU: 1 Not tainted 2.6.27 #1},
Process vol_id (pid: 2903, task:
000000003d4c0000, ksp:
000000003d4e3b10)
0400000000000000 000000003d4e3830 0000000000000002 0000000000000000
000000003d4e38d0 000000003d4e3848 000000003d4e3848 00000000000168a8
0000000000000000 000000003d4e3b10 0000000000000000 0000000000000000
000000003d4e3830 000000000000000c 000000003d4e3830 000000003d4e38a0
000000000034aa98 00000000000168a8 000000003d4e3830 000000003d4e3880
Call Trace:
([<
000000000001681c>] show_trace+0x138/0x158)
[<
0000000000016902>] show_stack+0xc6/0xf8
[<
00000000000170d4>] dump_stack+0xb0/0xc0
[<
0000000000078810>] print_usage_bug+0x1e8/0x228
[<
000000000007a71c>] mark_lock+0xb14/0xd24
[<
000000000007cd5a>] __lock_acquire+0x792/0xa74
[<
000000000007d0ce>] lock_acquire+0x92/0xb8
[<
0000000000345154>] _spin_lock+0x5c/0x9c
[<
000003e00004c7a2>] tape_open+0x42/0x1a4 [tape]
[<
000003e00005185c>] tapeblock_open+0x98/0xd0 [tape]
Signed-off-by: Frank Munzert <munzert@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Roel Kluin [Tue, 28 Oct 2008 10:10:18 +0000 (11:10 +0100)]
[S390] appldata: unsigned ops->size cannot be negative
unsigned ops->size cannot be negative
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Frank Munzert [Tue, 28 Oct 2008 10:10:17 +0000 (11:10 +0100)]
[S390] tape block: complete request with correct locking
__blk_end_request must be called with request queue lock held. We need to use
blk_end_request rather than __blk_end_request.
Signed-off-by: Frank Munzert <munzert@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Heiko Carstens [Tue, 28 Oct 2008 10:10:16 +0000 (11:10 +0100)]
[S390] Fix sysdev class file creation.
Use sysdev_class_create_file() to create create sysdev class attributes
instead of sysfs_create_file(). Using sysfs_create_file() wasn't a very
good idea since the show and store functions have a different amount of
parameters for sysfs files and sysdev class files.
In particular the pointer to the buffer is the last argument and
therefore accesses to random memory regions happened.
Still worked surprisingly well until we got a kernel panic.
Cc: stable@kernel.org
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Christian Borntraeger [Tue, 28 Oct 2008 10:10:15 +0000 (11:10 +0100)]
[S390] pgtables: Fix race in enable_sie vs. page table ops
The current enable_sie code sets the mm->context.pgstes bit to tell
dup_mm that the new mm should have extended page tables. This bit is also
used by the s390 specific page table primitives to decide about the page
table layout - which means context.pgstes has two meanings. This can cause
any kind of bugs. For example - e.g. shrink_zone can call
ptep_clear_flush_young while enable_sie is running. ptep_clear_flush_young
will test for context.pgstes. Since enable_sie changed that value of the old
struct mm without changing the page table layout ptep_clear_flush_young will
do the wrong thing.
The solution is to split pgstes into two bits
- one for the allocation
- one for the current state
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Jan Glauber [Tue, 28 Oct 2008 10:10:14 +0000 (11:10 +0100)]
[S390] qdio: remove incorrect memset
Remove the memset since zeroing the string is not needed and use
snprintf instead of sprintf.
Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Jan Glauber [Tue, 28 Oct 2008 10:10:13 +0000 (11:10 +0100)]
[S390] qdio: prevent double qdio shutdown in case of I/O errors
In case of I/O errors on a qdio subchannel qdio_shutdown may be
called twice by the qdio driver and by zfcp. Remove the
superfluous shutdown from qdio and let the upper layer driver
handle the error condition.
Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
qinghuang feng [Tue, 28 Oct 2008 09:24:28 +0000 (17:24 +0800)]
lockdep: minor fix for debug_show_all_locks()
When we failed to get tasklist_lock eventually (count equals 0),
we should only print " ignoring it.\n", and not print
" locked it.\n" needlessly.
Signed-off-by: Qinghuang Feng <qhfeng.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Frederic Weisbecker [Tue, 28 Oct 2008 08:43:26 +0000 (09:43 +0100)]
tracing: fix a build error on alpha
Impact: build fix on Alpha
When tracing is enabled, some arch have included <linux/irqflags.h>
on their <asm/system.h> but others like alpha or m68k don't.
Build error on alpha:
kernel/trace/trace.c: In function 'tracing_cpumask_write':
kernel/trace/trace.c:2145: error: implicit declaration of function 'raw_local_irq_disable'
kernel/trace/trace.c:2162: error: implicit declaration of function 'raw_local_irq_enable'
Tested on Alpha through a cross-compiler (should correct a similar issue on m68k).
Reported-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Shaohua Li [Mon, 27 Oct 2008 20:03:18 +0000 (13:03 -0700)]
x86, memory hotplug: remove wrong -1 in calling init_memory_mapping()
Impact: fix crash with memory hotplug
Shuahua Li found:
| I just did some experiments on a desktop for memory hotplug and this bug
| triggered a crash in my test.
|
| Yinghai's suggestion also fixed the bug.
We don't need to round it, just remove that extra -1
Signed-off-by: Yinghai <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
David Milburn [Mon, 13 Oct 2008 19:38:36 +0000 (14:38 -0500)]
libata: ahci enclosure management bit mask
Enclosure management bit mask definitions.
Signed-off-by: David Milburn <dmilburn@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
David Milburn [Thu, 16 Oct 2008 14:26:19 +0000 (09:26 -0500)]
libata: ahci enclosure management led sync
Synchronize ahci_sw_activity and ahci_sw_activity_blink with ata_port lock.
Signed-off-by: David Milburn <dmilburn@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Alan Cox [Fri, 17 Oct 2008 18:08:31 +0000 (19:08 +0100)]
pata_ninja32: suspend/resume support
I had assumed that the standard recovery would be sufficient for this
hardware but it isn't. Fix up the other registers on resume as needed. See
bug #11735
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Ondrej Zary [Sun, 26 Oct 2008 22:10:19 +0000 (18:10 -0400)]
libata: Fix LBA48 on pata_it821x RAID volumes.
[http://lkml.org/lkml/2008/10/18/82]
Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Tejun Heo [Sun, 26 Oct 2008 06:43:03 +0000 (15:43 +0900)]
libata: clear saved xfer_mode and ncq_enabled on device detach
libata EH saves xfer_mode and ncq_enabled at start to later set
DUBIOUS_XFER flag if it has changed. These values need to be cleared
on device detach such that hot device swap doesn't accidentally miss
DUBIOUS_XFER.
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Tejun Heo [Sat, 25 Oct 2008 05:26:54 +0000 (14:26 +0900)]
sata_sil24: configure max read request size to 4k
Due to request posting limitations, bandwidth of sil3132 is limited to
around 120MB/s with the minimum pci-e payload size (128bytes) which is
used by most consumer systems. However, write throughput can be
slightly (~3%) increased by increasing the max read requeset size.
Configure it to 4k which is the maximum supported. This optimization
is also done by SIMG's windows driver.
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Randy Dunlap [Mon, 27 Oct 2008 03:19:32 +0000 (20:19 -0700)]
libata: add missing kernel-doc
Fix libata missing kernel-doc:
Warning(lin2628-rc2//drivers/ata/libata-core.c:4562): No description
found for parameter 'tag'
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Tejun Heo [Mon, 27 Oct 2008 10:59:23 +0000 (19:59 +0900)]
libata: fix device iteration bugs
There were several places where only enabled devices should be
iterated over but device enabledness wasn't checked.
* IDENTIFY data 40 wire check in cable_is_40wire()
* xfer_mode/ncq_enabled saving in ata_scsi_error()
* DUBIOUS_XFER handling in ata_set_mode()
While at it, reformat comments in cable_is_40wire().
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Mark Nelson [Thu, 23 Oct 2008 03:08:16 +0000 (14:08 +1100)]
ahci: Add support for Promise PDC42819
Add an appropriate entry for the Promise PDC42819 controller. It has an
AHCI mode and so far works correctly with board_ahci.
This chip is found on Promise's FastTrak TX2650 (2 port) and TX4650 (4 port)
software-based RAID cards (for which there is a binary driver, t3sas) and
can be found on some motherboards, for example the MSI K9A2 Platinum,
which calls the chip a Promise T3 controller.
Although this controller also supports SAS devices, its default bootup mode
is AHCI and the binary driver has to do some magic to get the chip into the
appropriate mode to drive SAS disks.
Seeing as no documentation is provided by Promise, adding this entry to the
ahci driver allows the controller to be useful to people as a SATA
controller (with no ill effects on the system if a SAS disk is connected -
probing of the port just times out with "link online but device
misclassified"), without having to resort to using the binary driver. Users
who require SAS or the proprietary software raid can get this functionality
using the binary driver.
Signed-off-by: Mark Nelson <mdnelson8@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Alan Cox [Mon, 27 Oct 2008 15:09:10 +0000 (15:09 +0000)]
ata: Switch all my stuff to a common address
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Linus Torvalds [Mon, 27 Oct 2008 18:41:51 +0000 (11:41 -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:
libata: fix NCQ devices behind port multipliers
scsi: make sure that scsi_init_shared_tag_map() doesn't overwrite existing map
Jens Axboe [Mon, 27 Oct 2008 18:23:06 +0000 (19:23 +0100)]
libata: fix NCQ devices behind port multipliers
For devices behind sata port multipliers, we have to make sure that
they share a tag map since all tags for that PMP must be unique.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe [Mon, 27 Oct 2008 18:20:59 +0000 (19:20 +0100)]
scsi: make sure that scsi_init_shared_tag_map() doesn't overwrite existing map
Right now callers have to check whether scsi_host->bqt is already
set up, it's much cleaner to just have scsi_init_shared_tag_map()
does this check on its own.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Yinghai Lu [Sun, 26 Oct 2008 05:58:21 +0000 (22:58 -0700)]
x86: keep the /proc/meminfo page count correct
Impact: get correct page count in /proc/meminfo
found page count in /proc/meminfo is nor correct on 1G system in VirtualBox 2.0.4
# cat /proc/meminfo
MemTotal:
1017508 kB
MemFree: 822700 kB
Buffers: 1456 kB
Cached: 26632 kB
SwapCached: 0 kB
...
Hugepagesize: 2048 kB
DirectMap4k: 4032 kB
DirectMap2M:
18446744073709549568 kB
with this patch get:
...
DirectMap4k: 4032 kB
DirectMap2M:
1044480 kB
which is consistent to kernel_page_tables
---[ Low Kernel Mapping ]---
0xffff880000000000-0xffff880000001000 4K RW PCD GLB x pte
0xffff880000001000-0xffff88000009f000 632K RW GLB x pte
0xffff88000009f000-0xffff8800000a0000 4K RW PCD GLB x pte
0xffff8800000a0000-0xffff880000200000 1408K RW GLB x pte
0xffff880000200000-0xffff88003fe00000 1020M RW PSE GLB x pmd
0xffff88003fe00000-0xffff88003fff0000 1984K RW GLB NX pte
0xffff88003fff0000-0xffff880040000000 64K pte
0xffff880040000000-0xffff888000000000 511G pud
0xffff888000000000-0xffffc20000000000 58880G pgd
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Acked-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Jiri Kosina [Mon, 27 Oct 2008 16:41:58 +0000 (17:41 +0100)]
sched: fix documentation reference for sched_min_granularity_ns
Impact: documentation fix
sched-design-CFS.txt wrongly references sched_granularity_ns sysctl,
as its name in fact is sched_min_granularity_ns.
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Linus Torvalds [Mon, 27 Oct 2008 16:54:23 +0000 (09:54 -0700)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (33 commits)
MIPS: lemote/lm2e: Added io_map_base to pci controller
MIPS: TXx9: Make firmware parameter passing more robust
MIPS: Markeins: Remove unnecessary define and cleanup comments, etc.
MIPS: Markeins: Extract ll_emma2rh_* functions
MIPS: Markeins: Remove runtime debug prints
MIPS: EMMA: Fold arch/mips/emma/{common,markeins}/irq*.c into markeins/irq.c
MIPS: EMMA2RH: Remove emma2rh_gpio_irq_base
MIPS: EMMA2RH: Remove emma2rh_sw_irq_base
MIPS: EMMA2RH: Remove emma2rh_irq_base global variable
MIPS: EMMA2RH: Remove emma2rh_sync on read operation
MIPS: EMMA: Move <asm/emma2rh> to <asm/emma> dir
MIPS: EMMA: Move arch/mips/emma2rh/ into arch/mips/emma/
MIPS: EMMA: Kconfig reorganization
MIPS: Add CONFIG_CPU_R5500 for NEC VR5500 series processors
MIPS: RB532: Disable the right device
MIPS: Add support for NXP PNX833x (STB222/5) into linux kernel
MIPS: TXx9: CONFIG_TOSHIBA_RBTX4939 spelling
MIPS: Fix KGDB build error
INPUT: sgi_btns: Add license specification
MIPS: IP22: ip22-int.c header file weeding.
...
Linus Torvalds [Mon, 27 Oct 2008 16:37:16 +0000 (09:37 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ieee1394/linux1394-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
firewire: fw-sbp2: fix races
firewire: fw-sbp2: delay first login to avoid retries
firewire: fw-ohci: initialization failure path fixes
firewire: fw-ohci: don't leak dma memory on module removal
firewire: fix struct fw_node memory leak
firewire: Survive more than 256 bus resets
Linus Torvalds [Mon, 27 Oct 2008 16:36:33 +0000 (09:36 -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: ASoC: Blackfin: update SPORT0 port selector (v2)
ALSA: hda - Restore default pin configs for realtek codecs
sound: use a common working email address
pci: use pci_ioremap_bar() in sound/
Zhang Le [Mon, 27 Oct 2008 23:33:24 +0000 (23:33 +0000)]
MIPS: lemote/lm2e: Added io_map_base to pci controller
Signed-off-by: Zhang Le <r0bertz@gentoo.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Geert Uytterhoeven [Mon, 27 Oct 2008 14:25:49 +0000 (15:25 +0100)]
MIPS: TXx9: Make firmware parameter passing more robust
When booting Linux on a txx9 board with VxWorks boot loader, it crashes in
prom_getenv(), as VxWorks doesn't pass firmware parameters in a0-a3 (in my
case, the actual leftover values in these registers were 0x80002000,
0x80001fe0, 0x2000, and 0x20).
Make the parsing of argc, argv, and envp a bit more robust by checking if
argc is a number below CKSEG0, and argv/envp point to CKSEG0.
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Acked-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:36:33 +0000 (01:36 +0900)]
MIPS: Markeins: Remove unnecessary define and cleanup comments, etc.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:35:59 +0000 (01:35 +0900)]
MIPS: Markeins: Extract ll_emma2rh_* functions
These functions are completely ineffective.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:33:10 +0000 (01:33 +0900)]
MIPS: Markeins: Remove runtime debug prints
Remove runtime db_* macros as we don't need them any more. In general,
such helpers are useful for initial porting, but once approved, they are
not indispensable.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:32:40 +0000 (01:32 +0900)]
MIPS: EMMA: Fold arch/mips/emma/{common,markeins}/irq*.c into markeins/irq.c
Current EMMA2RH irq code is mess. Before cleaning it up, gather them
in one place as a first step.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:32:11 +0000 (01:32 +0900)]
MIPS: EMMA2RH: Remove emma2rh_gpio_irq_base
Let's use immediate value, instead. This also saves memory footprint,
and probably a little bit faster.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:31:43 +0000 (01:31 +0900)]
MIPS: EMMA2RH: Remove emma2rh_sw_irq_base
Let's use immediate value, instead. This also saves memory footprint,
and probably a little bit faster.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:31:16 +0000 (01:31 +0900)]
MIPS: EMMA2RH: Remove emma2rh_irq_base global variable
Let's use immediate value, instead. This also saves memory footprint,
and probably a little bit faster.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:30:48 +0000 (01:30 +0900)]
MIPS: EMMA2RH: Remove emma2rh_sync on read operation
It's totally a waste of CPU cycles.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:30:20 +0000 (01:30 +0900)]
MIPS: EMMA: Move <asm/emma2rh> to <asm/emma> dir
We'll put all EMMA related headers there in the future.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:29:16 +0000 (01:29 +0900)]
MIPS: EMMA: Move arch/mips/emma2rh/ into arch/mips/emma/
git mv arch/mips/{emma2rh,emma} and fixups Makefiles. We'll put all NEC
EMMA series based machines there in the future.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 21:00:01 +0000 (06:00 +0900)]
MIPS: EMMA: Kconfig reorganization
- Move EMMA related stuff into arch/mips/emma/Kconfig
- Create CONFIG_SOC_EMMA* to handle more EMMA SoCs effectively
- Rename CONFIG_MARKEINS into CONFIG_NEC_MARKEINS
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Shinya Kuribayashi [Thu, 23 Oct 2008 16:27:57 +0000 (01:27 +0900)]
MIPS: Add CONFIG_CPU_R5500 for NEC VR5500 series processors
We already have sufficient infrastructure to support VR5500 and VR5500A
series processors. Here's a Makefile support to make it selectable by
ports, and enable it for NEC EMMA2RH Markeins board.
This patch also fixes a confused target help, and adds 1Gb PageMask bits
supported by VR5500 and its variants.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Phil Sutter [Mon, 27 Oct 2008 01:29:57 +0000 (02:29 +0100)]
MIPS: RB532: Disable the right device
Signed-off-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Daniel Laird [Mon, 16 Jun 2008 14:49:21 +0000 (15:49 +0100)]
MIPS: Add support for NXP PNX833x (STB222/5) into linux kernel
The following patch add support for the NXP PNX833x SOC. More
specifically it adds support for the STB222/5 variant. It fixes
the vectored interrupt issue.
Signed-off-by: daniel.j.laird <daniel.j.laird@nxp.com>
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Geert Uytterhoeven [Thu, 23 Oct 2008 14:43:13 +0000 (16:43 +0200)]
MIPS: TXx9: CONFIG_TOSHIBA_RBTX4939 spelling
Fix a typo in the comment for the TOSHIBA_RBTX4939 config option
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Acked-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Yoichi Yuasa [Sat, 25 Oct 2008 08:30:35 +0000 (17:30 +0900)]
MIPS: Fix KGDB build error
In file included from include/linux/ptrace.h:49,
from arch/mips/kernel/kgdb.c:25:
/home/yuasa/src/linux/test/mips/linux/arch/mips/include/asm/ptrace.h:123: error: expected declaration specifiers or '...' before '__s64'
/home/yuasa/src/linux/test/mips/linux/arch/mips/include/asm/ptrace.h:124: error: expected declaration specifiers or '...' before '__s64'
/home/yuasa/src/linux/test/mips/linux/arch/mips/include/asm/ptrace.h:126: error: expected declaration specifiers or '...' before '__u32'
/home/yuasa/src/linux/test/mips/linux/arch/mips/include/asm/ptrace.h:127: error: expected declaration specifiers or '...' before '__u32'
make[1]: *** [arch/mips/kernel/kgdb.o] Error 1
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Dmitri Vorobiev [Fri, 24 Oct 2008 22:46:57 +0000 (01:46 +0300)]
INPUT: sgi_btns: Add license specification
The SGI Volume Button interface driver uses GPL-only symbols
platform_driver_unregister and platform_driver_register, but
lacks license specification. Thus, when compiled as a module,
this driver cannot be installed. This patch fixes this by
adding the MODULE_LICENSE() specification.
Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@movial.fi>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sat, 25 Oct 2008 14:51:48 +0000 (15:51 +0100)]
MIPS: IP22: ip22-int.c header file weeding.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Dmitri Vorobiev [Fri, 24 Oct 2008 22:46:56 +0000 (01:46 +0300)]
MIPS: IP22: Small cleanups
The following functions
disable_local1_irq()
disable_local2_irq()
disable_local3_irq()
are needlessly defined global, so make them static. While at it, fix a
whitespace error in the same file.
Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@movial.fi>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Mon, 20 Oct 2008 15:01:06 +0000 (00:01 +0900)]
MIPS: RBTX4939: Add smc91x support
Add smc91x platform device to RBTX4939 board and some hacks for big endian.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Mon, 20 Oct 2008 14:28:50 +0000 (23:28 +0900)]
MIPS: TXx9: 7 segment LED support
Add sysfs interface for 7 segment LED and implement access routine for
RBTX4939.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Manuel Lauss [Tue, 21 Oct 2008 06:59:14 +0000 (08:59 +0200)]
MIPS: Alchemy: Wire up SD controller on DB/PB1200 boards.
Add au1xmmc platform data for PB1200/DB1200 boards and wire up the 2 SD
controllers for them.
Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Florian Fainelli [Fri, 24 Oct 2008 17:53:55 +0000 (19:53 +0200)]
MIPS: RB532: Set gpio interrupt status and level for CompactFlash
This patch sets the correct interrupt status and level
in order to get the CompactFlash adapter working.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Adrian Bunk [Sun, 12 Oct 2008 13:01:35 +0000 (16:01 +0300)]
MIPS: RB532: Fix build error
mips/pci/fixup-rc32434.c must #include <asm/mach-rc32434/irq.h>
This patch fixes the following compile error caused by
commit
606a083b1e1a357cb66454e4581b80f1a67d8368
(MIPS: RB532: Cleanup the headers again):
<-- snip -->
...
CC arch/mips/pci/fixup-rc32434.o
arch/mips/pci/fixup-rc32434.c: In function 'pcibios_map_irq':
arch/mips/pci/fixup-rc32434.c:46: error: 'GROUP4_IRQ_BASE' undeclared (first use in this function)
arch/mips/pci/fixup-rc32434.c:46: error: (Each undeclared identifier is reported only once
arch/mips/pci/fixup-rc32434.c:46: error: for each function it appears in.)
make[2]: *** [arch/mips/pci/fixup-rc32434.o] Error 1
<-- snip -->
A virtually identical patch was also submitted by Yoichi Yuasa
<yoichi_yuasa@tripeaks.co.jp>.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Acked-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
David Daney [Fri, 24 Oct 2008 16:31:13 +0000 (09:31 -0700)]
MIPS: Fix KGDB build error
<asm/ptrace.h> is exported to userland so can't include <linux/ptrace.h>,
so replace the C99 types with their basic C type equivalents.
Bug originally reported and initial patch by Yoichi Yuasa
<yoichi_yuasa@tripeaks.co.jp>.
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Fri, 24 Oct 2008 16:17:23 +0000 (01:17 +0900)]
MIPS: Set ENOSYS to errno on illegal system call number for syscall(2)
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Fri, 24 Oct 2008 16:17:22 +0000 (01:17 +0900)]
MIPS: Set positive error number to errno on illegal_syscall
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sat, 18 Oct 2008 12:23:10 +0000 (13:23 +0100)]
MIPS: SMP: Don't reenable interrupts in stop_this_cpu; use WAIT instruction.
Noticed by Anirban Sinha <ASinha@zeugmasystems.com>; patch by me.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
David Daney [Sat, 18 Oct 2008 00:48:53 +0000 (17:48 -0700)]
MIPS: Don't unmap the memory for dma_sync*.
We were getting away with this for so long only because the only platform
with a non-empty plat_unmap_dma_mem() doesn't call dma_sync_sg_for_cpu()
and dma_sync_sg_for_device() from its commonly used drivers.
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Zhaolei [Fri, 17 Oct 2008 11:12:35 +0000 (19:12 +0800)]
MIPS: Fix debugfs_create_*'s error checking method for mips/kernel/
debugfs_create_*() returns NULL on error. Make its callers return -ENODEV
on error.
Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
Acked-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Zhaolei [Fri, 17 Oct 2008 11:12:30 +0000 (19:12 +0800)]
MIPS: Fix debugfs_create_*'s error checking method for arch/mips/math-emu/
debugfs_create_*() returns NULL on error. Make its caller debugfs_fpuemu
return -ENODEV on error.
Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Takashi Iwai [Mon, 27 Oct 2008 16:08:11 +0000 (17:08 +0100)]
Merge branches 'topic/fix/asoc', 'topic/fix/hda', 'topic/fix/misc' and 'topic/pci-ioremap-bar' into for-linus
Cliff Cai [Mon, 27 Oct 2008 09:09:25 +0000 (17:09 +0800)]
ALSA: ASoC: Blackfin: update SPORT0 port selector (v2)
- Setting the TFS pin selector for SPORT 0 based on whether the selected
port id F or G. If the port is F then no conflict should exist for the
TFS. When Port G is selected and EMAC then there is a conflict between
the PHY interrupt line and TFS. Current settings prevent the conflict
by ignoring the TFS pin when Port G is selected. This allows both
ssm2602 using Port G and EMAC concurrently.
- some code cleanup
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai [Mon, 27 Oct 2008 15:56:24 +0000 (16:56 +0100)]
ALSA: hda - Restore default pin configs for realtek codecs
Some machines have broken BIOS resume that doesn't restore the default
pin configuration properly, which results in a wrong detection of HP
pin. This causes a silent speaker output due to missing HP detection.
Related bug: Novell bug#406101
https://bugzilla.novell.com/show_bug.cgi?id=406101
This patch fixes the issue by saving/restoring the default pin configs
by the driver itself.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Steven Rostedt [Fri, 24 Oct 2008 13:12:17 +0000 (09:12 -0400)]
ftrace: use a real variable for ftrace_nop in x86
Impact: avoid section mismatch warning, clean up
The dynamic ftrace determines which nop is safe to use at start up.
When it finds a safe nop for patching, it sets a pointer called ftrace_nop
to point to the code. All call sites are then patched to this nop.
Later, when tracing is turned on, this ftrace_nop variable is again used
to compare the location to make sure it is a nop before we update it to
an mcount call. If this fails just once, a warning is printed and ftrace
is disabled.
Rakib Mullick noted that the code that sets up the nop is a .init section
where as the nop itself is in the .text section. This is needed because
the nop is used later on after boot up. The problem is that the test of the
nop jumps back to the setup code and causes a "section mismatch" warning.
Rakib first recommended to convert the nop to .init.text, but as stated
above, this would fail since that text is used later.
The real solution is to extend Rabik's patch, and to make the ftrace_nop
into an array, and just save the code from the assembly to this array.
Now the section can stay as an init section, and we have a nop to use
later on.
Reported-by: Rakib Mullick <rakib.mullick@gmail.com>
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Frederic Weisbecker [Wed, 22 Oct 2008 17:26:23 +0000 (19:26 +0200)]
tracing/ftrace: make boot tracer select the sched_switch tracer
Impact: build fix
If the boot tracer is selected but not the sched_switch,
there will be a build failure:
kernel/built-in.o: In function `boot_trace_init':
trace_boot.c:(.text+0x5ee38): undefined reference to `sched_switch_trace'
kernel/built-in.o: In function `disable_boot_trace':
(.text+0x5eee1): undefined reference to `tracing_stop_cmdline_record'
kernel/built-in.o: In function `enable_boot_trace':
(.text+0x5ef11): undefined reference to `tracing_start_cmdline_record'
This patch fixes it.
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Frederic Weisbecker [Wed, 22 Oct 2008 17:14:55 +0000 (19:14 +0200)]
tracepoint: check if the probe has been registered
Impact: fix kernel crash that can trigger during tracing
If we try to remove a probe that has not been already registered,
the tracepoint_entry_remove_probe() function will dereference a NULL
pointer.
Check the probe before removing it to avoid crashes.
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Acked-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Linus Torvalds [Mon, 27 Oct 2008 15:41:13 +0000 (08:41 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
syncookies: fix inclusion of tcp options in syn-ack
libertas: free sk_buff with kfree_skb
btsdio: free sk_buff with kfree_skb
Phonet: do not reply to indication reset packets
Phonet: include generic link-layer header size in MAX_PHONET_HEADER
Alan Cox [Mon, 27 Oct 2008 15:19:48 +0000 (15:19 +0000)]
Switch to a valid email address...
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Alan Cox [Mon, 27 Oct 2008 15:10:23 +0000 (15:10 +0000)]
Tidy up addresses in random drivers
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Eric Miao [Mon, 27 Oct 2008 09:48:50 +0000 (17:48 +0800)]
leds: da903x: fix the building failure of incomplete type of 'work'
The leds-da903x LED driver was missing the proper #include of
linux/workqueue.h, but happened to compile on ARM due to implied
includes through other header files.
We do need the explict include on other architectures (reported at least
for x86-64).
Reported-tested-and-acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Alan Cox [Mon, 27 Oct 2008 15:21:19 +0000 (15:21 +0000)]
sound: use a common working email address
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cliff Wickman [Thu, 23 Oct 2008 22:54:05 +0000 (17:54 -0500)]
x86/uv: memory allocation at initialization
Impact: on SGI UV platforms, fix boot crash
UV initialization is currently called too late to call alloc_bootmem_pages().
The current sequence is:
start_kernel()
mem_init()
free_all_bootmem() <--- discard of bootmem
rest_init()
kernel_init()
smp_prepare_cpus()
native_smp_prepare_cpus()
uv_system_init() <--- uses alloc_bootmem_pages()
It should be calling kmalloc().
Signed-off-by: Cliff Wickman <cpw@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Chris Lalancette [Fri, 24 Oct 2008 00:40:25 +0000 (17:40 -0700)]
xen: fix Xen domU boot with batched mprotect
Impact: fix guest kernel boot crash on certain configs
Recent i686 2.6.27 kernels with a certain amount of memory (between
736 and 855MB) have a problem booting under a hypervisor that supports
batched mprotect (this includes the RHEL-5 Xen hypervisor as well as
any 3.3 or later Xen hypervisor).
The problem ends up being that xen_ptep_modify_prot_commit() is using
virt_to_machine to calculate which pfn to update. However, this only
works for pages that are in the p2m list, and the pages coming from
change_pte_range() in mm/mprotect.c are kmap_atomic pages. Because of
this, we can run into the situation where the lookup in the p2m table
returns an INVALID_MFN, which we then try to pass to the hypervisor,
which then (correctly) denies the request to a totally bogus pfn.
The right thing to do is to use arbitrary_virt_to_machine, so that we
can be sure we are modifying the right pfn. This unfortunately
introduces a performance penalty because of a full page-table-walk,
but we can avoid that penalty for pages in the p2m list by checking if
virt_addr_valid is true, and if so, just doing the lookup in the p2m
table.
The attached patch implements this, and allows my 2.6.27 i686 based
guest with 768MB of memory to boot on a RHEL-5 hypervisor again.
Thanks to Jeremy for the suggestions about how to fix this particular
issue.
Signed-off-by: Chris Lalancette <clalance@redhat.com>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Cc: Chris Lalancette <clalance@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Jonas Bonn [Sat, 25 Oct 2008 09:49:20 +0000 (11:49 +0200)]
asm-generic: define DIE_OOPS in asm-generic
Impact: build fix
DIE_OOPS is now used in the generic trace handling code so it needs to
be defined for all architectures. Define it in asm-generic so that it's
available to all by default and doesn't cause build errors for
architectures that rely on the generic implementation.
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
Acked-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Stephen Rothwell [Mon, 27 Oct 2008 06:43:28 +0000 (17:43 +1100)]
trace: fix printk warning for u64
A powerpc ppc64_defconfig build produces these warnings:
kernel/trace/ring_buffer.c: In function 'rb_add_time_stamp':
kernel/trace/ring_buffer.c:969: warning: format '%llu' expects type 'long long unsigned int', but argument 2 has type 'u64'
kernel/trace/ring_buffer.c:969: warning: format '%llu' expects type 'long long unsigned int', but argument 3 has type 'u64'
kernel/trace/ring_buffer.c:969: warning: format '%llu' expects type 'long long unsigned int', but argument 4 has type 'u64'
Just cast the u64s to unsigned long long like we do everywhere else.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Acked-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>