linux-kernel mailing list

FromSubjectsort iconDate
Paul Braman
bt878/msp3445 Audio Channel Swapping
Maybe this is something that just "everyone already knows" but I can't find documentation about it. In several kernels I've tried, most recently 2.6.30, the drivers for NTSC tuner cards with AV inputs have their left-right channels swapping coming out of the ALSA drivers. Both the RF and AV inputs are like this. However, with the bt878/msp3445 combination, switching back and forth from RF and AV can actually induce swapping channels *back* to their original assignments (and back and forth, etc, ...
Apr 9, 4:34 pm 2010
root
[PATCH] MTD: Suppress warnings in inline_map_read()
With gcc 4.4.3 -O2 on MIPS32: drivers/mtd/chips/cfi_util.c: In function 'cfi_qry_present': include/linux/mtd/map.h:390: warning: 'r' may be used uninitialized in this function include/linux/mtd/map.h:375: note: 'r' was declared here include/linux/mtd/map.h:390: warning: 'r' may be used uninitialized in this function include/linux/mtd/map.h:375: note: 'r' was declared here Signed-off-by: Kevin Cernekee <cernekee@gmail.com> --- include/linux/mtd/map.h | 2 +- 1 files changed, 1 ...
Apr 9, 3:45 pm 2010
David Miller
[PATCH 1/4] kernel: local_irq_{save,restore}_nmi()
Provide local_irq_{save,restore}_nmi() which will allow us to help architectures that implement NMIs using IRQ priorities like SPARC64 does. Sparc uses IRQ prio 15 for NMIs and implements local_irq_disable() as disable <= 14. However if you do that while inside an NMI you re- enable the NMI priority again, causing all kinds of fun. A more solid implementation would first check the disable level and never lower it, however that is more costly and would slow down the rest of the kernel for ...
Apr 9, 4:01 pm 2010
David Miller
[PATCH 4/4] tracing: Use local_irq_{save,restore}_nmi() ...
Signed-off-by: David S. Miller <davem@davemloft.net> --- kernel/trace/ftrace.c | 8 ++++---- kernel/trace/trace_functions.c | 8 ++++---- kernel/trace/trace_functions_graph.c | 8 ++++---- kernel/trace/trace_sched_wakeup.c | 4 ++-- kernel/trace/trace_stack.c | 4 ++-- 5 files changed, 16 insertions(+), 16 deletions(-) diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 2404b59..6be1e33 100644 --- a/kernel/trace/ftrace.c +++ ...
Apr 9, 4:01 pm 2010
David Miller
[PATCH 3/4] sched: Use local_irq_save_nmi() in cpu_clock()
Since we can call cpu_clock() from NMI context fix up the IRQ disabling to conform to the new rules. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: David S. Miller <davem@davemloft.net> --- kernel/sched_clock.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/sched_clock.c b/kernel/sched_clock.c index 5b49613..ef159ee 100644 --- a/kernel/sched_clock.c +++ b/kernel/sched_clock.c @@ -241,9 +241,9 @@ unsigned long long cpu_clock(int ...
Apr 9, 4:01 pm 2010
David Miller
[PATCH 2/4] sparc64: Implement local_irq_save_nmi() override.
Signed-off-by: David S. Miller <davem@davemloft.net> --- arch/sparc/include/asm/irqflags_64.h | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 deletions(-) diff --git a/arch/sparc/include/asm/irqflags_64.h b/arch/sparc/include/asm/irqflags_64.h index 8b49bf9..fa1e00e 100644 --- a/arch/sparc/include/asm/irqflags_64.h +++ b/arch/sparc/include/asm/irqflags_64.h @@ -49,6 +49,16 @@ static inline void raw_local_irq_disable(void) ); } +static inline void ...
Apr 9, 4:01 pm 2010
David Miller
[PATCH 0/4]: Respin local_irq_*_nmi() stuff.
Peter, I've respun the local_irq_*_nmi() interface addition, sparc64 implementation, and trace/sched_clock annotations against Linus's tree. I've tested all of the tracers in various different configurations on sparc64 and I haven't triggered any of the bug checks or crashes yet so it should be good. It can also be pulled from: master.kernel.org:/pub/scm/linux/kernel/git/davem/trace-2.6.git And it would be nice to see this upstream soon so I can build upon it :-) You'll need to ...
Apr 9, 4:01 pm 2010
Samuel Ortiz
[PATCH 1/3] rtl8187se: Do not autoconnect based on probe ...
Getting a probe response after sending a probe request to a specific SSID doesnt mean we're trying to associate with this SSID. wpa_supplicant should be the only one deciding when to join an SSID, not the kernel. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> --- drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c | 4 ---- 1 files changed, 0 insertions(+), 4 deletions(-) diff --git a/drivers/staging/rtl8187se/ieee80211/ieee80211_rx.c ...
Apr 9, 3:33 pm 2010
Samuel Ortiz
[PATCH 2/3] rtl8187se: Do not mess with carrier settings ...
Toggling the link carrier is a non sense and is the grossest locking I can think of. Moreover, it's giving a completely inaccurate status to userspace who could for example decide to turn the interface down on carrier off detection. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> --- .../rtl8187se/ieee80211/ieee80211_softmac_wx.c | 4 ---- 1 files changed, 0 insertions(+), 4 deletions(-) diff --git a/drivers/staging/rtl8187se/ieee80211/ieee80211_softmac_wx.c ...
Apr 9, 3:33 pm 2010
Samuel Ortiz
[PATCH 3/3] rtl8187se: Do not send NULL BSSID events whe ...
If we're not associated, we should not send wireless events to let userspace know that we just left an ESSID, simply because we havent yet joined it. If we keep on doing that, wpa_supplicant could receive such events while actually trying to join an ESSID, and thus decide to stop trying. This leads to a lot of connection failures as this driver seems to be sending GIWAP events quite a lot. Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> --- .../rtl8187se/ieee80211/ieee80211_softmac.c ...
Apr 9, 3:33 pm 2010
Jesse Barnes
[PATCH] drm: add locked variant of drm_fb_helper_force_k ...
Needed for panic and kdb, since we need to avoid taking the mode_config mutex. Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> --- drivers/gpu/drm/drm_fb_helper.c | 42 +++++++++++++++++++++++++++++++++----- 1 files changed, 36 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c index 6929f5b..962eadb 100644 --- a/drivers/gpu/drm/drm_fb_helper.c +++ b/drivers/gpu/drm/drm_fb_helper.c @@ -242,18 +242,22 @@ static int ...
Apr 9, 3:11 pm 2010
Jesse Barnes
[RFC] Try a bit harder to get output on the screen at pa ...
This set of 3 patches makes it a little more likely we'll get panic output onto the screen even when X is running, assuming a KMS enabled stack anyway. It gets me from a blank or very sparsely populated black screen at panic time, to one including the full backtrace and panic output at panic time (tested with "echo c > /proc/sysrq-trigger" from an X session). It doesn't cover every case; for instance I think it'll fail when X has disabled the display, but those cases need to be handled with ...
Apr 9, 3:10 pm 2010
Jesse Barnes
[PATCH] vt: try harder to print output when panicing
At panic time (i.e. when oops_in_progress is set) we should try a bit harder to update the screen and make sure output gets to the VT, since some drivers are capable of flipping back to it. So make sure we try to unblank and update the display if called from a panic context. Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> --- drivers/char/vt.c | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/char/vt.c b/drivers/char/vt.c index ...
Apr 9, 3:12 pm 2010
Jesse Barnes
[PATCH] fbcon: assume console is active if panicing
This allows us to draw to the fbcon buffer in a panic situation, in case the low level driver can flip to it at panic time. Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> --- drivers/video/console/fbcon.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c index b0a3fa0..6ca1051 100644 --- a/drivers/video/console/fbcon.c +++ b/drivers/video/console/fbcon.c @@ -283,7 +283,7 @@ static inline int ...
Apr 9, 3:12 pm 2010
Till Kamppeter
Google Summer of Code 2010 - Student Application Deadlin ...
Hi, now we have a lot of student applications and to assure that we get enough slots for all students we want to actually mentor, we need to assign mentors to the students until MONDAY at the latest. In addition, applications which are obviously spam should be marked ineligible, also until MONDAY at the latest. Incomplete proposals should only be ranked down, not marked ineligible. Please check which students are interesting for you to mentor, and feel free to mentor more than one ...
Apr 9, 2:44 pm 2010
Robert Hancock
Re: [LKML] Re: USB transfer_buffer allocations on 64bit ...
If you have 4GB of RAM then almost certainly you have memory located at addresses over 4GB. If you look at the e820 memory map printed at the start of dmesg on bootup and see entries with addresses of 100000000 or higher reported as usable, then this is the case. --
Apr 9, 3:11 pm 2010
Alan Stern
Re: [LKML] Re: USB transfer_buffer allocations on 64bit ...
How can Pedro find out what physical addresses are in use on his system? Alan Stern --
Apr 9, 2:23 pm 2010
Alan Stern
Re: USB transfer_buffer allocations on 64bit systems
The mapping is always done either by usb_buffer_alloc() or by Search for usages of "syncbuf" and "sync_dma" in sound/usb/usbaudio.c. Alan Stern --
Apr 9, 2:21 pm 2010
Steven Rostedt
[PATCH][GIT PULL] tracing: Fix uninitialized variable of ...
Ingo, Please pull the latest tip/tracing/core tree, which can be found at: git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git tip/tracing/core Lai Jiangshan (1): tracing: Fix uninitialized variable of tracing/trace output ---- kernel/trace/trace.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) --------------------------- commit aa27497c2fb4c7f57706099bd489e683e5cc3e3b Author: Lai Jiangshan <laijs@cn.fujitsu.com> Date: Mon Apr 5 ...
Apr 9, 2:02 pm 2010
Jakob Penzien
Re: PATCH: ni_labpc_cs.c 2
From: Jakob Penzien <jwpenzie@mtu.edu> Date: Wed, 3 Mar 2010 00:31:24 -0500 Subject: [PATCH 2/2] Staging: Comedi: fix 80 character and KERN coding style issue in ni_labpc_cs.c This is a patch to the ni_labpc_cs.c file that fixes up the 80 character and KERN warning found by the checkpoint.pl tool. Changed the spaceing between KERN and ". Signed-off-by: Jakob Penzien <Supermine290@gmail.com> --- drivers/staging/comedi/drivers/ni_labpc_cs.c | 5 +++-- 1 files changed, 3 insertions(+), ...
Apr 9, 1:22 pm 2010
Jakob Penzien
PATCH: ni_labpc.c
Subject: [PATCH] Staging: comedi: Fixed brace, KERN_, 80 characters issues in ni_labpc.c This is a patch to ni_labpc.c file that fixes all the brace and 80 character warnings and it also fixes some of the KERN_ facility warnings found by the checkpatch.pl tool. The two errors about indent warning are there because I do not understand what they want and so I left it in the orginal code and they happened to get pulled in the patch. Signed-off-by: Jakob Penzien <supermine290@gmail.com> --- ...
Apr 9, 1:25 pm 2010
Frantisek Rysanek
setitimer vs. threads: SIGALRM returned to which thread? ...
Dear everyone, I hope I'm not way too much off topic in this list... specifically, I hope the issue takes place in the kernel, as opposed to the user- space part of NPTL that ships with libc, distroes etc. At the same time, I feel shame for asking this noob question in the very LKML - except that there doesn't seem to be a better place to ask... :-> Some years ago, I've written a couple programs that tend to use the setitimer() syscall in a threaded environment, making use of its ...
Apr 9, 12:48 pm 2010
Jason Baron
[PATCH 0/9] jump label v6
Hi, Refresh of jump labeling patches aginst -tip tree. For bacground see: http://marc.info/?l=linux-kernel&m=125858436505941&w=2 I believe I've addressed all the reviews from v5. Changes in v6: * I've moved Steve Rostedt's 'ftrace_dyn_arch_init()' to alternative.c to put it into a common area for used by both ftrace and jump labels. By default we put a 'jmp 5' in the nop slot. Then, when we detect the best runtime no-op we patch over the 'jmp 5' with the appropriate nop. * build time ...
Apr 9, 12:49 pm 2010
Jason Baron
[PATCH 1/9] jump label: notifier atomic call chain notrace
In LTTng, being able to use the atomic notifier from cpu idle entry to ensure the tracer flush the last events in the current subbuffer requires the rcu read-side to be marked "notrace", otherwise it can end up calling back into lockdep and the tracer. Also apply to the the die notifier. Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> Signed-off-by: Jason Baron <jbaron@redhat.com> Reviewed-by: Masami Hiramatsu <mhiramat@redhat.com> --- kernel/notifier.c | 6 +++--- 1 ...
Apr 9, 12:49 pm 2010
Jason Baron
[PATCH 3/9] jump label: x86 support
add x86 support for jump label. I'm keeping this patch separate so its clear to arch maintainers what was required for x86 support this new feature. hopefully, it wouldn't be too painful for other arches. Signed-off-by: Jason Baron <jbaron@redhat.com> --- arch/x86/include/asm/jump_label.h | 31 +++++++++++++++++++++ arch/x86/kernel/Makefile | 2 +- arch/x86/kernel/jump_label.c | 53 +++++++++++++++++++++++++++++++++++++ 3 files changed, 85 insertions(+), 1 deletions(-) ...
Apr 9, 12:49 pm 2010
Jason Baron
[PATCH 2/9] jump label: base patch
base patch to implement 'jump labeling'. Based on a new 'asm goto' inline assembly gcc mechanism, we can now branch to labels from an 'asm goto' statment. This allows us to create a 'no-op' fastpath, which can subsequently be patched with a jump to the slowpath code. This is useful for code which might be rarely used, but which we'd like to be able to call, if needed. Tracepoints are the current usecase that these are being implemented for. Signed-off-by: Jason Baron <jbaron@redhat.com> --- ...
Apr 9, 12:49 pm 2010
Jason Baron
[PATCH 6/9] jump label: move ftrace_dyn_arch_init to com ...
Move Steve's code for finding the best 5-byte no-op from ftrace.c to alternative.c. The idea is that other consumers (in this case jump label) want to make use of that code. I've created a global: 'char ideal_nop[5]', that is setup during setup_arch that can be used. Signed-off-by: Jason Baron <jbaron@redhat.com> --- arch/x86/include/asm/alternative.h | 14 +++++++ arch/x86/include/asm/jump_label.h | 10 ++---- arch/x86/kernel/alternative.c | 71 ...
Apr 9, 12:49 pm 2010
Jason Baron
[PATCH 8/9] jump label: initialize workqueue tracepoints ...
Initialize the workqueue data structures *before* they are registered so that they are ready for callbacks. Signed-off-by: Jason Baron <jbaron@redhat.com> --- kernel/trace/trace_workqueue.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/kernel/trace/trace_workqueue.c b/kernel/trace/trace_workqueue.c index 40cafb0..487d821 100644 --- a/kernel/trace/trace_workqueue.c +++ b/kernel/trace/trace_workqueue.c @@ -258,6 +258,11 @@ int __init ...
Apr 9, 12:50 pm 2010
Jason Baron
[PATCH 9/9] jump label: jump_label_text_reserved() to re ...
Add a jump_label_text_reserved(void *start, void *end), so that other pieces of code that want to modify kernel text, can first verify that jump label has not reserved the instruction. Signed-off-by: Jason Baron <jbaron@redhat.com> --- arch/x86/kernel/kprobes.c | 3 +- include/linux/jump_label.h | 6 +++ kernel/jump_label.c | 83 ++++++++++++++++++++++++++++++++++++++++++++ kernel/kprobes.c | 3 +- 4 files changed, 93 insertions(+), 2 deletions(-) diff --git ...
Apr 9, 12:50 pm 2010
Jason Baron
[PATCH 5/9] jump label: add module support
Add support for 'jump label' for modules. Signed-off-by: Jason Baron <jbaron@redhat.com> --- arch/x86/kernel/ptrace.c | 1 + include/linux/jump_label.h | 3 +- include/linux/module.h | 5 +- kernel/jump_label.c | 136 ++++++++++++++++++++++++++++++++++++++++++++ kernel/module.c | 7 ++ 5 files changed, 150 insertions(+), 2 deletions(-) diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c index 2d96aab..21854d2 100644 --- ...
Apr 9, 12:49 pm 2010
Jason Baron
[PATCH 4/9] jump label: tracepoint support
Make use of the jump label infrastructure for tracepoints. Signed-off-by: Jason Baron <jbaron@redhat.com> --- include/linux/tracepoint.h | 34 +++++++++++++++++++--------------- kernel/tracepoint.c | 8 ++++++++ 2 files changed, 27 insertions(+), 15 deletions(-) diff --git a/include/linux/tracepoint.h b/include/linux/tracepoint.h index f59604e..c18b9c0 100644 --- a/include/linux/tracepoint.h +++ b/include/linux/tracepoint.h @@ -16,6 +16,7 @@ #include <linux/types.h> ...
Apr 9, 12:49 pm 2010
Jason Baron
[PATCH 7/9] jump label: sort jump table at build-time
The jump label table is more optimal accessed if the entries are continguous. Sorting the table accomplishes this. Do the sort at build-time. Adds a '-j' option to 'modpost' which replaces the vmlinux, with a sorted jump label section vmlinux. I've tested this on x86 with relocatable and it works fine there as well. Note that I have not sorted the jump label table in modules. This is b/c the jump label names can be exported by the core kernel, and thus I don't have them available at buildtime. ...
Apr 9, 12:49 pm 2010
Masami Hiramatsu
Re: [PATCH 0/9] jump label v6
Hi Jason, Good!:-) So now, it might be a good time to integrate those text_reserved() functions. BTW, how many jumps would you expect modifying at once? Since the text_poke_smp() uses stop_machine() for each modifying text, I found that it can cause a delay issue if it is called so many times... (e.g. a systemtap testcase sets ~5000 probes at once) Thank you, -- Masami Hiramatsu e-mail: mhiramat@redhat.com --
Apr 9, 1:36 pm 2010
Masami Hiramatsu
Re: [PATCH 9/9] jump label: jump_label_text_reserved() t ...
Acked-by: Masami Hiramatsu <mhiramat@redhat.com> At least kprobes parts. :) -- Masami Hiramatsu e-mail: mhiramat@redhat.com --
Apr 9, 2:09 pm 2010
Vivek Goyal
Re: [PATCH 7/9] jump label: sort jump table at build-time
[ CCing Eric ] Jason, As we were chatting about this, it looks like you are modifying vmlinux section outside the knowledge of compiler. So theoritically associated relocation section knowledge is no more valid and it can be a problem during i386 relocatable kernels where we read the section's relocation inforamtion and perform the relocations at runtime. I know you have tested this on i386 and it works for you. I guess it works because all the entries in the section are same and we ...
Apr 9, 2:24 pm 2010
Roland McGrath
Re: [PATCH 7/9] jump label: sort jump table at build-time
I think it just happens to come out harmless. The relocs.c extraction stuff doesn't actually care about the exact address to be relocated, it only needs to know that a relocated value sits at a given place in the binary. The sorting rearranges the addresses in the text without rearranging their corresponding relocs, but it's still the case that at exactly each of those spots in text there is a relocated address. The boot-time "relocation" is just a blind adjustment to all those spots, without ...
Apr 9, 2:32 pm 2010
Jason Baron
Re: [PATCH 0/9] jump label v6
I'm counting 934 jump label locations in the vmlinux, i have compiled, 675 of them being 'kmalloc'. Batch mode for text_poke_smp()? -Jason --
Apr 9, 2:37 pm 2010
Masami Hiramatsu
Re: [PATCH 0/9] jump label v6
Yeah:) I'm now trying to make it with updating kprobes. Thank you, -- Masami Hiramatsu e-mail: mhiramat@redhat.com --
Apr 9, 2:58 pm 2010
Eric Paris
[PATCH -v2] security: remove dead hook acct
Unused hook. Remove. Signed-off-by: Eric Paris <eparis@redhat.com> --- This is a resend of the broken patch I sent earlier. It was the last patch in the series and I had uncommitted changes in my repo which fixed the borkeness. James you should apply all of the patches I originally sent except the last one. Use this one instead. include/linux/security.h | 14 -------------- kernel/acct.c | 20 +++++--------------- security/capability.c | 6 ------ ...
Apr 9, 12:36 pm 2010
Daniel Mack
Re: USB transfer_buffer allocations on 64bit systems
FWIW, as I stated in the first message of this thread, I had very similar bug reports for a Mac OS X driver I'm maintaining, and the solution that fixed everything was to force memory that has a _physical_ buffer address mask of 0x00000000ffffffff. And all machines I've seen the bug on had 4GB of RAM or less. So appearantly, without that force option, memory beyond the 4GB range was provided. But I can't tell whether this effect also counts for Linux, and I must admit I lack a deep enough ...
Apr 9, 1:14 pm 2010
Konrad Rzeszutek Wilk
Re: [LKML] Re: USB transfer_buffer allocations on 64bit ...
That isn't entirely true. The BIOS usually allocates a 256 MB ACPI/PCI hole that is under the 4GB. So end up with 3.7 GB, then the 256MB hole, and then right above the 4GB you the the remaining memory: 4.3GB. --
Apr 9, 1:25 pm 2010
Alan Stern
Re: USB transfer_buffer allocations on 64bit systems
That means DMA mapping cannot be the cause of the problem. :-( Alan Stern --
Apr 9, 12:34 pm 2010
Michal Nazarewicz
[PATCH 0/7] The FunctionFS composite function
Hello everyone, *Changes from Previous Version* This is the second version of the FunctionFS patchset. 1. A new wait_event_interruptible_locked() macro (in 6 variants) has been added and used in the f_fs.c instead of an open-coding it. This, again, was suggested by Greg. As a side effect of the above, also a patch for fs/timerfd.c is provided that uses the new facility (hence I'm ccing it to fsdevel and timerfd folks as well). 2. The __init/__exit tags from various ...
Apr 9, 12:21 pm 2010
Michal Nazarewicz
[PATCHv2 1/8] wait_event_interruptible_locked() interface
New wait_event_interruptible{,_exclusive}_locked{,_irq,_irqsave} macros added. They work just like versions without _locked* suffix but require the wait queue's lock to be held. Also __wake_up_locked() is now exported as to pair it with the above macros. The use case of this new facility is when one uses wait queue's lock to protect a data structure. This may be advantageous if the structure needs to be protected by a spinlock anyway. In particular, with additional spinlock the following ...
Apr 9, 12:21 pm 2010
Michal Nazarewicz
[PATCHv2 5/8] USB: g_ffs: the FunctionFS gadget driver
The Function Filesystem (FunctioFS) lets one create USB composite functions in user space in the same way as GadgetFS lets one create USB gadgets in user space. This allows creation of composite gadgets such that some of the functions are implemented in kernel space (for instance Ethernet, serial or mass storage) and other are implemented in user space. Signed-off-by: Michal Nazarewicz <m.nazarewicz@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Szyprowski ...
Apr 9, 12:21 pm 2010
Michal Nazarewicz
[PATCHv2 2/8] fs/timerfd.c: make use of wait_event_inter ...
This patch modifies the fs/timerfd.c to use the newly created wait_event_interruptible_locked_irq() macro. This replaces an open code implementation with a single macro call. Signed-off-by: Michal Nazarewicz <m.nazarewicz@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Szyprowski <m.szyprowski@samsung.com> --- fs/timerfd.c | 22 ++-------------------- 1 files changed, 2 insertions(+), 20 deletions(-) diff --git a/fs/timerfd.c b/fs/timerfd.c index 1bfc95a..4d2c371 ...
Apr 9, 12:21 pm 2010
Michal Nazarewicz
[PATCHv2 6/8] USB: ffs-test: FunctionFS testing program
This adds an example user-space FunctionFS driver which implements a source/sink interface used for testing. Signed-off-by: Michal Nazarewicz <m.nazarewicz@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Szyprowski <m.szyprowski@samsung.com> --- tools/usb/ffs-test.c | 554 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 554 insertions(+), 0 deletions(-) create mode 100644 tools/usb/ffs-test.c diff --git a/tools/usb/ffs-test.c ...
Apr 9, 12:21 pm 2010
Michal Nazarewicz
[PATCHv2 8/8] USB: testusb: testusb compatibility with F ...
The FunctionFS gadget may provide the source/sink interface not as the first interface (with id == 0) but some different interface hence a code to find the interface number is required. (Note that you will still configure the gadget to report configure host to handle 0x0525:0xa4ac devices using the usbtest driver.) Signed-off-by: Michal Nazarewicz <m.nazarewicz@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Szyprowski <m.szyprowski@samsung.com> --- ...
Apr 9, 12:21 pm 2010
Michal Nazarewicz
[PATCHv2 3/8] USB: gadget: __init and __exit tags removed
__init, __initdata and __exit tags have have been removed from various files to make it possible for gadgets that do not use the __init/__exit tags to use those. Files in question are related to: * the core composite framework, * the mass storage function (fixing a section mismatch) and * ethernet driver (ACM, ECM, RNDIS). Signed-off-by: Michal Nazarewicz <m.nazarewicz@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Szyprowski <m.szyprowski@samsung.com> --- ...
Apr 9, 12:21 pm 2010
Michal Nazarewicz
[PATCHv2 4/8] USB: f_fs: the FunctionFS driver
The FunctionFS is a USB composite function that can be used with the composite framework to create an USB gadget. From kernel point of view it is just a composite function with some unique behaviour. It may be added to an USB configuration only after the user space driver has registered by writing descriptors and strings (the user space program has to provide the same information that kernel level composite functions provide when they are added to the configuration). From user space point ...
Apr 9, 12:21 pm 2010
Gabriele
Problem between webcam and wireless card (all integrated)
Hi First of all sorry for my english... I'm gabriele from italy and i have this problem with *Ubuntu 9.10* and my *laptot O.book 2.1 Belinea*: when i try to use or test webcam with cheese or camorama or emesene, etc (or doing gstreamer-properties)... my internet connection disconnect and crash the wifi card. To restore all wireless' functions i must remove laptop's battery and boot normally . If i don't remove battery first of reboot my laptop the wireless card connect normally with the ...
Apr 9, 10:58 am 2010
=?ISO-8859-15?Q?Thom ...
Warning in ath9k after update from 2.6.33.1 to 2.6.33.2
Since I upgraded from 2.6.33.1 to .2, I get the following warning sometimes, related to wireless: ------------[ cut here ]------------ WARNING: at kernel/softirq.c:143 local_bh_enable_ip+0x82/0xb0() Hardware name: TECRA A11 Modules linked in: ipv6 rfcomm sco bnep l2cap bridge stp llc cpufreq_ondemand tun ext3 jbd btusb bluetooth uvcvideo videodev snd_seq_dummy v4l1_compat arc4 snd_seq_oss ecb v4l2_compat_ioctl32 snd_seq_midi_event snd_hda_codec_intelhdmi snd_seq snd_seq_device tpm_infineon ...
Apr 9, 10:21 am 2010
Roland Dreier
[GIT PULL] please pull infiniband.git
Linus, please pull from git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband.git for-linus This will get a few small fixes that have trickled in: Chien Tung (1): RDMA/nes: Correct cap.max_inline_data assignment in nes_query_qp() Dan Carpenter (1): IB/mlx4: Check correct variable for allocation failure Jani Nikula (1): IB/cm: Fix device_create() return value check Roland Dreier (1): Merge branches 'cma', 'misc', 'mlx4' and 'nes' into ...
Apr 9, 9:13 am 2010
Daniel Mack
Re: USB transfer_buffer allocations on 64bit systems
The DMA pointers do indeed look sane. I wanted to take a deeper look at this and set up a 64bit system today. However, I fail to see the problem here. Pedro, how much RAM does your machine have installed? Daniel --
Apr 9, 11:09 am 2010
Pedro Ribeiro Apr 9, 11:19 am 2010
Alan Stern
Re: USB transfer_buffer allocations on 64bit systems
I don't see anything suspicious. The transfer_buffer addresses repeat every 32 URBs, and the DMA addresses cycle almost entirely uniformly from 0x20000000 to 0x23ffffff in units of 0x2000 (there are a few gaps where the interval is a little bigger). Alan Stern --
Apr 9, 9:01 am 2010
Oliver Neukum
Re: USB transfer_buffer allocations on 64bit systems
It seems to me that in usbcore you can positively know that a buffer will be mapped. However if the mapping is not done in usbcore you cannot know what the HCD driver will do to a buffer, in particular you don't know whether it will be processed by PIO or mapped for DMA. Maybe I understand this wrongly. Which code exactly were you refering to? Regards Oliver --
Apr 9, 1:51 pm 2010
Alan Stern
Re: USB transfer_buffer allocations on 64bit systems
Yes I can, because the code that makes this decision is part of usbcore and it is under my control. Alan Stern --
Apr 9, 8:15 am 2010
Alan Stern
Re: USB transfer_buffer allocations on 64bit systems
Not true. Consider: The driver allocates a 16-byte buffer (xbuf) divided up into four sets of four bytes, and sets urb[i].transfer_buffer_dma = xbuf_dma + 4*i; Then usb_submit_urb(urb[i]) will copy the appropriate four bytes to a bounce buffer and map the bounce buffer. Accesses to the other parts of xbuf won't violate the cacheline rules, because xbuf isn't mapped for DMA -- only the bounce buffer is. When urb[i] completes, the bounce buffer contents will be copied back to the ...
Apr 9, 7:41 am 2010
Oliver Neukum
Re: USB transfer_buffer allocations on 64bit systems
I think you are assuming that either every or no part of the buffer is mapped for DMA in place. I don't think you can assume that. Regards Oliver --
Apr 9, 7:50 am 2010
Konrad Rzeszutek Wilk
[PATCH] Update iBFT to 1.03
This patch writen by Peter Jones and Mike Christie expands on the iBFT firmware driver to support v1.03 of the spec. The spec in question is available at: ftp://ftp.software.ibm.com/systems/support/bladecenter/iscsi_boot_firmware_table_v1.03... Linux kernel has support for the iBFT 1.0 spec and this update to 1.03 adds three more things: - There is now a ACPI table either called 'iBFT' or 'IBFT' that should be parsed. - If running with UEFI, only look at the ACPI table. - If not ...
Apr 9, 7:21 am 2010
Konrad Rzeszutek Wilk
[PATCH 2/2] ibft: For UEFI machines actually do scan ACP ...
For machines with IBFT 1.03 do scan the ACPI table for 'iBFT' or for 'IBFT'. If the machine is in UEFI mode, only do the ACPI table scan. For all other machines (pre IBFT 1.03) do a memory scan if not found in the ACPI tables. Author: Konrad Rzeszutek Wilk <konrad@kernel.org> Acked-by: Peter Jones <pjones@redhat.com> Tested-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: Konrad Rzeszutek Wilk <konrad@kernel.org> --- drivers/firmware/iscsi_ibft_find.c | 31 ...
Apr 9, 7:21 am 2010
Konrad Rzeszutek Wilk
[PATCH 1/2] ibft: Update iBFT handling for v1.03 of the spec.
From: Peter Jones <pjones@redhat.com> - Use struct acpi_table_ibft instead of struct ibft_table_header - Don't do reserve_ibft_region() on UEFI machines (section 1.4.3.1) - If ibft_addr isn't initialized when ibft_init() is called, check for ACPI-based tables. Author: Peter Jones <pjones@redhat.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad@kernel.org> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> --- drivers/firmware/iscsi_ibft.c | 30 ++++++++++++++++++------------ ...
Apr 9, 7:21 am 2010
Martin Schwidefsky
[GIT PULL] s390 patches for 2.6.34-rc3
Hi Linus, please pull from 'for-linus' branch of git://git390.marist.edu/pub/scm/linux-2.6.git for-linus to receive the following updates: Christian Borntraeger (1): [S390] s390: disable change bit override Dan Carpenter (1): [S390] sclp_async: potential buffer overflow Heiko Carstens (1): [S390] nss: add missing .previous statement to asm function Julia Lawall (1): [S390] arch/s390/kernel: Add missing unlock Martin Schwidefsky (3): [S390] fix ...
Apr 9, 7:18 am 2010
Maurice Dawson
[PATCH 30/30] Staging: comedi: fix over 80 character cod ...
This is a re-submitted patch to the ni_labpc.c file that fixes up over 80 characters warnings found by the checkpatch.pl tool Signed-off-by: Maurice Dawson <mauricedawson2699@googlemail.com> --- drivers/staging/comedi/drivers/ni_labpc.c | 258 ++++++++++++++++------------ 1 files changed, 147 insertions(+), 111 deletions(-) diff --git a/drivers/staging/comedi/drivers/ni_labpc.c b/drivers/staging/comedi/drivers/ni_labpc.c index 4eaf31f..becbe47 100644 --- ...
Apr 9, 7:13 am 2010
Alexander Clouter
Re: [just for fair] Users of GNU Linux are treated as pi ...
Condrates on figuratively 'curling' one out on the rug in public view. Also, please remember to pick up your toys on the way out... Cheers -- Alexander Clouter .sigmonster says: Actually, my goal is to have a sandwich named after me. --
Apr 9, 9:57 am 2010
jing zhang
Re: [just for fair] Users of GNU Linux are treated as pi ...
Hi all Then please read Ted'd email. Thanks -zj ---------- Forwarded message ---------- From: tytso@mit.edu Date: Tue, 6 Apr 2010 10:21:03 -0400 Subject: Re: [PATCH] ext4: memory leakage in ext4_mb_init() To: jing zhang <zj.barak@gmail.com> Cc: Eric Sandeen <sandeen@redhat.com>, "Aneesh Kumar K. V" <aneesh.kumar@linux.vnet.ibm.com>, linux-ext4 <linux-ext4@vger.kernel.org>, Andreas Dilger <adilger@sun.com>, Dave Kleikamp <shaggy@linux.vnet.ibm.com> Well, the ...
Apr 9, 7:02 am 2010
Jan Blunck
[PATCH 00/12] Multiple file->f_pos/nonseekable_open/llse ...
This is a repost of a patch series I already posted in November 2009. This time I left out the patch that removes the BKL from default_llseek() since this should go through Frederic's tree. This series mostly consists of fixing direct modifications of file->f_pos and some additional cases where nonseekable_open() can be used. The rest of this series is unrelated to but a preparation for the BKL removal from default_llseek(). Thanks, Jan Jan Blunck (12): osst: Update ppos instead of using ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 06/12] zcrypt: Use nonseekable_open()
zcrypt doesn't even allow to read/write the files it opens. So seeking on it shouldn't fall back to defaults either but should be disallowed as well. Signed-off-by: Jan Blunck <jblunck@suse.de> --- drivers/s390/crypto/zcrypt_api.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/s390/crypto/zcrypt_api.c b/drivers/s390/crypto/zcrypt_api.c index ba50fe0..18a986d 100644 --- a/drivers/s390/crypto/zcrypt_api.c +++ b/drivers/s390/crypto/zcrypt_api.c @@ -301,7 ...
Apr 9, 7:00 am 2010
Alexey Dobriyan
Re: [PATCH 04/12] frv: remove "struct file *" argument f ...
It wasn't missed, it was deliberately left out because I didn't understand what's going on there. I mean, sysctl handler touching ->f_pos, come on! --
Apr 9, 9:23 am 2010
Jan Blunck
[PATCH 01/12] osst: Update ppos instead of using file->f_pos
osst_read()/osst_write() modify file->f_pos directly instead of the ppos given to them. The VFS later updates the file->f_pos and overwrites it with the value of ppos. Signed-off-by: Jan Blunck <jblunck@suse.de> --- drivers/scsi/osst.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/scsi/osst.c b/drivers/scsi/osst.c index acb8358..9dc0b9a 100644 --- a/drivers/scsi/osst.c +++ b/drivers/scsi/osst.c @@ -3586,7 +3586,7 @@ if (SRpnt) printk(KERN_ERR ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 02/12] flash_read should update ppos instead of f ...
flash_read() updates file->f_pos directly instead of the ppos given. The VFS later updates the file->f_pos and overwrites it with the unchanged value of ppos. Signed-off-by: Jan Blunck <jblunck@suse.de> --- drivers/sbus/char/flash.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/sbus/char/flash.c b/drivers/sbus/char/flash.c index 4108347..12cd438 100644 --- a/drivers/sbus/char/flash.c +++ b/drivers/sbus/char/flash.c @@ -106,9 +106,9 @@ static ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 04/12] frv: remove "struct file *" argument from ...
Seems that Alexey Dobriyan missed this usage of the file argument when removing it from ->proc_handler in commit 8d65af789f3e2cf4cfbdbf71a0f7a61ebcd41d38. Signed-off-by: Jan Blunck <jblunck@suse.de> --- arch/frv/kernel/sysctl.c | 18 ++++++++++-------- 1 files changed, 10 insertions(+), 8 deletions(-) diff --git a/arch/frv/kernel/sysctl.c b/arch/frv/kernel/sysctl.c index 035516c..05afc05 100644 --- a/arch/frv/kernel/sysctl.c +++ b/arch/frv/kernel/sysctl.c @@ -47,8 +47,9 @@ static void ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 03/12] eeprom_read()/eeprom_write() should update ...
eeprom_read()/eeprom_write() modify file->f_pos directly instead of the ppos given. The VFS later updates the file->f_pos and overwrites it with the unchanged value of ppos. Since nothing touches the struct file in eeprom_read()/eeprom_write() now, the on stack allocated struct file in eeprom_read_buf()/eeprom_write_buf() can be removed as well. Signed-off-by: Jan Blunck <jblunck@suse.de> --- arch/cris/arch-v10/drivers/eeprom.c | 34 +++++++++++++--------------------- 1 files changed, 13 ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 12/12] Documentation/filesystems/Locking: Update ...
The inode's i_size is not protected by the big kernel lock. Therefore it does not make sense to recommend taking the BKL in filesystems llseek operations. Instead it should use the inode's mutex or use just use i_size_read() instead. Add a note that this is not protecting file->f_pos. Signed-off-by: Jan Blunck <jblunck@suse.de> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Christoph Hellwig <hch@infradead.org> Cc: Frédéric Weisbecker ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 11/12] Do not fallback to default_llseek() when r ...
Do not use the fallback default_llseek() if the readdir operation of the filesystem still uses the big kernel lock. Since llseek() modifies file->f_pos of the directory directly it may need locking to not confuse readdir which usually uses file->f_pos directly as well. Since the special characteristics of the BKL (unlocked on schedule) are not necessary in this case, the inode mutex can be used for locking as provided by generic_file_llseek(). This is only possible since all filesystems, ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 10/12] st: Use noop_llseek() instead of default_l ...
st_open() suggests that llseek() doesn't work: "We really want to do nonseekable_open(inode, filp); here, but some versions of tar incorrectly call lseek on tapes and bail out if that fails. So we disallow pread() and pwrite(), but permit lseeks." Instead of using the fallback default_llseek() the driver should use noop_llseek() which leaves the file->f_pos untouched but succeeds. Signed-off-by: Jan Blunck <jblunck@suse.de> --- drivers/scsi/st.c | 1 + 1 files changed, 1 insertions(+), ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 09/12] osst: Use noop_llseek() instead of default ...
__os_scsi_tape_open() suggests that llseek() doesn't work: "We really want to do nonseekable_open(inode, filp); here, but some versions of tar incorrectly call lseek on tapes and bail out if that fails. So we disallow pread() and pwrite(), but permit lseeks." Instead of using the fallback default_llseek() the driver should use noop_llseek() which leaves the file->f_pos untouched but succeeds. Signed-off-by: Jan Blunck <jblunck@suse.de> --- drivers/scsi/osst.c | 1 + 1 files changed, 1 ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 08/12] Introduce noop_llseek()
This is an implementation of ->llseek useable for the rare special case when userspace expects the seek to succeed but the (device) file is actually not able to perform the seek. In this case you use noop_llseek() instead of falling back to the default implementation of ->llseek. Signed-off-by: Jan Blunck <jblunck@suse.de> --- fs/read_write.c | 17 +++++++++++++++++ include/linux/fs.h | 1 + 2 files changed, 18 insertions(+), 0 deletions(-) diff --git a/fs/read_write.c ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 07/12] rtc-m41t80: Use nonseekable_open()
Use nonseekable_open() for this since seeking is not supported anyway. Signed-off-by: Jan Blunck <jblunck@suse.de> --- drivers/rtc/rtc-m41t80.c | 6 +----- 1 files changed, 1 insertions(+), 5 deletions(-) diff --git a/drivers/rtc/rtc-m41t80.c b/drivers/rtc/rtc-m41t80.c index 60fe266..1e2ed76 100644 --- a/drivers/rtc/rtc-m41t80.c +++ b/drivers/rtc/rtc-m41t80.c @@ -595,10 +595,6 @@ static void wdt_disable(void) static ssize_t wdt_write(struct file *file, const char __user *buf, ...
Apr 9, 7:00 am 2010
Jan Blunck
[PATCH 05/12] mISDN: Remove unnecessary test on f_pos
This test is not doing anything since it is always false if the mISDN_read() is called from vfs_read(). Besides that the driver uses nonseekable_open() and is not using off or file->f_pos anywhere. Signed-off-by: Jan Blunck <jblunck@suse.de> --- drivers/isdn/mISDN/timerdev.c | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/drivers/isdn/mISDN/timerdev.c b/drivers/isdn/mISDN/timerdev.c index 5b7e9bf..0a8b440 100644 --- a/drivers/isdn/mISDN/timerdev.c +++ ...
Apr 9, 7:00 am 2010
t.m.gerlach
[PATCH] drivers/video/efifb.c: Framebuffer for NVIDIA 94 ...
Description of patch: --------------------- This is a patch for the EFI framebuffer driver to enable the framebuffer of the NVIDIA 9400M as found in MacBook Pro (MBP) 5,1 and up. The framebuffer of the NVIDIA graphic cards are located at the following addresses in memory: 9400M: 0xC0010000 9600M GT: 0xB0030000 The patch delivered right here only provides the memory location of the framebuffer of the 9400M device. The 9600M GT is not covered. It is assumed that the 9400M is used when ...
Apr 9, 6:01 am 2010
Gunnar Gudvardarson
[PATCH] Staging: asus_oled: asus_oled.c removed an unnes ...
This is the first linux kernel patch i have ever made, i don't even know the C programming language except reading the syntax (basic) It didn't compile on my machine due to invalid configuration of something on my machine, because i have not yet learned how to configure the compiler. Signed-off-by: Gunnar Gudvardarson <gunni@wave.is> --- drivers/staging/asus_oled/asus_oled.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/staging/asus_oled/asus_oled.c ...
Apr 9, 6:01 am 2010
Greg KH
Re: [PATCH] Staging: asus_oled: asus_oled.c removed an u ...
Then I would strongly encourage you to either learn it, or not modify Especially as you were not able to build test the patch, which is a basic requirement for submitting code changes. Try reading the kernel file, Documentation/HOWTO for pointers on how to find information to learn the C language, and to learn how to build a kernel on your own. best of luck, greg k-h --
Apr 9, 10:22 am 2010
=?ISO-8859-1?Q?=C9ri ...
Re: [PATCH] lis3lv02d: provide means to disable polled i ...
Are you saying there is a 20% CPU usage even when the joystick interface is not open? This should not happen (and this is not happening on my laptop). The polling should happen only when a userspace app opens the joystick interface (like running neverball). So I'd tend to think it's more due to a misconfiguration of the system (like xserver using the joystick interface as a pointer device) or it's a bug in the way we set up the polling. Could you investigate and let ...
Apr 9, 6:29 am 2010
Jean Delvare
Re: [lm-sensors] [PATCH] lis3lv02d: provide means to dis ...
I would randomly blame hal. It keeps my IR remote control device opened all the time and I have no idea why. -- Jean Delvare --
Apr 9, 11:11 am 2010
Jiri Kosina
[PATCH] lis3lv02d: provide means to disable polled input ...
lis3lv02d driver creates emulated joystick interface for events reported by the sensor. Because of HW, this has to be implemented as polled input device, with 20Hz frequency. This is reported to create 20% CPU usage increase (and proportionaly higher power consumption) just for the ipolldevd kernel thread (which is used to read the sensor). As most users probably only use the freefall functionality of the driver and not the joystick interface, provide means for disabling the ...
Apr 9, 5:56 am 2010
Jiri Kosina
Re: [PATCH] lis3lv02d: provide means to disable polled i ...
Marcin originally reported this to me. Marcin, could you please check 'lsof' output to see whether the joystick interface has been open by some application? Thanks, -- Jiri Kosina SUSE Labs, Novell Inc. --
Apr 9, 6:32 am 2010
Frans Pop
Re: [PATCH] lis3lv02d: provide means to disable polled i ...
I've also never seen this problem on my HP 2510p. --
Apr 9, 2:41 pm 2010
Frederic Weisbecker
[PATCH] perf: Make clock software events consistent with ...
The cpu/task clock events implement their own version of exclusion on top of exclude_user and exclude_kernel. The result is that when the event triggered in the kernel but we have exclude_kernel set, we try to rewind using task_pt_regs. There are two side effects of this: - we call task_pt_regs even on kernel threads, which doesn't give us the desired result. - if the event occured in the kernel, we shouldn't rewind to the user context. We want to actually ignore the ...
Apr 9, 5:02 am 2010
Sanjoy Mahajan
Re: [Bug #15544] black screen upon S3 resume, syslog has ...
I haven't seen the bug recur since March 23rd, although I'm running the same kernel (vanilla 2.6.33). The X server has been updated slightly to Debian's xserver-xorg-core 1.7.6. --
Apr 9, 4:33 am 2010
Rafael J. Wysocki
Re: [Bug #15544] black screen upon S3 resume, syslog has ...
Thanks for the update. I'm going to close the bug now, please reopen if you see the problem again. Rafael --
Apr 9, 12:52 pm 2010
Prabhu Chawandi
Writing to NAND, Which is not visible to USER
Hi All, I want to write someting to the NAND flash, which is not a part of partitioning. say , out of 128 MB , I am using 64 MB which I have partitioned using MTD, but I have to access the other 64 MB. Can any one help me or give me any ideas ? Is it possible to write using assmbly code. I am using MIPS board. Thanks In advance !!! Prabhu --
Apr 9, 4:31 am 2010
=?ISO-8859-2?Q?=A3uk ...
kernel BUG, kernel problem
Hello, I have terrible problem with kernel 2.6.32.2. My server after running a few days (3-4) system freeze. Sometimes I'm able to login but I can do nothing (even execute any command). In logs I can see kernel crash. Here is output: Apr 7 07:05:22 s4 kernel: ------------[ cut here ]------------ Apr 7 07:05:22 s4 kernel: kernel BUG at kernel/workqueue.c:287! Apr 7 07:05:22 s4 kernel: invalid opcode: 0000 [#1] SMP Apr 7 07:05:22 s4 kernel: last sysfs file: ...
Apr 9, 3:12 am 2010
Jonathan Woithe
Re: 2.6.33: libata issues with VIA SATA/PATA controller
Hi Jeff I was able to try this on the machine just before I left. Unfortunately 2.6.34-rc3 does not fix the problem - it behaves exactly like 2.6.33. In terms of error messages, there is nothing more displayed beyond that which I reported in the initial email except for this: SStatus 113, SControl 300 As far as I can tell, that (plus the previously reported details) is all that's printed by the kernel in connection with the failure. I'll look into the alternative console methods to ...
Apr 9, 4:14 am 2010
Jeff Garzik
Re: 2.6.33: libata issues with VIA SATA/PATA controller
We won't be able to help without the full dmesg from the failing kernel... Jeff --
Apr 9, 4:29 am 2010
Alan Cox
[PATCH] IPC driver for Intel Mobile Internet Device (MID ...
It would be nice to get this into the tree in some form as a pile of the driver stuff pending from Intel depends upon it. It's currently slotted into arch/x86 as the IPC interface is very much part of the hardware, so don't be fooled by its apparent PCI interface. -- From: Sreedhara DS <sreedhara.ds@intel.com> The IPC is used to bridge the communications between kernel and SCU on some embedded Intel x86 platforms. (Some API tweaking Alan Cox) Signed-off-by: Sreedhara DS ...
Apr 9, 3:29 am 2010
Stephane Eranian
[BUG] perf_events: PERF_FORMAT_GROUP fails
Hi, I have been running some tests where I count and I am using PERF_FORMAT_GROUP. I want to extract all counts in one read(). It turns out that this does not work as expected. I would expect that if I create an event group, I can ALWAYS read it with a single read(). Turns out, it depends on the state of the events. If the events are still attached to a task then the read() returns the expected data which is: /* * { u64 nr; * { u64 time_enabled; } && ...
Apr 9, 3:22 am 2010
Amerigo Wang
[Patch v7 0/3] net: reserve ports for applications using ...
Changes from the previous version: - Update to latest Linus' tree; - Address Eric B.'s concern, copy the whole bitmap instead of set one by one. -------------> This patch introduces /proc/sys/net/ipv4/ip_local_reserved_ports which allows users to reserve ports for third-party applications. The reserved ports will not be used by automatic port assignments (e.g. when calling connect() or bind() with port number 0). Explicit port allocation behavior is unchanged. There are still some miss ...
Apr 9, 3:10 am 2010
Tetsuo Handa
Re: [Patch 3/3] net: reserve ports for applications usin ...
Hello. You should not overwrite ret with -EAGAIN when idr_get_new_above() returned -ENOSPC. I don't know about idr, thus I don't know whether if (!ret && inet_is_reserved_local_port(port)) ret = -EAGAIN; You should not unconditionally "goto again;". This one needs to be if (inet_is_reserved_local_port(rover)) next: sctp_spin_unlock(&head->lock); +next_nolock: } while (--remaining > 0); otherwise, it will loop forever if all ports were reserved. --
Apr 9, 6:21 am 2010
Changli Gao
Re: [Patch 1/3] sysctl: refactor integer handling proc code
the function name implies that it is used to parse unsigned long, so It seems that ledding white space should be allowed, so this check These functions have so much lines of code. I think you can make them less. Please refer to strsep(). -- Regards, Changli Gao(xiaosuo@gmail.com)
Apr 9, 3:49 am 2010
Octavian Purdila
Re: [Patch 2/3] sysctl: add proc_do_large_bitmap
A decimal comma separated ranges seems the best option for this feature, and unfortunately both of the above functions only support hexadecimal and no ranges. --
Apr 9, 5:35 am 2010
Amerigo Wang
[Patch 1/3] sysctl: refactor integer handling proc code
From: Octavian Purdila <opurdila@ixiacom.com> As we are about to add another integer handling proc function a little bit of cleanup is in order: add a few helper functions to improve code readability and decrease code duplication. In the process a bug is also fixed: if the user specifies a number with more then 20 digits it will be interpreted as two integers (e.g. 10000...13 will be interpreted as 100.... and 13). Behavior for EFAULT handling was changed as well. Previous to this patch, ...
Apr 9, 3:11 am 2010
Amerigo Wang
[Patch 2/3] sysctl: add proc_do_large_bitmap
From: Octavian Purdila <opurdila@ixiacom.com> The new function can be used to read/write large bitmaps via /proc. A comma separated range format is used for compact output and input (e.g. 1,3-4,10-10). Writing into the file will first reset the bitmap then update it based on the given input. Signed-off-by: Octavian Purdila <opurdila@ixiacom.com> Signed-off-by: WANG Cong <amwang@redhat.com> Cc: Eric W. Biederman <ebiederm@xmission.com> --- Index: ...
Apr 9, 3:11 am 2010
Amerigo Wang
[Patch 3/3] net: reserve ports for applications using fi ...
From: Octavian Purdila <opurdila@ixiacom.com> This patch introduces /proc/sys/net/ipv4/ip_local_reserved_ports which allows users to reserve ports for third-party applications. The reserved ports will not be used by automatic port assignments (e.g. when calling connect() or bind() with port number 0). Explicit port allocation behavior is unchanged. Signed-off-by: Octavian Purdila <opurdila@ixiacom.com> Signed-off-by: WANG Cong <amwang@redhat.com> Cc: Neil Horman ...
Apr 9, 3:11 am 2010
Changli Gao
Re: [Patch 2/3] sysctl: add proc_do_large_bitmap
We have bitmap_scnprintf() and bitmap_parse_user(), why invent a new suite? -- Regards, Changli Gao(xiaosuo@gmail.com) --
Apr 9, 3:33 am 2010
Octavian Purdila
Re: [Patch 1/3] sysctl: refactor integer handling proc code
Hi and thanks for reviewing. My intention was to signal that the argument is unsigned long and that the sign come separate in neg, but I am OK with changing the function name to Leading white space is skipped with proc_skip_space before calling this I don't think it will work out, \0 is an accepted trailer for many of the We need negatives in proc_dointvec, again we can change the function name if it will clear things up. Hmm, the input its pretty permissive and maybe this ...
Apr 9, 6:40 am 2010
xiaohui.xin
[RFC][PATCH v3 0/3] Provide a zero-copy method on KVM vi ...
The idea is simple, just to pin the guest VM user space and then let host NIC driver has the chance to directly DMA to it. The patches are based on vhost-net backend driver. We add a device which provides proto_ops as sendmsg/recvmsg to vhost-net to send/recv directly to/from the NIC driver. KVM guest who use the vhost-net backend may bind any ethX interface in the host side to get copyless data transfer thru guest virtio-net frontend. The scenario is like this: The guest virtio-net driver ...
Apr 9, 2:37 am 2010
xiaohui.xin
[RFC][PATCH v3 1/3] A device for zero-copy based on KVM ...
From: Xin Xiaohui <xiaohui.xin@intel.com> Add a device to utilize the vhost-net backend driver for copy-less data transfer between guest FE and host NIC. It pins the guest user space to the host memory and provides proto_ops as sendmsg/recvmsg to vhost-net. Signed-off-by: Xin Xiaohui <xiaohui.xin@intel.com> Signed-off-by: Zhao Yu <yzhao81@gmail.com> Reviewed-by: Jeff Dike <jdike@linux.intel.com> --- memory leak fixed, kconfig made, do_unbind() made, mp_chr_ioctl() cleaned up ...
Apr 9, 2:37 am 2010
xiaohui.xin
[RFC][PATCH v3 3/3] Let host NIC driver to DMA to guest ...
From: Xin Xiaohui <xiaohui.xin@intel.com> The patch let host NIC driver to receive user space skb, then the driver has chance to directly DMA to guest user space buffers thru single ethX interface. Signed-off-by: Xin Xiaohui <xiaohui.xin@intel.com> Signed-off-by: Zhao Yu <yzhao81@gmail.com> Reviewed-by: Jeff Dike <jdike@linux.intel.com> --- alloc_skb() is cleanup by Jeff Dike <jdike@linux.intel.com> include/linux/netdevice.h | 69 ++++++++++++++++++++++++++++++++++++++++- ...
Apr 9, 2:37 am 2010
xiaohui.xin
[RFC][PATCH v3 2/3] Provides multiple submits and asynch ...
From: Xin Xiaohui <xiaohui.xin@intel.com> The vhost-net backend now only supports synchronous send/recv operations. The patch provides multiple submits and asynchronous notifications. This is needed for zero-copy case. Signed-off-by: Xin Xiaohui <xiaohui.xin@intel.com> --- drivers/vhost/net.c | 203 +++++++++++++++++++++++++++++++++++++++++++++++-- drivers/vhost/vhost.c | 115 ++++++++++++++++------------ drivers/vhost/vhost.h | 15 ++++ 3 files changed, 278 insertions(+), 55 ...
Apr 9, 2:37 am 2010
Jens Axboe
[GIT PULL] block bits for 2.6.34
Hi Linus, I apologize for this being somewhat larger than it usually is at that point, it's mostly due to testing which has held off the submission longer than I really wanted. But it's mostly good fixes, the odd one out is the VFS writeback patch which makes the sb pinning a lot nicer. It's been in -next for a long time, well over a month. So I consider it safe. The drbd patches are largely focused on making 4kb block sizes work, it would oops before. The rest is mostly regression fixes ...
Apr 9, 12:45 am 2010
Giuseppe CAVALLARO
re-adding clocksource_get_next ?
Hello! this function was removed in the past but I've not clear all the details. While testing LLTng, I wrote the patch, in attachment, that re-adds it again. The clocksource_get_next returns the first clock source available (without looking at the rating). In my environment, a clock source is a TMU channel (e.g. TMU1) and, indeed, clocksource_get_next works fine. Let me know if it makes sense or if I'm missing something. Best Regards, Giuseppe
Apr 8, 11:53 pm 2010
john stultz
Re: re-adding clocksource_get_next ?
On Thu, Apr 8, 2010 at 11:53 PM, Giuseppe CAVALLARO Could you provide some more details as to why you need raw access to the clocksource, instead of using something like ktime_get(), getrawmonotonic() or sched_clock()? thanks -john --
Apr 9, 1:58 pm 2010
Michael Neuling
[PATCH 4/5] sched: Mark the balance type for use in need ...
need_active_balance() gates the asymmetric packing based due to power save logic, but for packing we don't care. This marks the type of balanace we are attempting to do perform from f_b_g() and stops need_active_balance() power save logic gating a balance in the asymmetric packing case. Signed-off-by: Michael Neuling <mikey@neuling.org> --- kernel/sched_fair.c | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) Index: ...
Apr 8, 11:21 pm 2010
Michael Neuling
[PATCH 1/5] sched: fix capacity calculations for SMT4
When calculating capacity we use the following calculation: capacity = DIV_ROUND_CLOSEST(power, SCHED_LOAD_SCALE); In SMT2, power will be 1178/2 (provided we are not scaling power with freq say) and SCHED_LOAD_SCALE will be 1024, resulting in capacity being 1. With SMT4 however, power will be 1178/4, hence capacity will end up as 0. Fix this by ensuring capacity is always at least 1 after this calculation. Signed-off-by: Michael Neuling <mikey@neuling.org> --- I'm not sure ...
Apr 8, 11:21 pm 2010
Michael Neuling
[PATCH 5/5] sched: make fix_small_imbalance work with as ...
With the asymmetric packing infrastructure, fix_small_imbalance is causing idle higher threads to pull tasks off lower threads. This is being caused by an off-by-one error. Signed-off-by: Michael Neuling <mikey@neuling.org> --- I'm not sure this is the right fix but without it, higher threads pull tasks off the lower threads, then the packing pulls it back down, etc etc and tasks bounce around constantly. --- kernel/sched_fair.c | 2 +- 1 file changed, 1 insertion(+), 1 ...
Apr 8, 11:21 pm 2010
Michael Neuling
[PATCH 0/5] sched: asymmetrical packing for POWER7 SMT4
This patch series implements asymmetric SMT packing which ensures consistently good performance on POWER7. I'm no scheduler expert so these probably need some review. It works for my simple test case on a POWER7 with SMT4. I can now run a number of CPU bound processes and they are pulled down to lower threads giving the best performance consistently. Suresh: some of this touches code you changed recently, so you may want to test in your environment. The 1st patch is a fix for SMT4 in ...
Apr 8, 11:21 pm 2010
Michael Neuling
[PATCH 3/5] powerpc: enabled asymmetric SMT scheduling o ...
The POWER7 core has dynamic SMT mode switching which is controlled by the hypervisor. There are 3 SMT modes: SMT1 uses thread 0 SMT2 uses threads 0 & 1 SMT4 uses threads 0, 1, 2 & 3 When in any particular SMT mode, all threads have the same performance as each other (ie. at any moment in time, all threads perform the same). The SMT mode switching works such that when linux has threads 2 & 3 idle and 0 & 1 active, it will cede (H_CEDE hypercall) threads 2 and 3 in the idle loop and the ...
Apr 8, 11:21 pm 2010
Michael Neuling
Re: [PATCH 3/5] powerpc: enabled asymmetric SMT scheduli ...
Oops... before anyone else laughs at me, I'm changing this to use printk_once. --
Apr 8, 11:48 pm 2010
Michael Neuling
[PATCH 2/5] sched: add asymmetric packing option for sib ...
Some CPUs perform better when tasks are run on lower thread numbers. In the case of POWER7, when higher threads are idled, the core can run in lower SMT modes and hence perform better. This creates a new sd flag to prefer lower threads. Based heavily on patch from Peter Zijlstra. Signed-off-by: Michael Neuling <mikey@neuling.org> --- Peter: Since this is based mainly off your initial patch, it should have your signed-off-by too, but I didn't want to add without your permission. Can I ...
Apr 8, 11:21 pm 2010
Yinghai Lu
[PATCH -v12 00/39] use lmb with x86
the new lmb could be used to early_res in x86. Suggested by: David, Ben, and Thomas -v6: change sequence as requested by Thomas -v7: seperate them to more patches -v8: add boundary checking to make sure not free partial page. -v9: use lmb_debug to control print out of reserve_lmb. add e820 clean up, and e820 become __initdata -v10:use lmb.rmo_size and ARCH_DISCARD_LMB according to Michael change name to lmb_find_area/reserve_lmb_area/free_lmb_area, according to Michael ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 22/39] x86, lmb: Add lmb_find_area_size()
size is returned according free range. Will be used to find free ranges for early_memtest and memory corruption check Do not mess it up with mm/lmb.c yet. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/mm/Makefile | 2 + arch/x86/mm/lmb.c | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 90 insertions(+), 0 deletions(-) create mode 100644 arch/x86/mm/lmb.c diff --git a/arch/x86/mm/Makefile b/arch/x86/mm/Makefile index a4c7683..8ab0505 ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 20/39] lmb: Add ARCH_DISCARD_LMB to put lmb code ...
So those lmb bits could be released after kernel is booted up. Arch code could define ARCH_DISCARD_LMB in asm/lmb.h, __init_lmb will become __init, __initdata_lmb will becom __initdata x86 code will use that. -v2: use ARCH_DISCARD_LMB according to Michael Ellerman Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 8 +++++++ mm/lmb.c | 54 ++++++++++++++++++++++++++++++-------------------- 2 files changed, 40 insertions(+), 22 deletions(-) diff ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 09/39] bootmem, x86: Add weak version of reserve_ ...
It will be used lmb_to_bootmem converting It is an wrapper for reserve_bootmem, and x86 64bit is using special one. Also clean up that version for x86_64. We don't need to take care of numa path for that, bootmem can handle it how Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/mm/init_32.c | 6 ------ arch/x86/mm/init_64.c | 20 ++------------------ mm/bootmem.c | 6 ++++++ 3 files changed, 8 insertions(+), 24 deletions(-) diff --git ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 10/39] lmb: Add lmb_to_bootmem()
lmb_to_bootmem() will reserve lmb.reserved.region in bootmem after bootmem is set up. We can use it to with all arches that support lmb later. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 2 ++ mm/lmb.c | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 0 deletions(-) diff --git a/include/linux/lmb.h b/include/linux/lmb.h index 598662f..1e236d1 100644 --- a/include/linux/lmb.h +++ b/include/linux/lmb.h @@ -91,6 +91,8 ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 05/39] lmb: Seperate region array from lmb_region ...
lmb_init() will connect them back. Add nr_regions in struct lmb_region to track region array size. So later We can install dynamically allocated region array to that pointer Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 3 ++- mm/lmb.c | 9 ++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/include/linux/lmb.h b/include/linux/lmb.h index f3d1433..e14ea8d 100644 --- a/include/linux/lmb.h +++ b/include/linux/lmb.h @@ ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 39/39] x86: have nobootmem version setup_bootmem_ ...
We can reduce #ifdef number from 3 to one in init_32.c Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/mm/init_32.c | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-) diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c index c01c711..dfdd035 100644 --- a/arch/x86/mm/init_32.c +++ b/arch/x86/mm/init_32.c @@ -771,11 +771,9 @@ static unsigned long __init setup_node_bootmem(int nodeid, return bootmap + bootmap_size; } -#endif void __init ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 33/39] x86: Change e820_any_mapped() to __init
We don't need to expose e820_any_mapped() anymore Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/kernel/e820.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c index be6e1e6..471784b 100644 --- a/arch/x86/kernel/e820.c +++ b/arch/x86/kernel/e820.c @@ -47,9 +47,10 @@ EXPORT_SYMBOL(pci_mem_start); /* * This function checks if any part of the range <start,end> is mapped * with type. + * ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 34/39] x86: Use walk_system_ream_range() instead ...
So we can make e820 to be __initdata Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/kernel/tboot.c | 22 +++++++++------------- 1 files changed, 9 insertions(+), 13 deletions(-) diff --git a/arch/x86/kernel/tboot.c b/arch/x86/kernel/tboot.c index cc2c604..cf27d64 100644 --- a/arch/x86/kernel/tboot.c +++ b/arch/x86/kernel/tboot.c @@ -170,34 +170,30 @@ static void tboot_create_trampoline(void) #ifdef CONFIG_ACPI_SLEEP -static void add_mac_region(phys_addr_t start, ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 38/39] lmb: move __alloc_memory_core_early() to n ...
We can remove #ifdef in mm/page_alloc.c and change that function to static Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/mm.h | 2 -- mm/nobootmem.c | 21 +++++++++++++++++++++ mm/page_alloc.c | 24 ------------------------ 3 files changed, 21 insertions(+), 26 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 7774e1d..2a14361 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1161,8 +1161,6 @@ int ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 32/39] x86: Add get_centaur_ram_top()
So we can avoid to access e820.map[] directly. later we could move e820 to static and _initdata Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/include/asm/e820.h | 9 ++++++ arch/x86/kernel/cpu/centaur.c | 53 +------------------------------------- arch/x86/kernel/e820.c | 56 +++++++++++++++++++++++++++++++++++++++++ arch/x86/kernel/setup.c | 2 + 4 files changed, 69 insertions(+), 51 deletions(-) diff --git a/arch/x86/include/asm/e820.h ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 31/39] x86: Use wake_system_ram_range() instead o ...
Move apterture_valid back to .c and early path still use e820_any_mapped() So later we can make e820_any_mapped() to _init Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/include/asm/gart.h | 22 ---------------------- arch/x86/kernel/aperture_64.c | 22 ++++++++++++++++++++++ drivers/char/agp/amd64-agp.c | 39 ++++++++++++++++++++++++++++++++++++++- 3 files changed, 60 insertions(+), 23 deletions(-) diff --git a/arch/x86/include/asm/gart.h ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 35/39] x86: make e820 to be __initdata
Finally no user after init boot stage. We can free it to save some bytes. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/include/asm/e820.h | 2 -- arch/x86/kernel/e820.c | 2 +- 2 files changed, 1 insertions(+), 3 deletions(-) diff --git a/arch/x86/include/asm/e820.h b/arch/x86/include/asm/e820.h index cd7de51..f2ab72e 100644 --- a/arch/x86/include/asm/e820.h +++ b/arch/x86/include/asm/e820.h @@ -73,8 +73,6 @@ struct e820map { #define BIOS_END 0x00100000 ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 29/39] x86, lmb: Use lmb_memory_size()/lmb_free_m ...
lmb_memory_size() will return memory size in lmb.memory.region. lmb_free_memory_size() will return free memory size in lmb.memory.region. So We can get exact reseved size in specified range. Set the size right after initmem_init(), because later bootmem API will get area above 16M. (except some fallback). Later after we remove the bootmem, We could call that just before paging_init(). Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/include/asm/e820.h | 2 ++ ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 27/39] x86, lmb: turn off ARCH_LMB_FIND_AREA
32bit now can use generic __find_lmb_area now. So we can turn arch one off Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/Kconfig | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index da9040b..bbe4e99 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -584,7 +584,7 @@ config PARAVIRT_DEBUG a paravirt_op is missing when it is called. config ARCH_LMB_FIND_AREA - default y + default n bool "Use x86 ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 28/39] x86: Remove not used early_res code
and some functions in e820.c that are not used anymore Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/include/asm/e820.h | 14 - arch/x86/kernel/e820.c | 42 --- include/linux/early_res.h | 23 -- kernel/early_res.c | 584 ------------------------------------------- 4 files changed, 0 insertions(+), 663 deletions(-) delete mode 100644 include/linux/early_res.h delete mode 100644 kernel/early_res.c diff --git a/arch/x86/include/asm/e820.h ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 30/39] x86: put 64 bit numa node memmap above 16M
Do not use 0x8000 hard code value anymore. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/mm/numa_64.c | 2 +- arch/x86/mm/srat_64.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/x86/mm/numa_64.c b/arch/x86/mm/numa_64.c index 18d2296..b8438ac 100644 --- a/arch/x86/mm/numa_64.c +++ b/arch/x86/mm/numa_64.c @@ -88,7 +88,7 @@ static int __init allocate_cachealigned_memnodemap(void) if (memnodemapsize <= ARRAY_SIZE(memnode.embedded_map)) ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 36/39] bootmem: Add nobootmem.c to reduce the #ifdef
Introduce nobootmem.c to hold wrapper for CONFIG_NO_BOOTMEM=y. that will remove related #ifdef in bootmem.c Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- mm/Makefile | 8 +- mm/bootmem.c | 151 +---------------------- mm/nobootmem.c | 389 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 397 insertions(+), 151 deletions(-) create mode 100644 mm/nobootmem.c diff --git a/mm/Makefile b/mm/Makefile index 52492f9..2ab3039 100644 --- ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 12/39] lmb: Add lmb_register_active_regions() and ...
lmb_register_active_regions() will be used to fill early_node_map, the result will be lmb.memory.region AND numa data lmb_hole_size will be used to find hole size on lmb.memory.region with specified range. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 4 +++ mm/lmb.c | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 0 deletions(-) diff --git a/include/linux/lmb.h b/include/linux/lmb.h index ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 37/39] mm: move contig_page_data define to bootme ...
We can remove #ifdef in mm/page_alloc.c Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- mm/bootmem.c | 7 +++++++ mm/nobootmem.c | 5 +++++ mm/page_alloc.c | 9 --------- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/mm/bootmem.c b/mm/bootmem.c index 2741c34..ff55ad7 100644 --- a/mm/bootmem.c +++ b/mm/bootmem.c @@ -23,6 +23,13 @@ #include "internal.h" +#ifndef CONFIG_NEED_MULTIPLE_NODES +struct pglist_data __refdata contig_page_data = { + ...
Apr 8, 11:04 pm 2010
Yinghai Lu
[PATCH 14/39] lmb: Add find_memory_core_early()
According to node range in early_node_map[] with __lmb_find_area to find free range. Will be used by lmb_find_area_node() lmb_find_area_node will be used to find right buffer for NODE_DATA Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/mm.h | 2 ++ mm/page_alloc.c | 29 +++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 0 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index fb19bb9..7774e1d 100644 --- ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 04/39] lmb: Move lmb.c to mm/
lmb.c is memory related, so move it to mm/. It is suggested by Ingo Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- lib/Makefile | 2 -- mm/Makefile | 2 ++ {lib => mm}/lmb.c | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename {lib => mm}/lmb.c (100%) diff --git a/lib/Makefile b/lib/Makefile index 2e152ae..a463a4d 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -85,8 +85,6 @@ obj-$(CONFIG_FAULT_INJECTION) += fault-inject.o lib-$(CONFIG_GENERIC_BUG) ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 23/39] x86, lmb: Add x86 version of __lmb_find_area()
Generic version is going from high to low, and it seems it can not find right area compact enough. the x86 version will go from goal to limit and just like the way We used for early_res use ARCH_FIND_LMB_AREA to select from them. For 32 bit have to use CONFIG_ARCH_FIND_LMB_AREA=y, because some alloc_bootmem in nobootmem config, hard code -1ULL as limit Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/Kconfig | 8 +++++ arch/x86/mm/lmb.c | 78 ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 26/39] nobootmem: use lmb.default_alloc_limit in ...
Generic version __lmb_find_area() is going from high to low, and for 32bit active_region for 32bit does include high pages need to replace the limit with lmb.default_alloc_limit, aka get_max_mapped() with this patch, x86 32bit could use generic version of __lmb_find_area() Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- mm/page_alloc.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 79bd44b..256aed0 100644 --- ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 07/39] lmb: Add lmb_find_area()
It will try find area according with size/align in specified range (start, end). lmb_find_area() will honor goal/limit. also make it more easy for x86 to use lmb. x86 early_res is using find/reserve pattern instead of alloc. When we need temporaray buff for range array etc for range work, if We are using lmb_alloc(), We will need to add some post fix code for buffer that is used by range array, because it is in the lmb.reserved already. and have to call extra lmb_free(). -v2: Change name ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 24/39] x86: Use lmb to replace early_res
1. replace find_e820_area with lmb_find_area 2. replace reserve_early with lmb_reserve_area 3. replace free_early with lmb_free_area. 4. NO_BOOTMEM will switch to use lmb too. 5. use _e820, _early wrap in the patch, in following patch, will replace them all 6. because lmb_free_area support partial free, we can remove some special care 7. Need to make sure that lmb_find_area() is called after fill_lmb_memory() so adjust some calling later in setup.c::setup_arch() -- corruption_check and ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 01/39] swiotlb: Use page alignment for early buff ...
We could call free_bootmem_late() if swiotlb is not used, and it will shrink to page alignement. So alloc them with page alignment at first, to avoid lose two pages before patch: [ 0.000000] lmb_reserve_area: [00d3600000, 00d7600000] swiotlb buffer [ 0.000000] lmb_reserve_area: [00d7e7ef40, 00d7e9ef40] swiotlb list [ 0.000000] lmb_reserve_area: [00d7e3ef40, 00d7e7ef40] swiotlb orig_ad [ 0.000000] lmb_reserve_area: [000008a000, 0000092000] swiotlb ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 03/39] x86: Align e820 ram range to page
to workaround wrong BIOS memory map. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/kernel/e820.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c index 14d0a1a..73dc6a7 100644 --- a/arch/x86/kernel/e820.c +++ b/arch/x86/kernel/e820.c @@ -1044,6 +1044,47 @@ static int __init parse_memmap_opt(char *p) } early_param("memmap", parse_memmap_opt); +static void ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 19/39] lmb: Use lmb_debug to control debug messag ...
Also let lmb_reserve_area/lmb_free_area could print out name if lmb=debug is specified will also print ther name when reserve_lmb_area/free_lmb_area are called. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- mm/lmb.c | 29 +++++++++++++++++++++-------- 1 files changed, 21 insertions(+), 8 deletions(-) diff --git a/mm/lmb.c b/mm/lmb.c index 34fc030..dfbf660 100644 --- a/mm/lmb.c +++ b/mm/lmb.c @@ -591,8 +591,9 @@ static void __init __check_and_double_region_array(struct lmb_region ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 11/39] lmb: Add get_free_all_memory_range()
get_free_all_memory_range is for CONFIG_NO_BOOTMEM=y, and will be called by free_all_memory_core_early(). It will use early_node_map aka active ranges subtract lmb.reserved to get all free range, and those ranges will convert to slab pages. -v3: use __lmb_find_base() to get range free buffer. Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: Jan Beulich <jbeulich@novell.com> --- include/linux/lmb.h | 2 + mm/lmb.c | 86 ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 02/39] x86: Add sanitize_e820_map()
So We don't need to take e820.map with it. Also change e820_saved to initdata to get some bytes memory back. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/include/asm/e820.h | 5 ++--- arch/x86/kernel/e820.c | 26 ++++++++++++++++++-------- arch/x86/kernel/efi.c | 2 +- arch/x86/kernel/setup.c | 10 +++++----- arch/x86/xen/setup.c | 4 +--- 5 files changed, 27 insertions(+), 20 deletions(-) diff --git a/arch/x86/include/asm/e820.h ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 08/39] lmb: Add lmb_reserve_area/lmb_free_area
They will check if the region array is big enough. __check_and_double_region_array will try to double the region array if that array spare slots is not big enough. Old array will be copied to new array. Arch code should set lmb.default_alloc_limit accordingly, so the new array is in accessiable address. -v2: change get_max_mapped() to lmb.default_alloc_limit according to Michael Ellerman and Ben change to lmb_reserve_area and lmb_free_area according to Michael Ellerman -v3: ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 13/39] lmb: Prepare to include linux/lmb.h in core file
Need to add protection in linux/lmb.h, to prepare to include it in mm/page_alloc.c and mm/bootmem.c etc. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/include/linux/lmb.h b/include/linux/lmb.h index cf8f7ca..5dbc4ef 100644 --- a/include/linux/lmb.h +++ b/include/linux/lmb.h @@ -2,6 +2,7 @@ #define _LINUX_LMB_H #ifdef __KERNEL__ +#ifdef CONFIG_HAVE_LMB /* * Logical memory ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 21/39] lmb: Add __free/__reserve/__clear_lmb_rese ...
Seperate those three functions and could be shared by related callers. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- mm/lmb.c | 63 +++++++++++++++++++++++++++++++++++-------------------------- 1 files changed, 36 insertions(+), 27 deletions(-) diff --git a/mm/lmb.c b/mm/lmb.c index ab3d85f..5483d69 100644 --- a/mm/lmb.c +++ b/mm/lmb.c @@ -684,16 +684,41 @@ static __init struct range *find_range_array(int count) } #ifdef CONFIG_NO_BOOTMEM -static void __init ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 18/39] lmb: Add lmb_reserve_area_overlap_ok()
Some areas from firmware could be reserved several times from different callers. If these area are overlapped, We may have overlapped entries in lmb.reserved. Try to free the area at first, before rerserve them again. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 1 + mm/lmb.c | 27 +++++++++++++++++++++++++-- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/include/linux/lmb.h b/include/linux/lmb.h index 8332934..3c8095f ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 16/39] lmb: Add lmb_free_memory_size()
It will return free memory size in specified range. We can not use memory_size - reserved_size here, because some reserved area may not be in the scope of lmb.memory.region. Use lmb.memory.region subtracting lmb.reserved.region to get free range array. then count size of all free ranges. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 1 + mm/lmb.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 0 ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 25/39] x86: Replace e820_/_early string with lmb_
1.include linux/lmb.h directly. so later could reduce e820.h reference. 2 this patch is done by sed scripts mainly Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- arch/x86/include/asm/efi.h | 2 +- arch/x86/kernel/acpi/sleep.c | 5 +++-- arch/x86/kernel/apic/numaq_32.c | 3 ++- arch/x86/kernel/efi.c | 5 +++-- arch/x86/kernel/head32.c | 4 ++-- arch/x86/kernel/head64.c | 4 ++-- arch/x86/kernel/setup.c | 25 ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 17/39] lmb: Add lmb_memory_size()
It will return memory size in specified range according to lmb.memory.region Try to share some code with lmb_free_memory_size() by passing get_free to __lmb_memory_size(). Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 1 + mm/lmb.c | 18 +++++++++++++++++- 2 files changed, 18 insertions(+), 1 deletions(-) diff --git a/include/linux/lmb.h b/include/linux/lmb.h index b874dc0..8332934 100644 --- a/include/linux/lmb.h +++ b/include/linux/lmb.h @@ ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 15/39] lmb: Add lmb_find_area_node()
It can be used to find NODE_DATA for numa. Need to make sure early_node_map[] is filled before it is called, otherwise it will fallback to lmb_find_area(), with node range. Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- include/linux/lmb.h | 1 + mm/lmb.c | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 0 deletions(-) diff --git a/include/linux/lmb.h b/include/linux/lmb.h index 5dbc4ef..4078825 100644 --- a/include/linux/lmb.h +++ b/include/linux/lmb.h @@ ...
Apr 8, 11:03 pm 2010
Yinghai Lu
[PATCH 06/39] lmb: Seperate __lmb_find_base() from __lmb ...
So We can construct one generic __find_lmb_area() later Signed-off-by: Yinghai Lu <yinghai@kernel.org> --- mm/lmb.c | 21 +++++++++++++++++---- 1 files changed, 17 insertions(+), 4 deletions(-) diff --git a/mm/lmb.c b/mm/lmb.c index 65b62dc..392d805 100644 --- a/mm/lmb.c +++ b/mm/lmb.c @@ -393,7 +393,7 @@ u64 __init lmb_alloc_base(u64 size, u64 align, u64 max_addr) return alloc; } -u64 __init __lmb_alloc_base(u64 size, u64 align, u64 max_addr) +static u64 __init ...
Apr 8, 11:03 pm 2010
David Howells
Re: [PATCH tip/core/urgent 3/4] rcu: Update docs for rcu ...
Acked-by: David Howells <dhowells@redhat.com> --
Apr 9, 2:16 am 2010
Lai Jiangshan
Re: [PATCH tip/core/urgent] rcu: updates for RCU lockdep
For whole patchset: Acked-by: Lai Jiangshan <laijs@cn.fujitsu.com> --
Apr 9, 1:59 am 2010
Paul E. McKenney
[PATCH tip/core/urgent] rcu: updates for RCU lockdep
Hello! These four patches provides a pair of new APIs and documentation to handle a couple of cases that David Howells came across when running an NFS workload under CONFIG_PROVE_RCU, along with some comment improvements suggested by David and also some by Yong Zhang. Thanx, Paul b/Documentation/RCU/NMI-RCU.txt | 39 +++++++++++++++++++++----------------- b/Documentation/RCU/checklist.txt | 7 +++--- b/Documentation/RCU/lockdep.txt | 28 +++++++++++++++++++++++++-- ...
Apr 8, 10:47 pm 2010
Paul E. McKenney
[PATCH tip/core/urgent 1/4] rcu: add rcu_access_pointer ...
This patch adds variants of rcu_dereference() that handle situations where the RCU-protected data structure cannot change, perhaps due to our holding the update-side lock, or where the RCU-protected pointer is only to be fetched, not dereferenced. These are needed due to some performance concerns with using rcu_dereference() where it is not required, aside from the need for lockdep/sparse checking. The new rcu_access_pointer() primitive is for the case where the pointer is be fetch and not ...
Apr 8, 10:47 pm 2010
Paul E. McKenney
[PATCH tip/core/urgent 4/4] rcu: fix syntax error in rcu ...
Need a logical "or" rather than a comma. Suggested-by: Yong Zhang <yong.zhang@windriver.com> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> --- include/linux/rcupdate.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h index 6cdb176..b769184 100644 --- a/include/linux/rcupdate.h +++ b/include/linux/rcupdate.h @@ -217,7 +217,7 @@ static inline int rcu_read_lock_sched_held(void) * target struct: ...
Apr 8, 10:47 pm 2010
Paul E. McKenney
[PATCH tip/core/urgent 3/4] rcu: Update docs for rcu_acc ...
Update examples and lists of APIs to include these new primitives. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> --- Documentation/RCU/NMI-RCU.txt | 39 ++++++++++++++++++++++----------------- Documentation/RCU/checklist.txt | 7 ++++--- Documentation/RCU/lockdep.txt | 28 ++++++++++++++++++++++++++-- Documentation/RCU/whatisRCU.txt | 6 ++++++ 4 files changed, 58 insertions(+), 22 deletions(-) diff --git a/Documentation/RCU/NMI-RCU.txt ...
Apr 8, 10:47 pm 2010
Paul E. McKenney
[PATCH tip/core/urgent 2/4] RCU: Better explain the cond ...
From: David Howells <dhowells@redhat.com> Better explain the condition parameter of rcu_dereference_check() that describes the conditions under which the dereference is permitted to take place. This condition is only checked under lockdep proving. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> --- include/linux/rcupdate.h | 28 +++++++++++++++++++++++----- 1 files changed, 23 insertions(+), 5 deletions(-) diff --git ...
Apr 8, 10:47 pm 2010
David Howells
Re: [PATCH tip/core/urgent 1/4] rcu: add rcu_access_poin ...
There's no difference between your two versions of rcu_access_pointer(), so you could move that whole construct outside of the #ifdef'ed section. Other than that: Acked-by: David Howells <dhowells@redhat.com> --
Apr 9, 2:10 am 2010
David Howells
Re: [PATCH tip/core/urgent 2/4] RCU: Better explain the ...
As pointed out by Yong Zhang, the comma after lockdep_is_held() should be a ||. David --
Apr 9, 2:11 am 2010
David Howells
Re: [PATCH tip/core/urgent 4/4] rcu: fix syntax error in ...
I'm surprised you didn't just roll this in to patch 2. Acked-by: David Howells <dhowells@redhat.com> --
Apr 9, 2:17 am 2010
Eric Dumazet
Re: [PATCH tip/core/urgent 1/4] rcu: add rcu_access_poin ...
I also prefer to keep type checking if possible #define rcu_access_pointer(p) (ACCESS_ONCE(p)) Other than that: Acked-by: Eric Dumazet <eric.dumazet@gmail.com> --
Apr 9, 2:24 am 2010
Paul E. McKenney
Re: [PATCH tip/core/urgent 1/4] rcu: add rcu_access_poin ...
Good point, will rework and resubmit. Thanx, Paul --
Apr 9, 9:56 am 2010
Paul E. McKenney
Re: [PATCH tip/core/urgent 1/4] rcu: add rcu_access_poin ...
Yikes! I was obsessing on preventing people from dereferencing the pointer, but you are quite right, they might be comparing it to a constant pointer to check for array bounds or for use of a statically allocated emergency-pool item. Thanx, Paul --
Apr 9, 9:57 am 2010
Paul E. McKenney
Re: [PATCH tip/core/urgent 4/4] rcu: fix syntax error in ...
I will do so when I resubmit. I am finally growing more comfortable with "git rebase -i", but still some ways to go. It has been a long journey from the old punched-card cabinets of my youth. ;-) --
Apr 9, 9:59 am 2010
Paul E. McKenney
[PATCH tip/core/urgent] v2 rcu: updates for RCU lockdep
Hello! These four patches provides a pair of new APIs and documentation to handle a couple of cases that David Howells came across when running an NFS workload under CONFIG_PROVE_RCU, along with some comment improvements suggested by David and also some by Yong Zhang. Updated from v1 (http://lkml.org/lkml/2010/4/9/28) to reflect David's and Eric Dumazet's comments: o Remove (void*) cast from rcu_access_pointer(). o Merge identical definitions of rcu_access_pointer() outside of ...
Apr 9, 3:38 pm 2010
Paul E. McKenney
[PATCH tip/core/urgent 1/3] rcu: add rcu_access_pointer ...
This patch adds variants of rcu_dereference() that handle situations where the RCU-protected data structure cannot change, perhaps due to our holding the update-side lock, or where the RCU-protected pointer is only to be fetched, not dereferenced. These are needed due to some performance concerns with using rcu_dereference() where it is not required, aside from the need for lockdep/sparse checking. The new rcu_access_pointer() primitive is for the case where the pointer is be fetch and not ...
Apr 9, 3:39 pm 2010
Paul E. McKenney
[PATCH tip/core/urgent 2/3] RCU: Better explain the cond ...
From: David Howells <dhowells@redhat.com> Better explain the condition parameter of rcu_dereference_check() that describes the conditions under which the dereference is permitted to take place (and incorporate Yong Zhang's suggestion). This condition is only checked under lockdep proving. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> --- include/linux/rcupdate.h | 28 +++++++++++++++++++++++----- 1 files changed, 23 ...
Apr 9, 3:39 pm 2010
Paul E. McKenney
[PATCH tip/core/urgent 3/3] rcu: Update docs for rcu_acc ...
Update examples and lists of APIs to include these new primitives. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> --- Documentation/RCU/NMI-RCU.txt | 39 ++++++++++++++++++++++----------------- Documentation/RCU/checklist.txt | 7 ++++--- Documentation/RCU/lockdep.txt | 28 ++++++++++++++++++++++++++-- Documentation/RCU/whatisRCU.txt | 6 ++++++ 4 files changed, 58 insertions(+), 22 deletions(-) diff --git a/Documentation/RCU/NMI-RCU.txt ...
Apr 9, 3:39 pm 2010
dvhltc
[PATCH V5 0/4][RFC] futex: FUTEX_LOCK with optional adap ...
NOT FOR INCLUSION The following patch series implements a new experimental kernel side futex mutex via new FUTEX_LOCK and FUTEX_LOCK_ADAPTIVE futex op codes. The adaptive spin allows for multiple spinners until the lock is released or the owner is descheduled. The patch currently allows the user to specify if they want spinning or not, but the final version will only provide the adaptive variant as blocking locks are already very efficiently implemented with the existing operations. This ...
Apr 8, 10:15 pm 2010
dvhltc
[PATCH 1/4] futex: replace fshared and clockrt with comb ...
From: Darren Hart <dvhltc@us.ibm.com> In the early days we passed the mmap sem around. That became the "int fshared" with the fast gup improvements. Then we added "int clockrt" in places. This patch unifies these options as "flags" and cleans up various calls which had fshared in their signature but no longer used it. V4: Fix an operator precedence bug Signed-off-by: Darren Hart <dvhltc@us.ibm.com> --- kernel/futex.c | 215 +++++++++++++++++++++++++++----------------------------- 1 ...
Apr 8, 10:15 pm 2010
dvhltc
[PATCH 2/4] futex: add futex_q static initializer
From: Darren Hart <dvhltc@us.ibm.com> The futex_q struct has grown considerably over the last year or so. I believe it now merits a static initializer to avoid uninitialized data errors (having just spent more time than I care to admit debugging an uninitialized q.bitset in an experimental new op code). I originally planned on following the __THING_INITIALIZER/DECLARE_THING method, but since we already had FUTEX_KEY_INIT, and I personally prefer that method, I went that ...
Apr 8, 10:15 pm 2010
dvhltc
[PATCH 4/4] futex: Add FUTEX_LOCK with optional adaptive ...
From: Darren Hart <dvhltc@us.ibm.com> Add a non-pi TID value based futex locking mechanism. This enables the use of adaptive spinning which was problematic with the basic FUTEX_WAIT operation. V5: Handle timeout inside adaptive lock spin (needs optimization) Fix task_struct ref counting Allow CLOCK_RT and default to CLOCK_MONOTONIC for FUTEX_LOCK Cleanup futex_lock ret handling (EINTR) cruft Remove notion of aggressive adaptive spinning Continue spinning if owner ...
Apr 8, 10:15 pm 2010
dvhltc
[PATCH 3/4] futex: refactor futex_lock_pi_atomic
From: Darren Hart <dvhltc@us.ibm.com> Prepare for FUTEX_LOCK by refactoring futex_lock_pi_atomic() into lock_futex_atomic() and lock_pi_futex_atomic(). The name change is meant to reflect the naming convention in futex.c that futex_*() functions map directly to futex op codes and the others are internal helper functions. Signed-off-by: Darren Hart <dvhltc@us.ibm.com> =================================================================== --- kernel/futex.c | 79 ...
Apr 8, 10:15 pm 2010
Jonathan Woithe
Re: 2.6.33: libata issues with VIA SATA/PATA controller
Any ideas as to how I can capture it? Since the SATA disc interfaces stop working long before they are mounted none of the early boot messages make it to disc. All the interesting bits are therefore scrolled into the bit bucket. A serial console might be doable (is there documentation about how to set one up?) but that would take some time to arrange - I'm only physically at the machine in question sporadically and I'd have to rustle up another PC For sure. In terms of the detailed ...
Apr 8, 9:36 pm 2010
James Andrewartha
Re: 2.6.33: libata issues with VIA SATA/PATA controller
Netconsole is the easiest way to get dmesg when disks aren't working - see Documentation/networking/netconsole.txt for details on how to set it up. -- James Andrewartha --
Apr 8, 11:04 pm 2010
=?UTF-8?Q?Am=C3=A9ri ...
Re: [PATCH 2/3] flex_array: export some symbols for nfne ...
Right, if nfnetlink will use flex_array, CONFIG_NETFILTER_NETLINK will need to depend on or select CONFIG_FLEX_ARRAY. --
Apr 8, 10:09 pm 2010
Eric Dumazet
Re: [PATCH 2/3] flex_array: export some symbols for nfne ...
Hmm, could you instead add a lib-$(CONFIG_FLEX_ARRAY) += flex_array.o instead ? And do the necessary Kconfig changes as well. You should CC people who where involved with flex_array : scripts/get_maintainer.pl -f lib/flex_array.c Andrew Morton <akpm@linux-foundation.org> David Rientjes <rientjes@google.com> Dave Hansen <dave@linux.vnet.ibm.com> Jonathan Corbet <corbet@lwn.net> KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Thanks --
Apr 8, 10:02 pm 2010
Changli Gao
[PATCH 2/3] flex_array: export some symbols for nfnetlin ...
export some symbols for nfnetlink_queue use export some symbols for nfnetlink_queue use. Signed-off-by: Changli Gao <xiaosuo@gmail.com> ---- lib/Makefile | 4 ++-- lib/flex_array.c | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/Makefile b/lib/Makefile index 0a6ab6f..0700e74 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -12,7 +12,7 @@ lib-y := ctype.o string.o vsprintf.o cmdline.o \ idr.o int_sqrt.o extable.o prio_tree.o \ sha1.o irq_regs.o ...
Apr 8, 9:09 pm 2010
Jens Axboe Apr 8, 11:36 pm 2010
Divyesh Shah
[PATCH 0/3] blkio: More IO controller stats - always-on ...
The following patchset implements additional per-cgroup IO controller stats. Some of these should be enabled for debugging only. These stats have helped us debug issues with earlier IO controller versions and should be useful now as well. We've been using these stats for monitoring and debugging problems after the fact as these stats can be collected and stored for later use. The stats added in this patchset are: 1) io_merged - This includes both the number of bios merged into requests ...
Apr 8, 9:13 pm 2010
Divyesh Shah
[PATCH 1/3] blkio: Add io_merged stat
This includes both the number of bios merged into requests belonging to this cgroup as well as the number of requests merged together. In the past, we've observed different merging behavior across upstream kernels, some by design some actual bugs. This stat helps a lot in debugging such problems when applications report decreased throughput with a new kernel version. This needed adding an extra elevator function to capture bios being merged as I did not want to pollute elevator code with ...
Apr 8, 9:14 pm 2010
Divyesh Shah
[PATCH 2/3] blkio: Add io_queued and avg_queue_size stats
These stats are useful for getting a feel for the queue depth of the cgroup, i.e., how filled up its queues are at a given instant and over the existence of the cgroup. This ability is useful when debugging problems in the wild as it helps understand the application's IO pattern w/o having to read through the userspace code (coz its tedious or just not available) or w/o the ability to run blktrace (since you may not have root access and/or not want to disturb performance). Signed-off-by: ...
Apr 8, 9:15 pm 2010
Divyesh Shah
[PATCH 3/3] blkio: Add more debug-only per-cgroup stats
1) group_wait_time - This is the amount of time the cgroup had to wait to get a timeslice for one of its queues from when it became busy, i.e., went from 0 to 1 request queued. This is different from the io_wait_time which is the cumulative total of the amount of time spent by each IO in that cgroup waiting in the scheduler queue. This stat is a great way to find out any jobs in the fleet that are being starved or waiting for longer than what is expected (due to an IO controller bug or ...
Apr 8, 9:15 pm 2010
Vivek Goyal
Re: [PATCH 2/3] blkio: Add io_queued and avg_queue_size stats
How about blkiocg_update_avg_queue_size_stats()? A different io policy can choose to take this sample at higher rate and not necessarily when queue is set active. Can we group this function near blkiocg_update_blkio_group_dequeue_stats() curr_blkg is redundant? How about just use "io" keyword instead of "request" as you have been During reset_stats, why are you not resetting the stats for average queue depth? This reset_stat is mean to reset all the debug stats we have collected so ...
Apr 9, 8:32 am 2010
Vivek Goyal
Re: [PATCH 3/3] blkio: Add more debug-only per-cgroup stats
Divyesh, This empty_time looks like a redundant stats. One can just look at group_wait_time. If group_wait_time is not increasing, then application in cgroup is not doing any IO. If it is increasing then one can look at so many other stas like blkio.time, blkio.sectors etc to find out if cgroup is making any progress or not. So what is that inconsistency? Time goes backwards? If yes, can't we just check that stop time is start time and only then any time sample is valid otherwise we ...
Apr 9, 12:21 pm 2010
Divyesh Shah
Re: [PATCH 2/3] blkio: Add io_queued and avg_queue_size stats
I pulled up blkiocg_update_blkio_group_dequeue_stats() to where this Using your calculations from the other thread, since this is at a much coarser granularity than ns, I'm not sure we should be worrying about The avg_queue_size stats (sum and samples) are being reset - see the memset. The current count of how many IOs are queued should not be reset since that will mess up the accounting and hit the BUG_ONs when --
Apr 9, 1:44 pm 2010
David Rientjes
Re: [PATCH 1/3] flex_array: fix the panic issue when cal ...
Acked-by: David Rientjes <rientjes@google.com> --
Apr 9, 10:09 am 2010
Changli Gao
[PATCH 1/3] flex_array: fix the panic issue when calling ...
fix the panic issue when calling flex_array_alloc() without __GFP_ZERO. memset is called with the wrong address, then kernel panics. Signed-off-by: Changli Gao <xiaosuo@gmail.com> ---- lib/flex_array.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/flex_array.c b/lib/flex_array.c index 66eef2e..6fbb514 100644 --- a/lib/flex_array.c +++ b/lib/flex_array.c @@ -99,7 +99,7 @@ struct flex_array *flex_array_alloc(int element_size, unsigned int total, ret->element_size ...
Apr 8, 9:05 pm 2010
Mathieu Desnoyers
[RFC] CFS scheduler latencies in 2.6.33.x (Xorg-triggered)
Hi, I'm currently digging into some odd latencies experienced with the CFS scheduler on a 2.6.33.2 kernel. First, it is probably nothing new specific to 2.6.33, it might very well affect a larger set of kernel versions too. I'll describe the problem and possible solutions here, and will provide the code and patches if people think the general approach makes sense. I'm using a modified version of a "wakeup latency" program that spawns a short-lived thread every 10ms with timer_create() and ...
Apr 8, 8:43 pm 2010
Stephen Rothwell
linux-next: Tree for April 9
Hi all, Changes since 20100408: Dropped tree: tmio-mmc (long unresolved conflicts and unable to fetch) hwlat (at the maintainers request) My fixes tree contains: a patch for a pktcdvd build error from Arnd Bergmann The s390 tree lost its conflict. The kvm tree still lost its build failure. The net tree lost 3 conflicts and its build failure, but gained another conflict against Linus' tree. The wireless tree lost 3 conflicts, but gained another against the wireless-current ...
Apr 8, 8:34 pm 2010
James Morris
Re: [PATCH] Security: Fix coding style in security/
Applied to git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6#next -- James Morris <jmorris@namei.org> --
Apr 8, 10:43 pm 2010
wzt.wzt
[PATCH] Security: Fix coding style in security/
Fix coding style in security/ Signed-off-by: Zhitong Wang <zhitong.wangzt@alibaba-inc.com> --- security/selinux/selinuxfs.c | 44 ++++++++++++++++++++-------------------- security/selinux/ss/mls.c | 2 +- security/selinux/ss/policydb.c | 4 +- security/selinux/ss/services.c | 12 +++++----- 4 files changed, 31 insertions(+), 31 deletions(-) diff --git a/security/selinux/selinuxfs.c b/security/selinux/selinuxfs.c index cd191bb..0293843 100644 --- ...
Apr 9, 4:30 am 2010
Jens Axboe Apr 8, 11:31 pm 2010
Divyesh Shah
[PATCH] blkio: Changes to IO controller additional stats ...
that include some minor fixes and addresses all comments. Changelog: (most based on Vivek Goyal's comments) o renamed blkiocg_reset_write to blkiocg_reset_stats o more clarification in the documentation on io_service_time and io_wait_time o Initialize blkg->stats_lock o rename io_add_stat to blkio_add_stat and declare it static o use bool for direction and sync o derive direction and sync info from existing rq methods o use 12 for major:minor string length o define io_service_time better to ...
Apr 8, 8:27 pm 2010
Vivek Goyal
Re: [PATCH] blkio: Changes to IO controller additional s ...
Thanks Divyesh. Acked-by: Vivek Goyal <vgoyal@redhat.com> --
Apr 9, 7:16 am 2010
Divyesh Shah
[PATCH] blkio: Changes to IO controller additional stats ...
that include some minor fixes and addresses all comments. Changelog: (most based on Vivek Goyal's comments) o renamed blkiocg_reset_write to blkiocg_reset_stats o more clarification in the documentation on io_service_time and io_wait_time o Initialize blkg->stats_lock o rename io_add_stat to blkio_add_stat and declare it static o use bool for direction and sync o derive direction and sync info from existing rq methods o use 12 for major:minor string length o define io_service_time better to ...
Apr 8, 8:18 pm 2010
Divyesh Shah
Re: [PATCH] blkio: Changes to IO controller additional s ...
I missed out the changes to Documentation/cgroup/blkio-controller.txt. Please ignore this one. Sorry. --
Apr 8, 8:25 pm 2010
KAMEZAWA Hiroyuki
[PATCH] fix cgroup procs documentation
2.6.33's Documentation has the same wrong information. So, I CC'ed to stable. If people believe this information, they'll usr cgroup.procs file and will see cgroup doesn'w work as expected. The patch itself is against -mm. == Writing to cgroup.procs is not supported now. Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> --- Documentation/cgroups/cgroups.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) Index: ...
Apr 8, 8:11 pm 2010
Li Zefan Apr 8, 8:22 pm 2010
KAMEZAWA Hiroyuki
Re: [PATCH] fix cgroup procs documentation
On Fri, 09 Apr 2010 11:22:00 +0800 ok. BTW, does anyone work on this ? == Writing to cgroup.procs is not supported now. Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> --- Documentation/cgroups/cgroups.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) Index: mmotm-temp/Documentation/cgroups/cgroups.txt =================================================================== --- mmotm-temp.orig/Documentation/cgroups/cgroups.txt +++ ...
Apr 8, 8:20 pm 2010
Li Zefan Apr 8, 8:31 pm 2010
Ben Blum
Re: [PATCH] fix cgroup procs documentation
Aye. Oleg suggested a redesign of the last patch (putting the lock in signal_struct instead of sighand_struct), but I haven't got time to work --
Apr 8, 8:48 pm 2010
Nick Cheng
[PATCH 3/3 ] SCSI: Support Type C RAID controller
1. To support Type C RAID controller, ACB_ADAPTER_TYPE_C, i.e. PCI device ID: 0x1880. Signed-off-by: Nick Cheng< nick.cheng@areca.com.tw > ---
Apr 8, 7:27 pm 2010
Nick Cheng
[PATCH 2/3 ] SCSI: Support several features in arcmsr driver
1. To support 4M/1024 scatter-gather list entry, reorganize struct ARCMSR_CDB and struct CommandControlBlock 2. To modify arcmsr_probe 3. In order to help fix F/W issue, add the driver mode for type B card 4. To improve AP's behavior while F/W resets 5. To unify struct MessageUnit_B's members' naming in all OS drivers' 6. To improve error handlers, arcmsr_bus_reset(), arcmsr_abort() 7. To fix the arcmsr_queue_command() in bus reset stage, just let the commands pass down to FW, don't ...
Apr 8, 7:26 pm 2010
Nick Cheng
[PATCH 1/3 ] SCSI: Support several features in arcmsr driver
1. To support instantaneous report for SCSI device existing by periodic polling 2. In arcmsr_iop_xfer(), inform AP of F/W's deadlock state to prevent endless waiting 3. To block the coming SCSI command while the driver is handling bus reset 4. To support HW reset in bus reset error handler Signed-off-by: Nick Cheng< nick.cheng@areca.com.tw >
Apr 8, 7:24 pm 2010
Jens Axboe
Re: [PATCH] cfq-iosched: Fix the incorrect timeslice acc ...
Good catch, applied for 2.6.34. -- Jens Axboe --
Apr 9, 12:29 am 2010
Divyesh Shah
[PATCH] cfq-iosched: Fix the incorrect timeslice account ...
When CFQ dispatches requests forcefully due to a barrier or changing iosched, it runs through all cfqq's dispatching requests and then expires each queue. However, it does not activate a cfqq before flushing its IOs resulting in using stale values for computing slice_used. This patch fixes it by calling activate queue before flushing reuqests from each queue. This is useful mostly for barrier requests because when the iosched is changing it really doesnt matter if we have incorrect accounting ...
Apr 8, 7:19 pm 2010
Vivek Goyal
Re: [PATCH] cfq-iosched: Fix the incorrect timeslice acc ...
Thanks Divyesh. Looks good to me. I think cfq_slice_expired() is covering that case (in a non-intutive way). So even if you are idling on an empty queue when we start forced dispatch, it will continue to remain the active queue (because during flush of other queues, we are not making them active queues). And once the flush is over, we will call cfq_slice_expired() which will expire the active queue we were idling on. I suspect that additional cfq_slice_expired() call may be redundant ...
Apr 9, 7:09 am 2010
Divyesh Shah
Re: [PATCH] cfq-iosched: Fix the incorrect timeslice acc ...
Yes that call after flushing all queues was redundant. It is not anymore with this patch since I've moved it before the flush to expire --
Apr 9, 8:25 am 2010
Stephen Rothwell
linux-next: manual merge of the wireless tree with the w ...
Hi John, Today's linux-next merge of the wireless tree got a conflict in drivers/net/wireless/iwlwifi/iwl-4965.c between commit ece6444c2fe80dab679beb5f0d58b091f1933b00 ("iwlwifi: need check for valid qos packet before free") from the wireless-current tree and commit 74bcdb33e99f49ef5202dd2f8109945b4570edc2 ("iwlwifi: move agn only tx functions from iwlcore to iwlagn") from the wireless tree. Just context changes. I fixed it up (see below) and can carry the fix for a while. -- ...
Apr 8, 6:05 pm 2010
David Miller
[PATCH 2/4] sparc64: Use RCU page table freeing.
Signed-off-by: David S. Miller <davem@davemloft.net> --- arch/sparc/include/asm/pgalloc_64.h | 49 +++++++++++++++++++++++++++++++++- 1 files changed, 47 insertions(+), 2 deletions(-) diff --git a/arch/sparc/include/asm/pgalloc_64.h b/arch/sparc/include/asm/pgalloc_64.h index cb4867d..f2df91e 100644 --- a/arch/sparc/include/asm/pgalloc_64.h +++ b/arch/sparc/include/asm/pgalloc_64.h @@ -76,7 +76,52 @@ static inline void pte_free(struct mm_struct *mm, pgtable_t ptepage) #define ...
Apr 8, 6:00 pm 2010
David Miller
[PATCH 4/4] sparc64: Implement get_user_pages_fast().
Signed-off-by: David S. Miller <davem@davemloft.net> --- arch/sparc/mm/Makefile | 2 +- arch/sparc/mm/gup.c | 184 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 185 insertions(+), 1 deletions(-) create mode 100644 arch/sparc/mm/gup.c diff --git a/arch/sparc/mm/Makefile b/arch/sparc/mm/Makefile index 79836a7..e3cda21 100644 --- a/arch/sparc/mm/Makefile +++ b/arch/sparc/mm/Makefile @@ -4,7 +4,7 @@ asflags-y := -ansi ccflags-y := -Werror ...
Apr 8, 6:00 pm 2010
David Miller
[PATCH 3/4] sparc64: Add support for _PAGE_SPECIAL
Luckily there are still a few software PTE bits remaining and they even match up in both the sun4u and sun4v pte layouts. Signed-off-by: David S. Miller <davem@davemloft.net> --- arch/sparc/include/asm/pgtable_64.h | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-) diff --git a/arch/sparc/include/asm/pgtable_64.h b/arch/sparc/include/asm/pgtable_64.h index f5b5fa7..b06c5a7 100644 --- a/arch/sparc/include/asm/pgtable_64.h +++ ...
Apr 8, 6:00 pm 2010
David Miller
[PATCH 1/4] sparc64: Kill page table quicklists.
They are pointless and make it harder to use RCU page table freeing and share code with other architectures. BTW, this is the second time this has happened, see commit 3c936465249f863f322154ff1aaa628b84ee5750 Signed-off-by: David S. Miller <davem@davemloft.net> --- arch/sparc/Kconfig | 4 ---- arch/sparc/include/asm/pgalloc_64.h | 32 +++++++++++++++----------------- arch/sparc/mm/tsb.c | 11 +++++++++++ 3 files changed, 26 insertions(+), 21 ...
Apr 8, 6:00 pm 2010
Liang Li
[PATCH v3] x86: let 'reservetop' functioning right
When specify 'reservetop=0xbadc0de' kernel parameter, the kernel will stop booting due to a early_ioremap bug that relate to commit 8827247ff. The root cause of boot failure problem is the value of 'slot_virt[i]' was initialized in setup_arch->early_ioremap_init. But later in setup_arch, the function 'parse_early_param' will modify 'FIXADDR_TOP' when 'reservetop=0xbadc0de' being specified. The simplest fix might be use __fix_to_virt(idx0) to get updated value of 'FIXADDR_TOP' in ...
Apr 8, 5:43 pm 2010
Jeremy Fitzhardinge
Re: [PATCH v3] x86: let 'reservetop' functioning right
While I guess this patch works OK, I have to say that I'm worried by the need for it at all; it seems to be papering over a more serious problem. reserve_top_address() is supposed to be called very early, before anything has used or referenced FIXADDR_TOP. If we're seeing problems with FIXADDR_TOP changing after it has been used, then it means that reserve_top_address() is being called too late. Fixing that would be the real fix. --
Apr 8, 8:12 pm 2010
Liang Li
Re: [PATCH v3] x86: let 'reservetop' functioning right
The ideal thing is FIXADDR_TOP should not be touched after early_ioremap_init. The late call to reserve_top_address is from parse_reservetop, aka when reservetop=0xabcd0000 being passed as kernel commandline parameter. In setup_arch, the call sequence is: setup_arch -> early_ioremap_init -> parse_early_param -> parse_reservetop ->reserve_top_address See, how could we solve the confliction better? Best regards, --
Apr 8, 8:23 pm 2010
Jeremy Fitzhardinge
Re: [PATCH v3] x86: let 'reservetop' functioning right
Well, the first question is "do we need the reservetop= kernel parameter"? Zach added it, I think, so that VMI could be loaded dynamically as a module. Given that VMI is deprecated anyway, I wonder if we can just drop support for modular VMI and remove the reservetop= kernel parameter. Or are there other uses for it? J --
Apr 8, 8:41 pm 2010
Liang Li
Re: [PATCH v3] x86: let 'reservetop' functioning right
Agree. We can remove the 'reservetop=' kernel parameter then the problem dispear. :) But we don't have to..... Regards, -Liang Li --
Apr 8, 8:52 pm 2010
Jeff Garzik
Re: 2.6.33: libata issues with VIA SATA/PATA controller
(adding linux-ide to CC) A complete dmesg is definitely useful. Posting one from the failing kernel would be preferred, though. That will show us libata boot messages as well as the failures you are seeing, in full detail. Also, please try the latest 2.6.34-rc kernel, as that has several fixes for both pata_via and sata_via which did not make 2.6.33. Jeff --
Apr 8, 9:26 pm 2010
Jonathan Woithe
2.6.33: libata issues with VIA SATA/PATA controller
Hi I have a machine equipped with the following SATA/PATA controllers: * 00:0f.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/ VT823x/A/C PIPC Bus Master IDE (rev 06) * 00:0f.0 RAID bus controller: VIA Technologies, Inc. VIA VT6420 SATA RAID Controller (rev 80) Two hard drives are attached to the SATA controller (messages from 2.6.24.2): scsi 0:0:0:0: Direct-Access ATA WDC WD2502ABYS-0 02.0 PQ: 0 ANSI: 5 scsi 1:0:0:0: Direct-Access ATA ...
Apr 8, 5:43 pm 2010
Stephen Rothwell
linux-next: manual merge of the net tree with Linus' tree
Hi all, Today's linux-next merge of the net tree got a conflict in net/core/ethtool.c between commit 5a0e3ad6af8660be21ca98a971cd00f331318c05 ("include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h") from Linus' tree and commit 97f8aefbbfb5aa5c9944e5fa8149f1fdaf71c7b6 ("net: fix ethtool coding style errors and warnings") from the net tree. Just context changes. I fixed it up (see below) and can carry the fix for a while. -- ...
Apr 8, 5:41 pm 2010
Gertjan van Wingerde
Re: 2.6.34-rc3-git8: Reported regressions 2.6.32 -> 2.6.33
This one ought to be fixed by commit 9e76ad2a27f592c1390248867391880c7efe78b3 in Linus' tree. --- Gertjan. --
Apr 8, 7:36 pm 2010
Miguel Ojeda Apr 9, 4:53 am 2010
Rafael J. Wysocki Apr 9, 12:54 pm 2010
David Dillow
Re: [Bug #15454] r8169 exits with error -22 since 2.6.33
Francois attached a patch to the bugzilla entry that ignores the failure to enable MWI on the device. That may get the NIC up and running, but that area of the driver doesn't seem to have changed since 2.6.32, so perhaps this is just a canary -- I'm betting that the cache line size is not getting set properly, and it probably affects more than just this NIC. --
Apr 8, 6:14 pm 2010
Rafael J. Wysocki
Re: [Bug #14792] Misdetection of the TV output
Great, thanks for the update. Rafael --
Apr 9, 12:48 pm 2010
Rafael J. Wysocki Apr 9, 12:49 pm 2010
Rafael J. Wysocki Apr 9, 12:50 pm 2010
Rafael J. Wysocki Apr 9, 12:56 pm 2010
Oliver Neukum
Re: USB transfer_buffer allocations on 64bit systems
It'll work on x86. On incoherent architectures this violates the cacheline rules for DMA-mapping if you have to bounce. So it seems to me that if you want to share a buffer between URBs, it must be coherent. Regards Oliver --
Apr 8, 11:04 pm 2010
Jeff Mahoney
Re: [PATCH #3] reiserfs: Fix permissions on .reiserfs_priv
Yes. The other half of it is that the priv_root dentry being stuck in the dcache for as long as the flie system is mounted is a guaranteed since REISERFS_SB(sb) holds a reference to it until reiserfs_kill_sb is called. -Jeff -- Jeff Mahoney SuSE Labs --
Apr 8, 5:04 pm 2010
Nick Piggin
Re: [PATCH 07/13] powerpc: Preemptible mmu_gather
Hm. Pity powerpc can't just use tlb flush gathering for this batching, (which is what it was designed for). Then it could avoid these tricks. What's preventing this? Adding a tlb gather for COW case in copy_page_range? --
Apr 8, 9:07 pm 2010
Peter Zijlstra
Re: [PATCH 00/13] mm: preemptibility -v2
If you don't mind, please. If you send them my way I'll run them on my machines too. --
Apr 9, 1:58 am 2010
David Miller
Re: [PATCH 00/13] mm: preemptibility -v2
From: David Miller <davem@davemloft.net> Here comes a set of 4 patches which build on top of your work by: 1) Killing quicklists on sparc64 2) Using the generic RCU page table liberation code on sparc64 3) Implement pte_special() et al. on sparc64 4) Implement get_user_pages_fast() on sparc64 Please add them to your patch set. If you change the RCU generic code enabler CPP define to be controlled via Kconfig (as we discussed on IRC) it should be easy to propagate that change into patch ...
Apr 8, 6:00 pm 2010
Nick Piggin
Re: [PATCH 00/13] mm: preemptibility -v2
What's the straight-line performance impact of all this? And how about concurrency, I wonder. mutexes of course are double the atomics, and you've added a refcount which is two more again for those paths using it. Page faults are very important. We unfortunately have some databases doing a significant amount of mmap/munmap activity too. I'd like to see microbenchmark numbers for each of those (both anon and file backed for page faults). kbuild does quite a few pages faults, that would be ...
Apr 8, 9:14 pm 2010
Peter Zijlstra
Re: [PATCH 07/13] powerpc: Preemptible mmu_gather
I'm not quite sure what about that, didn't fully investigate it, just wanted to get something working for now. Of of the things is that both power and sparc need more than the struct page we normally gather. I did think of making the mmu_gather have something like struct mmu_page { struct page *page; #ifdef HAVE_ARCH_TLB_VADDR unsigned long vaddr; #endif }; struct mmu_gather { ... unsigned int nr; struct mmu_page *pages; }; and doing that vaddr collection right ...
Apr 9, 1:14 am 2010
Peter Zijlstra
Re: [PATCH 00/13] mm: preemptibility -v2
You think this would affect the mmap/munmap times in any significant OK, I'll dig out that fault test used in the whole mmap_sem/rwsem thread I'll try and get some perf stat runs to get some insight into this. But the numbers were: time make O=defconfig -j48 bzImage (5x, cache hot) without: avg: 39.2018s +- 0.3407 with: avg: 38.9886s +- 0.1814 --
Apr 9, 1:35 am 2010
Nick Piggin
Re: [PATCH 07/13] powerpc: Preemptible mmu_gather
No it's not your problem, but just perhaps a good add-on to your Well you could also have a per-arch struct for this, which they can --
Apr 9, 1:46 am 2010
Nick Piggin
Re: [PATCH 00/13] mm: preemptibility -v2
They're actually not _too_ heavy because they just setup and tear down vmas. No flushing or faulting required (well, in order to make any _use_ of them you need flushing and faulting of course). I have some microbenchmarks like this and the page fault test I Well that's interesting. Nice if it is an improvement not just some anomoly. I'd start by looking at TLB flushes maybe? For testing, it would be nice to make the flush sizes equal so you get more of a comparison of the straight line ...
Apr 9, 1:50 am 2010
Martin Schwidefsky
Re: [PATCH 00/13] mm: preemptibility -v2
Hi Peter, On Thu, 08 Apr 2010 21:17:37 +0200 Yes, that is a good thing. With the preemptible mmu_gather s390 will use less IDTEs (that is the instruction that flushes all TLBs for a To get the 'interesting' TLB flushing on s390 working again you need this patch: -- [PATCH] s390: preemptible mmu_gather From: Martin Schwidefsky <schwidefsky@de.ibm.com> Adapt the stand-alone s390 mmu_gather implementation to the new preemptible mmu_gather interface. Signed-off-by: Martin ...
Apr 9, 1:58 am 2010
David Howells
Re: [PATCH 00/13] mm: preemptibility -v2
Have you tried compiling this for NOMMU? David --
Apr 9, 2:03 am 2010
Peter Zijlstra
Re: [PATCH 07/13] powerpc: Preemptible mmu_gather
Ah, right you are. Maybe something like: #ifndef tlb_fill_page struct mmu_page { struct page *page; }; #define tlb_fill_page(tlb, pte, addr) do { } while (0) #endif Which can be used from the tlb_remove_tlb_entry() implementation to gather both the pte and addr. The only complication seems to be that tlb_remove_tlb_entry() and tlb_remove_page() aren't always matched. Also, it looks like both power and sparc drive the pte/vaddr flush from the pte_update/set_pte_at like functions. ...
Apr 9, 2:22 am 2010
Peter Zijlstra
Re: [PATCH 00/13] mm: preemptibility -v2
No, I will eventually, I'm sure there's something to fix. --
Apr 9, 2:22 am 2010
Peter Zijlstra Apr 9, 2:53 am 2010
Nick Piggin
Re: [PATCH 09/13] mm, powerpc: Move the RCU page-table f ...
Really? I see the comment in the powerpc code, but powerpc was already using RCU before gup_fast(), and AFAIKS it is indeed using it so that it can handle faults by getting the linux pte with find_linux_pte ? I would have thought this should be a well used method for handling software TLB faults. But anyway this looks like a nice abstraction. --
Apr 8, 8:35 pm 2010
Peter Zijlstra
Re: [PATCH 09/13] mm, powerpc: Move the RCU page-table f ...
Ah, see that is my ignorance of the powerpc mmu code, I've only been staring at this mmu_gather piece long enough to (hopefully) make it work. If there is indeed more to it, then yes, that needs documenting. --
Apr 9, 1:08 am 2010
Minchan Kim
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
Hi, Peter. We have second defense rule by page_check_address. Before anon_vma is detached, pte of pages on the anon_vma should be zeroed. So can't page_check_address close the race? Thanks for good trial for good feature. -- Kind regards, Minchan Kim --
Apr 8, 7:19 pm 2010
KOSAKI Motohiro
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
FWIW, not only early bail out. page_remove_rmap() don't have "page->mapping = NULL". page_remove_rmap's comment says /* * It would be tidy to reset the PageAnon mapping here, * but that might overwrite a racing page_add_anon_rmap * which increments mapcount after us but sets mapping * before us: so leave the reset to free_hot_cold_page, * and remember that it's only reliable while mapped. * Leaving it set also helps swapoff to ...
Apr 8, 7:19 pm 2010
Nick Piggin Apr 8, 8:16 pm 2010
KAMEZAWA Hiroyuki
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
On Fri, 9 Apr 2010 13:16:41 +1000 IIUC. Before Rik's change to anon_vma, once page->mapping is set as anon_vma | 0x1, it's not modified until the page is freed. After the patch, do_wp_page() overwrite page->mapping when it reuse existing page. == static int do_wp_page(struct mm_struct *mm, struct vm_area_struct *vma, unsigned long address, pte_t *page_table, pmd_t *pmd, spinlock_t *ptl, pte_t orig_pte) { .... if (PageAnon(old_page) && ...
Apr 8, 9:56 pm 2010
KOSAKI Motohiro
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
Why? IIUC. page->mapping dereference in page_lock_anon_vma() makes four story. 1. the anon_vma is valid -> do page_referenced_one(). 2. the anon_vma is invalid and freed to buddy -> bail out by page_mapped(), no touch anon_vma 3. the anon_vma is kfreed, and not reused -> bail out by page_mapped() 4. the anon_vma is kfreed, but reused as another anon_vma -> bail out by page_check_address() Now we have to consider 5th story. 5. the anon_vma is exchanged another anon_vma by ...
Apr 8, 11:34 pm 2010
KAMEZAWA Hiroyuki
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
On Fri, 9 Apr 2010 15:34:33 +0900 (JST) Hmm, I think following. Assume a page is ANON and SwapCache, and it has only one reference. Consider it's read-only mapped and cause do_wp_page(). page_mapcount(page) == 1 here. CPU0 CPU1 1. do_wp_page() 2. ..... 3. replace anon_vma. anon_vma = lock_page_anon_vma() So, lock_page_anon_vma() may have lock on wrong anon_vma, here.(mapcount=1) 4. modify pte to writable. do something... After lock, in ...
Apr 8, 11:47 pm 2010
KOSAKI Motohiro
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
Hehe, page_referenced() already can take unstable VM_LOCKED value. So, In worst case we make false positive pageout, but it's not disaster. I think. Anyway "use after free" don't happen by this blutal code. However, I think you pointed one good thing. before Rik patch, we don't have page->mapping reassignment. then, we didn't need rcu_dereference(). but now it can happen. so, I think rcu_dereference() is better. Perhaps, I'm missing something. diff --git a/mm/rmap.c b/mm/rmap.c index ...
Apr 9, 12:29 am 2010
KAMEZAWA Hiroyuki
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
On Fri, 9 Apr 2010 16:29:59 +0900 (JST) Hmm. I wonder we can check "whether we lock valid anon_vma or not" only under pte_lock or lock_page(). == anon_vma = page_anon_vma(); lock(anon_vma->lock); .... page_check_address(page) .... pte_lock(); if (page_anon_vma(page) == anon_vma) # anon_vma replacement happens! unlock(anon_vma->lock); == So, rather than page_lock_anon_vma(), page_check_address() may have to check anon_vma replacement....But I cannot think of dangerous ...
Apr 9, 12:57 am 2010
Minchan Kim
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
Hi, Kosaki. On Fri, Apr 9, 2010 at 4:29 PM, KOSAKI Motohiro OFF-TOPIC: I think you pointed out good thing, too. :) You mean although application call mlock of any vma, few pages on the vma can be swapout by race between mlock and reclaim? Although it's not disaster, apparently it breaks API. Man page " mlock() and munlock() mlock() locks pages in the address range starting at addr and continuing for len bytes. All pages that contain a part of the specified address range are ...
Apr 9, 1:01 am 2010
KAMEZAWA Hiroyuki
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
On Fri, 9 Apr 2010 16:57:03 +0900 Ah...anon_vma replacemet occurs under lock_page() and pte_lock. Almost all callers of page_lock_anon_vma() holds lock_page(). So, I think this anon_vma replacement is not very serious. Hmm... Thanks, -Kame --
Apr 9, 1:03 am 2010
KOSAKI Motohiro
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
I'm surprising this mail. you were pushing much patch in this area. I believed you know all stuff ;) My answer is, it don't need to fix, because it's not bug. The point is that this one is race issue. not "pageout after mlock" issue. If pageout and mlock occur at the exactly same time, the human can't observe which event occur in first. it's not API violation. Thanks. --
Apr 9, 1:17 am 2010
KAMEZAWA Hiroyuki
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
On Fri, 9 Apr 2010 17:03:49 +0900 Sorry for short mails ;( Note:vmscan.c::shrink_active_list() -> page_referenced() doesn't take lock_page() and may see wrong anon_vma by replacement. Don't we need lock_page() around ? Thanks, -Kame --
Apr 9, 1:24 am 2010
Peter Zijlstra
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
Yes, I think this is indeed required. I'll do a new version of the patch that includes the comment updates requested by Andrew. --
Apr 9, 1:44 am 2010
Peter Zijlstra
Re: [PATCH 02/13] mm: Revalidate anon_vma in page_lock_a ...
OK, so I'm not quite sure about this anymore... this locking is quite,.. umh,. interesting. We have: - page_remove_rmap() - which decrements page->_mapcount but does not clear page->mapping. Even though both it and page_add_anon_rmap() require pte_lock, there is no guarantee these are the same locks, so these can indeed race. So there is indeed a possibility for page->mapping to change, but holding anon_vma->lock won't make a difference. - anon_vma->lock - this does protect ...
Apr 9, 5:57 am 2010
Minchan Kim
mlock and pageout race?
Hi, Kosaki. I don't want to make noise due to off-topic. So I open new thread. If I disappoint you, sorry for that. If it might happen, it's obviously API violation, I think. int main() { mlock(any vma, CURRENT|FUTURE); system("cat /proc/self/smaps | grep "any vma"); .. } result : 08884000-088a5000 rw-p 00000000 00:00 0 [any vma] Size: 4 kB Rss: 4 kB ... Swap: 4 kB ... Apparently, user expected that "If ...
Apr 9, 7:41 am 2010
Nick Piggin
Re: [PATCH 01/13] powerpc: Add rcu_read_lock() to gup_fa ...
It's not wrong per se, but the entire powerpc memory management code does the IRQ disabling for its pagetable RCU code. So I think it would be better to do the whole thing in one go. I don't think Paul will surprise-break powerpc :) It's up to Ben really, though. --
Apr 8, 8:11 pm 2010
Peter Zijlstra
Re: [PATCH 06/13] mm: Preemptible mmu_gather
Measuring ITLB_FLUSH on Intel nehalem using: perf stat -a -e r01ae make O=defconfig-build/ -j48 bzImage -linus 5825850 +- 2545 (100%) +patches 5891341 +- 6045 (101%) +below 5783991 +- 4725 ( 99%) (No slab allocations yet) Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> --- include/asm-generic/tlb.h | 122 ++++++++++++++++++++++++++++++---------------- 1 file changed, 82 insertions(+), 40 deletions(-) Index: ...
Apr 9, 1:36 pm 2010
Nick Piggin
Re: [PATCH 06/13] mm: Preemptible mmu_gather
Have you done some profiling on this? What I would like to see, if it's not too much complexity, is to have a small set of pages to handle common size frees, and then use them up first by default before attempting to allocate more. Also, it would be cool to be able to chain allocations to avoid TLB flushes even on big frees (overridable by arch of course, in case they're doing some non-preeemptible work or you wish to break Slab allocations should be faster, so it's nice to use them ...
Apr 8, 8:25 pm 2010
Peter Zijlstra
Re: [PATCH 06/13] mm: Preemptible mmu_gather
Did no profiling at all, back when I wrote this I was in a hurry to get this working for -rt. But yes, those things do look like something we want to look into, we can easily add a head structure to these pages like we did for the RCU batches. But as it stands I think we can do those things as incrementals on top of this, no? What kind of workload would you recommend I use to profile this? --
Apr 9, 1:18 am 2010
Rik van Riel
Re: [PATCH 04/13] mm: Move anon_vma ref out from under C ...
Reviewed-by: Rik van Riel <riel@redhat.com> --
Apr 9, 5:35 am 2010
Peter Zijlstra Apr 9, 2:57 am 2010
Christian Ehrhardt
Re: [PATCH 05/13] mm: Make use of the anon_vma ref count
Hi, AFAICS anon_vma_put might be called with anon_vma == NULL here which will oops on the ref count. Not sure if page_rmapping(page) == anon_vma == NULL is possible, too. regards Christian --
Apr 9, 12:04 am 2010
Rik van Riel
Re: [PATCH 10/13] lockdep, mutex: Provide mutex_lock_nest_lock
Reviewed-by: Rik van Riel <riel@redhat.com> --
Apr 9, 8:36 am 2010
Peter Zijlstra
Re: [PATCH 13/13] mm: Optimize page_lock_anon_vma
The thing we gain is that when the holder of the lock finds a !0 refcount it knows it can't go away because any free will first wait to No, synchronize_rcu_expedited() will not work here, there is no RCU read side that covers the full usage of the anon_vma (there can't be, it Right so the only thing rcu_read_lock() does here is create the guarantee that anon_vma is safe to dereference (it lives on a SLAB_DESTROY_BY_RCU slab). But yes, I suppose that page->mapping read that now uses ...
Apr 9, 1:35 am 2010
Paul E. McKenney
Re: [PATCH 13/13] mm: Optimize page_lock_anon_vma
OK. Here is the sequence of events that I am concerned about: 1. CPU 0 invokes page_lock_anon_vma() [13/13], and executes the assignment to anon_vma. It has not yet attempted to acquire the anon_vma->lock mutex. 2. CPU 1 invokes page_unlock_anon_vma() [13/13], which in turn calls anon_vma_put() [5/13], which atomically decrements ->ref, finds it zero, invokes anon_vma_free() [13/13], which finds ->ref still zero, so acquires ->lock and immediately releases it, and then calls ...
Apr 9, 12:22 pm 2010
Rik van Riel
Re: [PATCH 11/13] mutex: Provide mutex_is_contended
Reviewed-by: Rik van Riel <riel@redhat.com> --
Apr 9, 8:37 am 2010
Guy, Wey-Yi
Re: [REVERT] be6b38bcb175613f239e0b302607db346472c6b6. v ...
Hi Jeff, Thanks for verify the patch, you are correct, since I am using the wireless-testing version of the kernel, you will need to make the changes in order to get the patch apply. Sorry for the trouble. Regards --
Apr 8, 8:15 pm 2010
David Miller
Re: pull request: wireless-2.6 2010-04-09
From: "John W. Linville" <linville@tuxdriver.com> Pulled, thanks John. --
Apr 9, 10:03 am 2010
John W. Linville
pull request: wireless-2.6 2010-04-09
Dave, This fix is intended for 2.6.34. It resolves an issue involving an Oops on boxes w/ iwl4965 hardware, apparently introduced by another recent patch. The thread describing the issue and the resolution is here: http://marc.info/?l=linux-kernel&m=127074721531649&w=2 In order to avoid reverting that patch, please accept this fix instead. As usual, please let me know if there are problems! Thanks, John --- The following changes since commit ...
Apr 9, 8:38 am 2010
Holger Schurig
Re: [PATCH] net/wireless/libertas: do not call wiphy_unr ...
> Ping? Pong. I'm a bit swamped with other stuff, so I can't do that right now. That's the pity of someone who can only use this-and-then on kernel projects. --
Apr 9, 6:51 am 2010
Chris Wright
Re: [PATCH 4/6] pci/dmar/sriov: use physfn to search drh ...
Looks good Acked-by: Chris Wright <chrisw@sous-sol.org> --
Apr 8, 5:16 pm 2010
Yinghai
Re: [PATCH 4/6] pci/dmar/sriov: use physfn to search drh ...
please check Subject: [PATCH] pci/dmar/sriov: use physfn to search drhd for VF When virtfn is used, we should use physfn to find correct drhd -v2: add pci_physfn() Suggested by Roland Dreier <rdreier@cisco.com> do can remove ifdef in dmar.c -v3: Chris pointed out we need that for dma_find_matched_atsr_unit too also change dmar_pci_device_match() static Signed-off-by: Yinghai Lu <yinghai@kernel.org> Acked-by: Roland Dreier <rdreier@cisco.com> --- drivers/pci/dmar.c | ...
Apr 8, 5:07 pm 2010
Jesse Barnes
Re: [PATCH 4/6] pci/dmar/sriov: use physfn to search drh ...
On Thu, 08 Apr 2010 17:07:55 -0700 This one looks good: Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org> Thanks, -- Jesse Barnes, Intel Open Source Technology Center --
Apr 9, 8:54 am 2010
David Woodhouse
Re: [PATCH 6/6] intel-iommu: Don't call domain_exit if c ...
Um, shouldn't the next error have the same change? If domain_init() fails before it gets round to initialising the domain->devices list, the same oops in domain_exit() will occur, won't it? It's because domain->devices.{next,prev} are both NULL? -- David Woodhouse Open Source Technology Centre David.Woodhouse@intel.com Intel Corporation --
Apr 9, 8:43 am 2010
Yinghai
Re: [PATCH 6/6] intel-iommu: Don't call domain_exit if c ...
thanks. please check Subject: [PATCH] intel-iommu: Don't call domain_exit if can not attach with iommu when intel_iommu=off or iommu=pt is used, will work well. root cause: domain is initialized after trying attached it, if it can not be attached, don't call domain_exit yet. it will cause kernel crash in domain_exit() after patch will will get error instead of crash. [ 1781.910241] IOMMU: no free domain ids [ 1781.910244] Allocating domain for 0000:d0:1f.5 failed SIOCSIFFLAGS: ...
Apr 9, 10:49 am 2010
David Woodhouse
Re: [PATCH 3/6] pci/dmar: remove the noisy print out abo ...
It's debug output... I'd be more inclined to add it in map_page() than remove it from here. -- David Woodhouse Open Source Technology Centre David.Woodhouse@intel.com Intel Corporation --
Apr 9, 8:34 am 2010
David Woodhouse
Re: [PATCH 1/6] pci/dmar: Don't complain that IOPAIC is ...
Applied, without the ifdef and slightly cleaned up. -- David Woodhouse Open Source Technology Centre David.Woodhouse@intel.com Intel Corporation --
Apr 9, 8:33 am 2010
Florian Tobias Schan ...
Re: [PATCH 10/16] suppress verbose debug messages: chan ...
This patch is fine. Thanks, Florian Tobias Schandinat --
Apr 9, 3:09 pm 2010
Jonathan Corbet
Re: [PATCH 01/16] [FB] viafb: Fix various resource leaks ...
On Thu, 08 Apr 2010 20:22:57 +0200 To me it seems like -ENOMEM could be a bit confusing here; there's a lot of things that could go wrong with that same error return. That said, I did some digging around, and -ENOMEM does seem to be the Indeed. Fixed. Thanks, jon --
Apr 9, 12:31 pm 2010
Jonathan Corbet
Re: [PATCH 05/16] viafb: Determine type of 2D engine and ...
On Fri, 09 Apr 2010 05:20:28 +0200 That would require making an exhaustive list of older chipset types. It could probably be inferred through inspection of the code, but I worry about making assumptions in this area... Thanks, jon --
Apr 9, 1:11 pm 2010
Jonathan Corbet
Re: [PATCH 04/16] viafb: Retain GEMODE reserved bits
On Fri, 09 Apr 2010 22:23:06 +0200 In fact, I already came to this conclusion and have added a patch to have both functions use the same code. Thanks, jon --
Apr 9, 1:30 pm 2010
Jonathan Corbet
Re: [RFC] Initial OLPC Viafb merge
On Fri, 09 Apr 2010 07:43:35 +0200 The OLPC tree is currently based on 2.6.34-rc1. I forgot that your Sorry, the only working platform I had was the OLPC 2.6.31 tree, and there was little point in publishing that by the time it was ready to be seen. That said, I *did* point out the tree where the work could be seen for anybody who was interested. In any case, it's very much my intent to get this stuff out there and in for the next merge window. Thanks for the reviews, I'll get to the ...
Apr 9, 11:46 am 2010
Jonathan Corbet
Re: [PATCH 06/16] viafb: complete support for VX800/VX85 ...
On Fri, 09 Apr 2010 06:21:18 +0200 Ah, good point, the separate write is superfluous. Removed. Harald's initial patch included a mechanism for remapping register writes on the fly depending on which engine was in use; these defines were used for that purpose. Your reworking of the 2D code obliterated that patch, and made it mostly unnecessary. I kept the defines around, though, because I thought that documenting the registers can only be a good thing. Thanks, jon --
Apr 9, 1:18 pm 2010
Florian Tobias Schan ...
Re: [RFC] Initial OLPC Viafb merge
Well the time I looked in your tree I didn't see any of the remaining suspend/resume efforts. Okay perhaps I should have rechecked it now and than. Please correct me if I am wrong but the remaining 6 patches concerning suspend&resume look like a real big FIXME. So at the end it is expected to work only on VX855 and needs something called OFW? It doesn't seem to make much sense to review each of them because the following patches might or might not correct some of the issues of the other. ...
Apr 9, 4:32 pm 2010
Florian Tobias Schan ...
Re: [PATCH 04/16] viafb: Retain GEMODE reserved bits
Hi Jon, in your later patch "[PATCH 06/16] viafb: complete support for VX800/VX855 accelerated framebuffer" you reintroduce initializing those bits to 0. That's fine but I can't see a reason for preserving this bits here as it adds useless overhead unless the hardware itself changed some of those bits and behaves differently according to those bits. Additionally the first 2 bits are not reserved but provide a rotation where 00 is what we want (no rotation). And if you rip code off ...
Apr 8, 8:07 pm 2010
Florian Tobias Schan ...
Re: [PATCH 05/16] viafb: Determine type of 2D engine and ...
That's probably a good idea (although most things are already done in the separate blitting functions). Just a minor nit: Could we change the default so that if someone adds support for a new IGP (and misses this function) we default to either the newest or preferably to none? I've just seen too much poorly maintained code in this driver and defaulting to the oldest is hence a bad idea. Otherwise it's fine. Thanks, --
Apr 8, 8:20 pm 2010
Florian Tobias Schan ...
Re: [PATCH 06/16] viafb: complete support for VX800/VX85 ...
The patch itself looks good. However I have a few minor issues below this obsoletes /* Init 2D engine reg to reset 2D engine */ writel(0x0, engine + VIA_REG_KEYCONTROL); As in the previous patch I'd appreciate a default of printk(KERN_ALERT "viafb_xy: FIXME"); I have to admit to be consistent a few switches that are already there All of these defines are unused. I admit that it is my fault. I've not yet found a way I like to use them as the meaning of the same hardware address ...
Apr 8, 9:21 pm 2010
Florian Tobias Schan ...
Re: [RFC] Initial OLPC Viafb merge
Hi Jon, Thanks a lot for your work I appreciate it very much. However there are 2 things I'd like to ask for: Could you please forward port them to latest mainline? There went some changes in for 2.6.34 that break some of your patches (but not many and at least the first conflict is easy to fix) as I generally prefer to test a version that does not contain too much changes from myself. Yeah, that's already a whole bunch of stuff. I agree that it's time to At least I'd like to see ...
Apr 8, 10:43 pm 2010
Jonathan Corbet
Re: [PATCH 02/16] viafb: use proper pci config API
On Thu, 08 Apr 2010 20:42:17 +0200 That would make sense. But if somebody who is closer to the hardware than That's a good point. I put in a check. Thanks, jon --
Apr 9, 12:46 pm 2010
Jonathan Corbet
Re: [PATCH 04/16] viafb: Retain GEMODE reserved bits
On Fri, 09 Apr 2010 05:07:34 +0200 Somehow the cost of an additional MMIO read at mode setting time is just not going to keep me up at night. I will admit that I've learned to be rather superstitious when it comes to messing with reserved bits. Hardware designers like to hide functionality like "bring down the wrath of the gods" behind such bits. The old code preserved them and worked, so I did the same. I That had crossed my mind; there is quite a bit of duplicated code between those ...
Apr 9, 12:59 pm 2010
Florian Tobias Schan ...
Re: [PATCH 04/16] viafb: Retain GEMODE reserved bits
Hi Jon, Well it's not only mode setting its for each hardware accelerated ...if you insist on it its okay with me. I still disagree but its The code (and the spec regarding the reserved bits also) is obviously identical so please don't ignore it. If you decide to put it in a separate function please do so for both blit engines especially if they really do the same as in this case. As you say they are mostly identical and that's by design. Please keep them in sync if possible. They ...
Apr 9, 1:23 pm 2010
Florian Tobias Schan ...
Re: [PATCH 05/16] viafb: Determine type of 2D engine and ...
Such list already exists. gfx_chip_name = pdi->driver_data in hw.c (and only there) so what is needed is the list viafb_pci_table in viafbdev.c (relatively at the end) of all chips: UNICHROME_CLE266 UNICHROME_PM800 UNICHROME_K400 UNICHROME_K800 UNICHROME_CN700 UNICHROME_K8M890 UNICHROME_CX700 UNICHROME_P4M900 UNICHROME_CN750 UNICHROME_VX800 UNICHROME_VX855 Would appreciate it if you could use this info. Thanks, Florian Tobias Schandinat --
Apr 9, 1:34 pm 2010
Florian Tobias Schan ...
Re: [PATCH 07/16] viafb: Add 1200x900 DCON/LCD panel mod ...
What will happen if someone with no VX855 will try to enter 1200x900 mode? Probably the world won't be destroyed but I have a really ugly feeling that the driver is not well prepared for this situation. Haven't tested yet as I'm waiting for the official forward port but I think it might be better to reschedule this patch for later or add some PLL values that are supposed to work (using/executing the formulas in the VIA open source X driver) Otherwise it looks fine. Thanks, --
Apr 9, 2:27 pm 2010
Florian Tobias Schan ...
Re: [PATCH 08/16] viafb: Do not probe for LVDS/TMDS on O ...
I don't like the idea of OLPC specific code. Isn't there any way to speed this up in general? There is not yet even an option for OLPC_XO_1_5 (in contrast to CONFIG_OLPC) in mainline. Is such a thing planned? I can't really see anything that would speak for accepting this patch now in current mainline, sorry. Thanks, --
Apr 9, 2:40 pm 2010
Florian Tobias Schan ...
Re: [PATCH 09/16] viafb: rework the I2C support in the V ...
I don't know I2C too well and this patch has certainly its issues (the FIXMEs, the hardcoded VIAFB_NUM_I2C, probably others) but in general it looks okay. Therefore I think it should be merged and the issues should be fixed afterwards. Thanks, --
Apr 9, 3:07 pm 2010
Wu Fengguang
Re: [PATCH] Revert "memory-hotplug: add 0x prefix to HEX ...
Hi Heiko, Ack to revert it. Sorry for killing your time! Thanks, Fengguang --
Apr 8, 6:42 pm 2010
KOSAKI Motohiro
Re: [PATCH] Revert "memory-hotplug: add 0x prefix to HEX ...
I agree to revert, too. I guess nobody see my NAK for original mail (;_;) --
Apr 9, 1:31 am 2010
Rafael J. Wysocki
Re: 2.6.33.2 circular locking, hibernate, dm-crypt
Well, it's always a good idea to try the current Linus' tree. Rafael --
Apr 9, 1:02 pm 2010
Richard Zidlicky
Re: 2.6.33.2 circular locking, hibernate, dm-crypt
I can try it, or if you have a particular patch set try to apply it to 2.6.33. It is not 100% reproducible however. Richard --
Apr 9, 3:08 am 2010
Nikanth Karthikesan
Re: [PATCH] loop: Update mtime when writing using aops
If we update mtime only during tear down, we might miss to backup after a system crash or scenarios where the loop device is not deleted after use during backup. Also when relatime is used, it is better to change mtime on time. :-) Thanks for taking the patch. Thanks Nikanth --
Apr 8, 10:22 pm 2010
Xiaotian Feng
Re: [PATCH] slab: fix caller tracking on !CONFIG_DEBUG_S ...
Sorry, I didn't realized this, can we use (defined(CONFIG_TRACING) && --
Apr 8, 11:28 pm 2010
David Rientjes
Re: [PATCH] slab: fix caller tracking on !CONFIG_DEBUG_S ...
The valid configurations are (CONFIG_SLAB && (CONFIG_DEBUG_SLAB || CONFIG_TRACING)) || CONFIG_SLUB --
Apr 9, 9:49 am 2010
Michael Schnell
Re: atomic RAM ?
I never said this would be easy ;) Maybe it's close to impossible :( I had hoped modifying the "atomic" macros for the arch in question in a way that they use a handle instead of a pointer to the "atomic" variable in a compatible way and then modifying the code that uses these macros in a way that theses handles are created by additional macros that with other archs can be uses optionally (in a compatible way: returning the appropriate pointer) could work. But of course you are correct that ...
Apr 9, 2:23 am 2010
Michael Schnell
Re: atomic RAM ?
Hmm. The code implements the lock as a busy spinning wait. This of course is not possible in real world, as the thread that has the lock will not get any CPU time (e.g. in a non-SMP system). I understand that the main purpose of the FUTEX Kernel call(s) is doing a not-busy wait and having the "unlock" code wake the (next) waiting thread. I did implement something like this in my testing program: enhanced by a sleep to allow for the thread that has the lock to proceed it's work, but this of ...
Apr 9, 6:32 am 2010
Alan Cox
Re: atomic RAM ?
You are completing missing the point Linux + glibc platforms don't "need" futex - you need fast user space locks. Futex is an implementation of those locks really based around platforms with atomic instructions. People were doing fast user space locks before Linus was even born and on machines without atomic operations. Seperate out - the purpose for which the system exists (fast user locking) - the interfaces by which it must be presented (posix pthread mutex) Nope. Glibc allows you to ...
Apr 9, 4:54 am 2010
Michael Schnell
Re: atomic RAM ?
I don't see how (to do FUTEX) a hashlock can be implemented in a way that we stay in user mode when locking it and - if it's already locked - we do a Kernel call for waiting on it being unlocked by another thread. (This is what FUTEX does.) -Michael --
Apr 9, 3:54 am 2010
Mike Frysinger
Re: atomic RAM ?
the Blackfin already has such an instruction (TESTSET), but since it has restrictions (cannot be used safely on cached memory), we found it unusable as a generic solution. this is why we went to the userspace fixed atomic code region. the only time we use this instruction is with the Blackfin SMP port, and only as an inter-core lock (so it has a fixed address and there is only one such lock). i think you underestimate the task of customizing every userspace point that may want atomic ...
Apr 8, 6:36 pm 2010
Alan Cox
Re: atomic RAM ?
Lamport's Bakery is the classic algorithm for doing this. It has very minimal assumptions about visibility of writes and the order they are seen so should certainly work uniprocessor and may work SMP depending upon the cache coherency rules. It doesn't scale well to large numbers of threads however. Alan --
Apr 9, 6:15 am 2010
Michael Schnell
Re: atomic RAM ?
Found it in Wikipedia. I'm working on the text... Thanks a lot ! -Michael --
Apr 9, 6:14 am 2010
Michael Schnell
Re: atomic RAM ?
FUTEX is kind of _invisible_ to the user code.Usually it's hidden behind pthread_mutex() and pthread_mutex_...() automatically falls back to non-FUTEX based locking (that always do Kernel calls). But it is very relevant, as without it, a multithreaded application will perform a lot poorer. Here many locks might be necessary to protect resources (mostly modifications to memory locations) used by multiple threads (running on multiple CPUs when doing SMP). This can happen very often and always ...
Apr 9, 3:55 am 2010
Michael Schnell
Re: atomic RAM ?
Of course you are right, but IMHO this is why FUTEX was invented (and AFAIK, Linux himself did the first implementation). With FUTEX there is a standard way of speeding up Posix compatible thread locking (by implementing the user space part of FUTEX in the pthread part of libc and defining a Kernel interface for the fast thread locking/unlocking functions that is not (much ?) more arch depending than other Kernel interfaces. Of course you are right that my suggestion in fact contradicts to ...
Apr 9, 5:53 am 2010
Stephen Rothwell
Re: linux-next: powerpc boot failure
Hi Timo, That patch allows my machine to boot. Thanks. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/
Apr 8, 5:08 pm 2010
Cong Wang
Re: [v3 Patch 2/3] bridge: make bridge support netpoll
Probably no, because only br_netpoll_cleanup() will be called Yes? netpoll_send_skb() needs to see IFF_IN_NETPOLL is set, so we can't clear this bit before calling it. Yes? The first messages explains the reason for the second message. Thanks. --
Apr 8, 10:43 pm 2010
Daisuke Nishimura
Re: [PATCH] memcg: update documentation v3
I can't write to it now. # echo $$ >/cgroup/memory/01/cgroup.procs -bash: echo: write error: Invalid argument # ls -l /cgroup/memory/01/cgroup.procs -r--r--r-- 1 root root 0 2010-04-09 10:41 /cgroup/memory/01/cgroup.procs # uname -a Linux GibsonE 2.6.34-rc3-mm1-00432-g37c11f5 #1 SMP Thu Apr 8 11:03:39 JST 2010 x86_64 x86_64 x86_64 GNU/Linux And kernel/cgroup.c says: 3161 { 3162 .name = CGROUP_FILE_GENERIC_PREFIX "procs", 3163 .open = ...
Apr 8, 7:11 pm 2010
Daisuke Nishimura
Re: [PATCH] memcg: update documentation v3
It seems nice overall. Thank you for your work. I have a few minor comments. IIUC, writing to cgroup.procs isn't supported yet. So, I think we don't have to Is this line necessary ? We say the similar thing above("A PageCache page is hmm, chapter 2 is used as "2. Memory Control" already :( Otherwise, it looks good to me. Thanks, Daisuke Nishimura. --
Apr 8, 6:26 pm 2010
KAMEZAWA Hiroyuki
Re: [PATCH] memcg: update documentation v3
On Fri, 9 Apr 2010 10:26:26 +0900 It's supported. See Documetaion/cgroup/cgroup.txt Thanks, --
Apr 8, 6:45 pm 2010
KAMEZAWA Hiroyuki
Re: [PATCH] memcg: update documentation v3
On Fri, 9 Apr 2010 11:11:45 +0900 Ouch....I have to fix (our internal) user manual, too..... Thanks, -Kame --
Apr 8, 8:01 pm 2010
KAMEZAWA Hiroyuki
[PATCH] memcg: update documentation v4
Thank you all. == Documentation update. Some information are old, and I think current documentation doesn't work as "a guide for users". We need summary of all of our controls, at least. Changelog: 2010/04/09 * replace 'lru' with 'LRU' and 'oom' with 'OOM' * fixed double-space breakage * applied all comments and fixed wrong parts pointed out. * fixed cgroup.procs Changelog: 2009/04/07 * fixed tons of typos. * replaced "memcg" with "memory cgroup" AMAP. * replaced "mem+swap" with ...
Apr 8, 9:45 pm 2010
Daisuke Nishimura
Re: [PATCH] memcg: update documentation v4
Looks good to me. Reviewed-by: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp> Thanks, --
Apr 8, 10:50 pm 2010
Randy Dunlap
Re: [PATCH] memcg: update documentation v4
I would have said: Why remove those leading spaces (indent/text alignment)? Almost there. :) thanks, --- ~Randy --
Apr 9, 10:04 am 2010
Tejun Heo
[PATCH 2/5 UPDATED] percpu: reorganize chunk creation an ...
Reorganize alloc/free_pcpu_chunk() such that chunk struct alloc/free live in pcpu_alloc/free_chunk() and the rest in pcpu_create/destroy_chunk(). While at it, add missing error handling for chunk->map allocation failure. This is to allow alternate chunk management implementation for percpu nommu support. Signed-off-by: Tejun Heo <tj@kernel.org> Reviewed-by: David Howells <dhowells@redhat.com> Cc: Graff Yang <graff.yang@gmail.com> Cc: Sonic Zhang <sonic.adi@gmail.com> --- Add code to ...
Apr 9, 2:58 am 2010
Brian Haslett
Re: [PATCH] increase pipe size/buffers/atomicity :D
I wouldn't say it addresses anything that I'd really consider broken; it started as a personal experiment of mine, aimed at some little performance gain. I figured, hey, bigger pipes, why not? Looks like actually, the reason I went after this, gets into the only reason I started this whole ordeal to begin with, line#135 in pipe_fs_i.h that You'd think so (according to some posts I'd read before I tried this), but I actually tried several variations on a few things, and until I changed ...
Apr 9, 12:50 pm 2010
Liang Li
Re: [LKML] Re: + x86-fix-handling-of-the-reservetop-boot ...
Thanks all. Updated patch will be sent out soon. Best regards, --
Apr 8, 5:28 pm 2010
H. Peter Anvin
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
Looks like this is something the kernel is assigning to it. It *does* ... but that doesn't seem to keep the PCI code from assigning anything there. This is a Very Bad thing in general... if we're assigning devices to areas marked reserved, we have a huge problem. -hpa --
Apr 9, 3:44 pm 2010
Andy Isaacson
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
Full bootlog attached to https://bugzilla.kernel.org/show_bug.cgi?id=15744 Snippets: [ 0.000000] BIOS-e820: 00000000bfe55c00 - 00000000c0000000 (reserved) [ 0.000000] BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) [ 0.000000] BIOS-e820: 00000000fec00000 - 00000000fed00400 (reserved) [ 0.000000] BIOS-e820: 00000000fed20000 - 00000000feda0000 (reserved) [ 0.000000] BIOS-e820: 00000000fee00000 - 00000000fef00000 (reserved) [ 0.000000] BIOS-e820: ...
Apr 9, 3:35 pm 2010
Guenter Roeck
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
Fair and good enough, as long as it is going to show up somewhere. Guenter --
Apr 9, 2:01 pm 2010
Guenter Roeck
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
It is used for a custom FPGA implementing a watchdog timer and some other functionality. This is not a matter of supporting such a device in Linux, it is a matter of explicitly excluding non-VGA devices from using VGA memory space. If that is the decision, it might be worthwhile mentioning it somewhere in the documentation, to prevent others from ever using that memory space in an embedded system (and to save them the time needed to find out about it and to identify and implement a ...
Apr 9, 1:31 pm 2010
Guenter Roeck
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
Yes, we have a system which does not have VGA and uses the VGA memory space for another device. I don't know exactly what for, but I can find out if it is relevant. Guenter --
Apr 9, 11:55 am 2010
Yinghai Lu
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
bootlog? what is the address used for AHCI? YH --
Apr 9, 3:27 pm 2010
Bjorn Helgaas
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
Why is this different for 64-bit vs 32-bit? Can you point me to any references where I can learn about this? Bjorn --
Apr 9, 9:04 am 2010
H. Peter Anvin
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
It's not. Any differences between 32 and 64 bits in this area are just plain wrong. -hpa -- H. Peter Anvin, Intel Open Source Technology Center I work for Intel. I don't speak on their behalf. --
Apr 9, 9:44 am 2010
Yinghai
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
then please check this one update e820 at first, and later put them resource tree, but give pci BAR chance to claim the range, before assign unassigned resources. in case some system doesn't have VGA, and use [0xa0000, ..] for mmio of some other pci devices. Yinghai Subject: [RFC PATCH] x86: reserve [0xa0000, 0x100000] in e820 And put those range in resource tree after pci BAR claim those range --- arch/x86/include/asm/setup.h | 1 - arch/x86/kernel/e820.c | 2 +- ...
Apr 9, 10:22 am 2010
H. Peter Anvin
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
[Adding Guenter Roeck as he was commenting on something writing to the VGA area...] Do we have any evidence of any such system? Either which way, the patch looks saner... -hpa --
Apr 9, 11:23 am 2010
Yinghai
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
update version for test Subject: [PATCH] x86: reserve [0xa0000, 0x100000] in e820 Update e820 at first, and later put them resource tree. But give pci BAR chance to claim the range, before assign unassigned resources. In case some system doesn't have VGA, and use [0xa0000, ..] for mmio of some other pci devices. Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: Guenter Roeck <guenter.roeck@ericsson.com> Cc: Andy Isaacson <adi@hexapodia.org> Cc: Bjorn Helgaas ...
Apr 9, 12:55 pm 2010
H. Peter Anvin
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
Quite. We really need to consider if that kind of devices should be supported. -hpa --
Apr 9, 1:11 pm 2010
H. Peter Anvin
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
"Don't use legacy fixed-function addresses for nonstandard purposes." There, there is your documentation. -hpa --
Apr 9, 1:44 pm 2010
Andy Isaacson
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
This doesn't help, my AHCI still fails to initialize in the same way. -andy --
Apr 9, 3:21 pm 2010
Alan Cox
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
It's probably a good idea to only reserve it if the space is actually being used. There are a variety of legitimate reasons to use that space for other things on embedded x86 boards. They are only "legacy fixed function" if you have a PCI bus... --
Apr 9, 3:42 pm 2010
H. Peter Anvin
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
No they're not. The 0xa0000...0xbffff range has been a legacy video area since the very first PC (although the first PC only used 0xb0000..0xbffff, 0xa0000..0xbffff was declared reserved at that time.) I'm wondering what those legitimate reasons are. This is particularly so since it affects our ability to deal with very early errors, long before we have enumerated anything. At this point we can at least lay down bytes in the video area and hope the user can see them. -hpa --
Apr 9, 3:42 pm 2010
Alan Cox
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
IMHO its wrong for both You can only reserve the region in question if you actually have a VGA device and mappings present. It's wrong for non PCI systems It's wrong for legacy ISA systems with monochrome video/no video It's wrong for several embedded platforms. It's wrong if PCI isn't your root bridge Basically the reservation is the wrong way to fix it. A much saner way to fix it would be to simply keep a list of address ranges not to use for PCI device relocation. For I/O ports of ...
Apr 9, 3:51 pm 2010
Alan Cox
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
Depending on your definition of "PC". Quite a few early MSDOS systems had video elsewhere. Some embedded systems without video use the space for other stuff. Lots of ISA 386/486 PCs had cards borrowing the unused bits Thats why you have the bios equipment byte and video queries. --
Apr 9, 3:54 pm 2010
H. Peter Anvin
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
That's what I mean with reserved, I'm using the term in the E820_RESERVED sense. As in "don't put anything there without it being an explicit assignment". -hpa --
Apr 9, 3:55 pm 2010
Yinghai
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
_CRS report those range are used devices under the peer root bus. and in e820_reserve_resources_late, we are using insert_resource_expand_to_fit() to register E820_RESERVED region. could be that insert_resource_expand_to_fit doesn't work in that case. like in the tree when we have [ 0.704003] pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] [ 0.705002] pci_root PNP0A03:00: host bridge window [mem 0x000c0000-0x000effff] [ 0.706002] pci_root PNP0A03:00: host ...
Apr 9, 3:54 pm 2010
H. Peter Anvin
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
With "early MSDOS" I presume you mean pre-386 (early on there were computer makers who thought the MS-DOS universe would work like the CP/M Yes of course; just because we don't want people to do the wrong thing doesn't necessarily mean we won't try to be nice about it, as long as it doesn't cause excessive pains elsewhere. -hpa --
Apr 9, 3:55 pm 2010
Yinghai
Re: [PATCH] x86: Reserve legacy VGA MMIO area for x86_64 ...
Please check Subject: [PATCH] x86: reserve [0xa0000, 0x100000] in e820 Update e820 at first, and later put them resource tree. -V2: reserved that early, no PCI BAR can use it, force them to get new one Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: Guenter Roeck <guenter.roeck@ericsson.com> Cc: Andy Isaacson <adi@hexapodia.org> Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Acked-by: H. Peter Anvin <hpa@zytor.com> --- arch/x86/include/asm/setup.h | 1 - arch/x86/kernel/e820.c ...
Apr 9, 4:01 pm 2010
Robert Hancock
Re: USB transfer_buffer allocations on 64bit systems
True.. except for the fact that the xhci driver currently doesn't do 64-bit DMA either, nor does it support MSI even though the HW supports it (surprisingly enough the NEC Windows driver does, MSI-X even). At this point only Intel likely knows how to do this properly, though, since AFAICS the spec isn't publicly available yet. --
Apr 8, 5:01 pm 2010
Sarah Sharp
Re: USB transfer_buffer allocations on 64bit systems
I hate to break it to you, but 64-bit DMA support is optional for an xHCI implementation. There's a bit in HCCPARAMS that tells whether the host supports it (see the HCC_64BIT_ADDR macro in xhci.h). The xHCI driver currently doesn't do anything with that bit, although it should. What makes you think that? I've seen URB buffers with 64-bit DMA addresses. I can tell when the debug polling loop runs and I look at the DMA addresses the xHCI driver is feeding to the hardware: Dev 1 endpoint ...
Apr 9, 9:50 am 2010
Robert Hancock
Re: USB transfer_buffer allocations on 64bit systems
On Fri, Apr 9, 2010 at 10:50 AM, Sarah Sharp I'm not sure why the address would be that huge, unless it's not actually a physical address, or there's some kind of remapping going The DMA mask for the controller isn't being set anywhere (in the version that's in Linus' current git anyway). In that case it'll default to 32-bit and any DMA mappings above 4GB will need to be remapped. The controller driver doesn't do the mapping itself but the USB core does, passing in the controller device as ...
Apr 9, 4:38 pm 2010
Jonathan Cameron
Re: [PATCH] IIO: Fix adding more than one iio device eventset
It is a bug you will only see if you attempt to bring up two iio devices with event interfaces at the same time. I've no idea if anyone has a, non-dev board where this is happening. If you trigger the bug the second devices probe will fail. So moderately horrible but the problem is fairly self contained. By the look of it two people have run into the bug (or spotted the problem during code review?) so probably worth pushing the fix in sooner rather than later. Thanks, Jonathan --
Apr 9, 6:33 am 2010
Michal Nazarewicz
[PATCHv2 7/8] USB: testusb: an USB testing application
From: David Brownell <dbrownell@users.sourceforge.net> The testusb application can be used to test various USB gadget that implment the source/sink intrerface. This is an import of David Brownel's tool that could be found on the Internet. Signed-off-by: Michal Nazarewicz <m.nazarewicz@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Cc: Marek Szyprowski <m.szyprowski@samsung.com> --- tools/usb/testusb.c | 427 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files ...
Apr 9, 12:21 pm 2010
Chris Mason
Re: PROBLEM + POSS FIX: kernel stack overflow, xfs, many ...
shrink_zone on my box isn't 500 bytes, but lets try the easy stuff first. This is against .34, if you have any trouble applying to .32, just add the word noinline after the word static on the function definitions. This makes shrink_zone disappear from my check_stack.pl output. Basically I think the compiler is inlining the shrink_active_zone and shrink_inactive_zone code into shrink_zone. -chris diff --git a/mm/vmscan.c b/mm/vmscan.c index 79c8098..c70593e 100644 --- ...
Apr 9, 4:38 am 2010
John Berthels
Re: PROBLEM + POSS FIX: kernel stack overflow, xfs, many ...
OK. I should note that we have what appears to be a similar problem on a 2.6.28 distro kernel, so I'm not sure this is a very recent change. (We see the lockups on that kernel, we haven't tried larger stacks + stack instrumentation on the earlier kernel). Do you know if there are any obvious knobs to twiddle to make these codepaths less likely? The cluster is resilient against occasional server death, but frequent death is more annoying. We're currently running with ...
Apr 9, 6:43 am 2010
Eric Sandeen
Re: PROBLEM + POSS FIX: kernel stack overflow, xfs, many ...
FWIW akpm suggested that I add: /* * Rather then using noinline to prevent stack consumption, use * noinline_for_stack instead. For documentaiton reasons. */ #define noinline_for_stack noinline --
Apr 9, 11:05 am 2010
Chris Mason
Re: PROBLEM + POSS FIX: kernel stack overflow, xfs, many ...
Oh yeah, I forgot about that one. If the patch actually helps we can switch it. -chris --
Apr 9, 11:11 am 2010
Thomas Renninger
Re: [PATCH] sched: cpuacct: Track cpuusage for CPU frequencies
Why is accounting of each frequency needed? pcc-cpufreq driver can do every frequency in a range and supports hundreds of different frequencies, thus it does not depend on CPU_FREQ_TABLE. Would the average frequency be enough to track/account? This would avoid the static interface of listing each available freq. It would also count "boosted" frequency case which is avail on most recent Can the frequency change somewhere in the middle between cpuacct_charge is called? What guarantees that the ...
Apr 9, 2:47 am 2010
Mike Chan
Re: [PATCH] sched: cpuacct: Track cpuusage for CPU frequencies
The intent is to track time spent at each cpu frequency to measure power consumption. Userspace can figure out the mapping between frequency and power consumption. This is also a useful indication of what kind of hw performance userspace apps need (does Chrome really need 1ghz?). Paul Menage had suggested an integral earlier in my [RFC] patch. I wasn't completely against the idea but it had a few shortcomings that I couldn't think of decent solutions for. You would have to either pre-define ...
Apr 9, 1:50 pm 2010
Stephen Rothwell Apr 9, 12:13 am 2010
Mauro Carvalho Chehab
Re: linux-next: manual merge of the v4l-dvb tree with Li ...
Hi Stephen, Thanks for pointing it to me. Fixed. I also fixed today a conflict that it would appear on your next pull, between input and v4l-dvb, due to the upstream changes of keytable ops from int to unsigned. -- Cheers, Mauro --
Apr 8, 10:22 pm 2010
Maciej Rutecki
Re: [2.6.34-rc1 REGRESSION] ahci 0000:00:1f.2: controlle ...
I created a Bugzilla entry at https://bugzilla.kernel.org/show_bug.cgi?id=15744 for your bug report, please add your address to the CC list in there, thanks! -- Maciej Rutecki http://www.maciek.unixy.pl --
Apr 9, 12:10 pm 2010
Masami Hiramatsu
Re: [PATCH -tip v2 7/8] perf probe: Remove die() from pr ...
Hi Arnaldo, Has this code done what you suggested? :) I'd like to have your comment. Thank you, -- Masami Hiramatsu e-mail: mhiramat@redhat.com --
Apr 9, 4:18 pm 2010
Masayuki Igawa
Re: High priority threads causing severe CPU load imbalances
From: Peter Zijlstra <peterz@infradead.org> Subject: Re: High priority threads causing severe CPU load imbalances I made a patch for my understanding the load_balance()'s behavior. This patch reduced CPU load imbalances but not perfect. --- Cpu0 :100.0%us, 0.0%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Cpu1 : 90.1%us, 0.0%sy, 0.0%ni, 9.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Cpu2 :100.0%us, 0.0%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Cpu3 :100.0%us, ...
Apr 8, 7:20 pm 2010
Patrick McHardy
Re: mmotm 2010-04-05-16-09 uploaded
Thanks. I've added the attached commit to the nf-next tree. I'll push it to Dave shortly so this can get included in the next tree.
Apr 9, 7:49 am 2010
Valdis.Kletnieks
Re: mmotm 2010-04-05-16-09 uploaded
Confirming - the second version of the patch fixes all the network-related RCU complaints I've been able to trigger...
Apr 8, 5:50 pm 2010
Paul E. McKenney
Re: mmotm 2010-04-05 - another RCU whinge (not network t ...
Color me confused. I cloned James Toy's git repository at git://zen-kernel.org/kernel/mmotm.git, and gitk claims that I am on tag 2010-04-05-16-09, which matches the string above. But when I look at fs/proc/array.c near line 241, I see: 238 static void collect_sigign_sigcatch(struct task_struct *p, sigset_t *ign, 239 sigset_t *catch) 240 { 241 struct k_sigaction *k; 242 int i; 243 244 k = p->sighand->action; 245 for (i ...
Apr 9, 4:16 pm 2010
Peter W. Morreale
Re: [PATCH 4/6] futex: Add FUTEX_LOCK with optional adap ...
nod. My only point was that if only one can spin, and sleeps when the owner is not on CPU, then you virtually guarantee worst case performance under certain conditions (ie: multiple threads coming in at various times) If all spin, and they sleep only on owner block, then the 'unfairness' is potentially more evenly distributed via hardware (and stealing) and when the owner is blocked. Best, --
Apr 9, 6:13 am 2010
Darren Hart
Re: [PATCH 4/6] futex: Add FUTEX_LOCK with optional adap ...
At the time of unlock the owner will have to call FUTEX_WAKE. This task will wake and attempt to acquire the lock - it will lose races with aclready running contenders. Lock stealing, adaptive spinning, etc are Yes it is. These locks are typically used in situations where it is more important that some work gets completed than _which_ work gets completed. Thanks, -- Darren Hart IBM Linux Technology Center Real-Time Linux Team --
Apr 8, 10:41 pm 2010
john cooper
Re: [PATCH V2 0/6][RFC] futex: FUTEX_LOCK with optional ...
Agreed. However from your earlier mail it seemed addressing this scenario was within the scope of consideration. There are two ways to deal with this condition, either reactive in the sense we do so after the lock holder has been preempted and subsequently find we're spinning in sibling thread context attempting to acquire the lock. Or proactively where we provide a time bounded deferral of lock holder preemption with the assumption the lock hold path overhead has negligible effect ...
Apr 8, 10:52 pm 2010
Tvrtko Ursulin
Re: Ooops when working with USB MIDI (2.6.33.1)
A very quick test and it looks good - did not crash in the disconnect and then exit TuxGuitar scenario. Thank you! Tvrtko --
Apr 9, 10:36 am 2010
Tvrtko Ursulin
Re: Ooops when working with USB MIDI (2.6.33.1)
For the second hunk, do you think ep->out->... and so on? That would be more in-line with code present in 2.6.33. Tvrtko --
Apr 8, 11:51 pm 2010
Clemens Ladisch
Re: Ooops when working with USB MIDI (2.6.33.1)
ep->out has been just freed. And in the first hunk, in _drain, the ep pointer is the same as ep->out in _disconnect. In _disconnect, we must not free ep->in and ep->out because those structures might still be accessed by all the functions called from user space. I'll write separate disconnect functions for the endpoint structures when I find time. Regards, Clemens --
Apr 9, 12:19 am 2010
Takashi Iwai
Re: Ooops when working with USB MIDI (2.6.33.1)
At Fri, 9 Apr 2010 07:51:35 +0100, Ah, crap. Sorry, that's just messing up. The revised (compiled but untested) patch is below. thanks, Takashi --- diff --git a/sound/usb/usbmidi.c b/sound/usb/usbmidi.c index 2c59afd..9e28b20 100644 --- a/sound/usb/usbmidi.c +++ b/sound/usb/usbmidi.c @@ -986,6 +986,8 @@ static void snd_usbmidi_output_drain(struct snd_rawmidi_substream *substream) DEFINE_WAIT(wait); long timeout = msecs_to_jiffies(50); + if ...
Apr 9, 12:29 am 2010
Oleg Nesterov
Re: [PATCH 2/2] cpuhotplug: make get_online_cpus() scala ...
But, I must admit, I'd like to avoid adding the new member to task_struct. What do you think about the code below? I didn't even try to compile it, just to explain what I mean. In short: we have the per-cpu fast counters, plus the slow counter which is only used when cpu_hotplug_begin() is in progress. Oleg. static DEFINE_PER_CPU(long, cpuhp_fast_ctr); static struct task_struct *cpuhp_writer; static DEFINE_MUTEX(cpuhp_slow_lock) static long cpuhp_slow_ctr; static bool ...
Apr 9, 5:12 am 2010
Ben Gamari
Re: 32GB SSD on USB1.1 P3/700 == ___HELL___ (2.6.34-rc3)
Indeed. I have found this to be a persistent problem and I really wish there were more interest in debugging this. I have tried bringing the community's resources to bear on this issue several[1] times, and each time we fail to get enough of the right eyes looking at it or developer interest simply vanishes. I've started putting together a list[2] of pertinent threads/patches/bugs/data in hopes that this will lower the energy barrier of getting up to speed on this issue. Hopefully this will ...
Apr 9, 8:56 am 2010
Stephen Hemminger
Re: [RFC] [PATCH v2 3/3] Let host NIC driver to DMA to g ...
On Tue, 6 Apr 2010 14:26:29 +0800 It is critical even now. Once you get past toy benchmarks you will see things like Java processes with 1000 threads all reading at once. --
Apr 8, 5:52 pm 2010
Tony Vroon
Re: commit 9630bdd9 changes behavior of the poweroff - bug?
That didn't change the behaviour for me, sorry. (I made sure to go through a full power down session before trying the patched kernel) Regards, -- Tony Vroon UNIX systems administrator London Internet Exchange Ltd, Trinity Court, Trinity Street, Peterborough, PE1 1DA Registered in England number 3137929 E-Mail: tony@linx.net
Apr 9, 2:20 pm 2010
Rafael J. Wysocki
Re: commit 9630bdd9 changes behavior of the poweroff - bug?
Please check if the patch below changes anything. Rafael --- drivers/acpi/wakeup.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) Index: linux-2.6/drivers/acpi/wakeup.c =================================================================== --- linux-2.6.orig/drivers/acpi/wakeup.c +++ linux-2.6/drivers/acpi/wakeup.c @@ -71,9 +71,9 @@ void acpi_enable_wakeup_device(u8 sleep_ || sleep_state > (u32) dev->wakeup.sleep_state) continue; - /* The wake-up power ...
Apr 9, 1:42 pm 2010
Chris Wright
Re: [PATCH 0/1] uio_pci_generic: extensions to allow acc ...
All of config space, but not raw access to all bits. So the MSI/MSI-X capability writes need to be intermediated. There's bits in the header too. And it's not just PCI, it's extended config space as well, drivers may care about finding their whizzybang PCIe capability and doing someting with it (and worse...they are allowed to put device specific registers there, and worse yet...they do!). thanks, -chris --
Apr 9, 1:09 pm 2010
Tom Lyon
Re: [PATCH 0/1] uio_pci_generic: extensions to allow acc ...
Rainbow or glitter? The 'check' items are already done, not fully tested; probably available next week. Can we leave the others for future patches? Please? And I definitely need help with the PCI config stuff. --
Apr 9, 9:34 am 2010
Avi Kivity
Re: [PATCH 0/1] uio_pci_generic: extensions to allow acc ...
Just so you know what you got into, here are the kvm requirements: - msi interrupts delivered via eventfd (these allow us to inject interrupts from uio to a guest without going through userspace) - nonlinear iommu mapping (i.e. map discontiguous ranges of the device address space into ranges of the virtual address space) - dynamic iommu mapping (support guest memory hotplug) - unprivileged operation once an admin has assigned a device (my preferred implementation is to have all operations ...
Apr 9, 2:58 am 2010
Avi Kivity
Re: [PATCH 0/1] uio_pci_generic: extensions to allow acc ...
Hey, I was expecting we'd have to do all of this. The requirements list was to get the uio maintainers confirmation that this is going in an acceptable direction. Sure. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. --
Apr 9, 10:43 am 2010
Tom Lyon Apr 9, 9:27 am 2010
Joerg Roedel
Re: [PATCH 1/1] uio_pci_generic: extensions to allow acc ...
Btw. This patch posting is broken. It suffers from line-wraps which make it impossible to apply as-is. I was able to fix it but please consider this in your next posting. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Unexpected line-wrap. I also got some whitespace warnings when trying to apply it. Please make sure you fix this in the next version too. Thanks, Joerg --
Apr 9, 2:08 am 2010
Chris Wright
Re: [PATCH 0/1] uio_pci_generic: extensions to allow acc ...
Specifically, intermediated access to config space. For example, need to know about MSI/MSI-X updates in config space. thanks, -chris --
Apr 9, 1:05 pm 2010
Joerg Roedel
Re: [PATCH 0/1] uio_pci_generic: extensions to allow acc ...
Yeah, go in small steps forward. Just post again what you have next week. We can add more functionality step by step. Joerg --
Apr 9, 9:48 am 2010
tip-bot for Borislav ...
[tip:x86/cpu] x86, cpu: Add AMD core boosting feature fl ...
Commit-ID: 5958f1d5d722df7a9e5d129676614a8e5219bacd Gitweb: http://git.kernel.org/tip/5958f1d5d722df7a9e5d129676614a8e5219bacd Author: Borislav Petkov <borislav.petkov@amd.com> AuthorDate: Wed, 31 Mar 2010 21:56:41 +0200 Committer: H. Peter Anvin <hpa@zytor.com> CommitDate: Fri, 9 Apr 2010 14:05:23 -0700 x86, cpu: Add AMD core boosting feature flag to /proc/cpuinfo By semi-popular demand, this adds the Core Performance Boost feature flag to /proc/cpuinfo. Possible use case for this ...
Apr 9, 3:18 pm 2010
tip-bot for Borislav ...
[tip:x86/cpu] powernow-k8: Add core performance boost support
Commit-ID: 73860c6b2fd159a35637e233d735e36887c266ad Gitweb: http://git.kernel.org/tip/73860c6b2fd159a35637e233d735e36887c266ad Author: Borislav Petkov <borislav.petkov@amd.com> AuthorDate: Wed, 31 Mar 2010 21:56:42 +0200 Committer: H. Peter Anvin <hpa@zytor.com> CommitDate: Fri, 9 Apr 2010 14:05:43 -0700 powernow-k8: Add core performance boost support Starting with F10h, revE, AMD processors add support for a dynamic core boosting feature called Core Performance Boost. When a ...
Apr 9, 3:19 pm 2010
tip-bot for Borislav ...
[tip:x86/cpu] x86: Unify APERF/MPERF support
Commit-ID: d65ad45cd82a0db9544469b8c54f5dc5cafbb2d8 Gitweb: http://git.kernel.org/tip/d65ad45cd82a0db9544469b8c54f5dc5cafbb2d8 Author: Borislav Petkov <borislav.petkov@amd.com> AuthorDate: Wed, 31 Mar 2010 21:56:43 +0200 Committer: H. Peter Anvin <hpa@zytor.com> CommitDate: Fri, 9 Apr 2010 14:05:50 -0700 x86: Unify APERF/MPERF support Initialize this CPUID flag feature in common code. It could be made a standalone function later, maybe, if more functionality is ...
Apr 9, 3:19 pm 2010
tip-bot for Mark Lan ...
[tip:x86/cpu] x86, cpufreq: Add APERF/MPERF support for ...
Commit-ID: a2fed573f065e526bfd5cbf26e5491973d9e9aaa Gitweb: http://git.kernel.org/tip/a2fed573f065e526bfd5cbf26e5491973d9e9aaa Author: Mark Langsdorf <mark.langsdorf@amd.com> AuthorDate: Thu, 18 Mar 2010 18:41:46 +0100 Committer: H. Peter Anvin <hpa@zytor.com> CommitDate: Fri, 9 Apr 2010 14:07:40 -0700 x86, cpufreq: Add APERF/MPERF support for AMD processors Starting with model 10 of Family 0x10, AMD processors may have support for APERF/MPERF. Add support for identifying it and ...
Apr 9, 3:19 pm 2010
tip-bot for Mark Lan ...
[tip:x86/cpu] powernow-k8: Fix frequency reporting
Commit-ID: 679370641e3675633cad222449262abbe93a4a2a Gitweb: http://git.kernel.org/tip/679370641e3675633cad222449262abbe93a4a2a Author: Mark Langsdorf <mark.langsdorf@amd.com> AuthorDate: Wed, 31 Mar 2010 21:56:45 +0200 Committer: H. Peter Anvin <hpa@zytor.com> CommitDate: Fri, 9 Apr 2010 14:07:47 -0700 powernow-k8: Fix frequency reporting With F10, model 10, all valid frequencies are in the ACPI _PST table. Cc: <stable@kernel.org> # 33.x 32.x Signed-off-by: Mark Langsdorf ...
Apr 9, 3:19 pm 2010
tip-bot for Borislav ...
[tip:x86/cpu] cpufreq: Unify sysfs attribute definition macros
Commit-ID: 6dad2a29646ce3792c40cfc52d77e9b65a7bb143 Gitweb: http://git.kernel.org/tip/6dad2a29646ce3792c40cfc52d77e9b65a7bb143 Author: Borislav Petkov <borislav.petkov@amd.com> AuthorDate: Wed, 31 Mar 2010 21:56:46 +0200 Committer: H. Peter Anvin <hpa@zytor.com> CommitDate: Fri, 9 Apr 2010 14:07:56 -0700 cpufreq: Unify sysfs attribute definition macros Multiple modules used to define those which are with identical functionality and were needlessly replicated among the different ...
Apr 9, 3:20 pm 2010
Dave Airlie
Re: Config NO_BOOTMEM breaks my amd64 box
Okay I built a linus head and it booted on the previously broken machine. with CONFIG_NO_BOOTMEM=y Dave. --
Apr 8, 7:43 pm 2010
Linus Torvalds
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
Can you try with _just_ my patch? Or add a vma->anon_vma = merge_vma->anon_vma; to Rik's "merge_vma" case in anon_vma_prepare(). Because I'm starign at Rik's patch, and one thing strikes me: it does that "anon_vma_clone()" in anon_vma_prepare(), and maybe I'm blind, but I don't see where that actually sets vma->anon_vma. As far as I can tell, anon_vma_clone() was designed purely for the fork() case, which has done *new = *vma; which will set new->anon_vma to the same ...
Apr 9, 9:35 am 2010
Linus Torvalds
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
Can you double-check your current diffs - maybe something got corrupted. mmap_region installs the vma with vma_link(), and the last thing vma_link() does with my patch is that "anon_vma_prepare()". Maybe with all the patches flying around, you had a reject or something, and you lost that one anon_vma_prepare()? Or maybe I screwed up somewhere and sent you the wrong patch. Here it is again, just in case. [ I have a horrible cold, and can hardly think straight. So who knows, ...
Apr 8, 5:50 pm 2010
Borislav Petkov
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
From: Linus Torvalds <torvalds@linux-foundation.org> Right, it looks like it. I'll add some more debugging calls there tomorrow - it might give us more clues in case someone hasn't caught it Doesn't look like it - here's the diff between yours and what I have applied here (yep, only minor fuzz but no code differences) Also, I've added my version at the end: --- a.diff 2010-04-09 03:03:35.000000000 +0200 +++ b.diff 2010-04-09 03:03:52.000000000 +0200 @@ -1,8 +1,8 @@ diff --git ...
Apr 8, 6:30 pm 2010
KOSAKI Motohiro Apr 8, 6:45 pm 2010
Borislav Petkov
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
From: Borislav Petkov <bp@alien8.de> So I went and reapplied the three patches (3rd is the object_err export for SLUB debugging) on a new branch of today's git - same results, the same processes crap up in the WARN(!vma->anon_vma) check so it should be something else we're missing. More code staring later... -- Regards/Gruss, Boris. --
Apr 9, 2:21 am 2010
Borislav Petkov
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
From: Linus Torvalds <torvalds@linux-foundation.org> Yep, yours along with the SLUB debugging piece just survived one hibernation cycle without a problem. Also, no SIGBUS-killed processes, all seems fine. Will continue stressing it though... Let me know what you want me to do next. -- Regards/Gruss, Boris. --
Apr 9, 10:40 am 2010
Linus Torvalds
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
Continue stress-testing it. I don't think my patch on its own should fix the original problem, but at least we now know why you got those NULL anon_vma's. So what I _think_ will happen is that you'll be able to re-create the problem that started this all. But I'd like to verify that, just because I'm anal and I'd like these things to be tested independently. So assuming that the original problem happens again, if you can then apply Rik's patch, but add a dst->anon_vma = ...
Apr 9, 10:50 am 2010
Borislav Petkov
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
From: Linus Torvalds <torvalds@linux-foundation.org> It looks like this way we mangle the anon_vma chains somehow. From what I can see and if I'm not mistaken, we save the anon_vmas alright but end up in what seems like an endless list_for_each_entry() loop having grabbed anon_vma->lock in page_lock_anon_vma() and we can't seem to yield it through page_unlock_anon_vma() at the end of page_referenced_anon() so it has to be that code in between iterating over each list entry... I could be ...
Apr 9, 12:14 pm 2010
Linus Torvalds
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
Ok. So scratch Rik's patch. It doesn't work even with the anon_vma set up. Rik? I think it's back to you. I'm not going to bother committing the change to the anon_vma locking unless you actually need the locking guarantees for anon_vma_prepare(). And I've got the feeling that the proper fix is in the vma_adjust() handling if your original idea was right. Anybody? We're at the point where I've already delayed -rc4 several days because it's pointless cutting it without fixing ...
Apr 9, 12:32 pm 2010
Rik van Riel
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
We can fix it on the other side, by changing anon_vma_merge to actually link all the anon_vma structs into the VMA. An added benefit is that we are already holding the required lock (mmap_sem) exclusively in that code path. I'll cook up a patch and I'll mail it out after a little testing. --
Apr 9, 1:03 pm 2010
Johannes Weiner
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
Okay, I think I got it working. I first thought we would need an m^n loop to properly merge the anon_vma_chains, but we can actually be cleverer than that: --- Subject: mm: properly merge anon_vma_chains when merging vmas Merging can happen when two VMAs were split from one root VMA or a mergeable VMA was instantiated and reused a nearby VMA's anon_vma. In both cases, none of the VMAs can grow any more anon_vmas and forked VMAs can no longer get merged due to differing primary anon_vmas ...
Apr 9, 1:43 pm 2010
Rik van Riel
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
I've looked it over 5 times, can't find anything wrong with it. Your approach looks like it should work just fine. Reviewed-by: Rik van Riel <riel@redhat.com> --
Apr 9, 1:57 pm 2010
Borislav Petkov
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
From: Johannes Weiner <hannes@cmpxchg.org> Date: Fri, Apr 09, 2010 at 10:43:28PM +0200 ok, I got this ontop of mainline (no other patches from this thread) but unfortunately it breaks at the same spot while under heavy page reclaiming when trying to hibernate while booting 3 guests. [ 322.171120] PM: Preallocating image memory... [ 322.477374] BUG: unable to handle kernel NULL pointer dereference at (null) [ 322.477376] IP: [<ffffffff810c0c87>] page_referenced+0xee/0x1dc [ 322.477376] ...
Apr 9, 2:33 pm 2010
Linus Torvalds
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
This comment makes my head hurt. In fact, the whole anon_vma thing hurts my head. Can we have some better high-level documentation on what happens for all the cases. - split (mprotect, or munmap in the middle): anon_vma_clone: the two vma's will have the same anon_vma, and the anon_vma chains will be equivalent. - merge (mprotect that creates a mergeable state): anon_vma_merge: we're supposed to have a anon_vma_chain that is a superset of the two chains of the merged ...
Apr 9, 4:22 pm 2010
Rik van Riel
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
The trick is in the fact that anon_vma_merge is only called when vma->anon_vma == vma1->anon_vma. If the top anon_vmas are different, then anon_vma_merge will not be called. This means that VMAs which have recently passed through fork will not be passed to anon_vma_merge, because their top anon_vmas are different. That leaves just the split & create cases, which will be passed to anon_vma_merge when they are merged. In case of split, they will have identical anon_vma chains. In ...
Apr 9, 4:45 pm 2010
Johannes Weiner
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
The key is that merging is only possible if the primary anon_vmas are equivalent. This only happens if we split a vma in two and clone the old vma's anon_vma_chain into the new vma. So the chains are equivalent. Or anon_vma_prepare() finds a mergeable anon_vma, in which case this will be the singleton on the vma's chain. If a split vma is merged, the old anon_vma_chains are equivalent, we drop one completely and the one that stays has not changed. If a mergeable vma (singleton ...
Apr 9, 4:54 pm 2010
Linus Torvalds
Re: [PATCH -v2] rmap: make anon_vma_prepare link in all ...
Ok, so I don't know if the above is correct, but if it is, let's ignore the "merge" case as being complex, and look at the other cases. With fork, the main anon_vma becomes different, so let's ignore that. That always means that the resulting list is not comparable or compatible, and we'll never mix them up. If we make one very _simple_ rule for the create/mmap case, namely that we only re-use another _singleton_ anon_vma, then split and create case will look exactly the same. And ...
Apr 9, 4:56 pm 2010
Frederic Weisbecker
[PATCH v2] procfs: Push down the bkl from ioctl
Push down the bkl from procfs's ioctl main handler to its users. Only three procfs users implement an ioctl (non unlocked) handler. Turn them into unlocked_ioctl and push down the Devil inside. v2: PDE(inode)->data doesn't need to be under bkl Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Ingo Molnar <mingo@elte.hu> Cc: John Kacur ...
Apr 9, 7:45 am 2010
Shaohua Li
Re: [PATCH]vmscan: handle underflow for get_scan_ratio
I updated the patch to address previous issues. is it possible to put this to -mm tree to see if there is anything wield happen? get_scan_ratio() calculates percentage and if the percentage is < 1%, it will round percentage down to 0% and cause we completely ignore scanning anon/file pages to reclaim memory even the total anon/file pages are very big. To avoid underflow, we don't use percentage, instead we directly calculate how many pages should be scaned. In this way, we should get ...
Apr 8, 11:51 pm 2010
Andrew Morton
Re: [PATCH]vmscan: handle underflow for get_scan_ratio
On Fri, 9 Apr 2010 14:51:04 +0800 I grabbed this. Did we decide that this needed to be backported into 2.6.33.x? If so, some words explaining the reasoning would be needed. Come to that, it's not obvious that we need this in 2.6.34 either. What is the user-visible impact here? --
Apr 9, 2:20 pm 2010
Rik van Riel
Re: [PATCH]vmscan: handle underflow for get_scan_ratio
I suspect very little impact, especially during workloads where we can just reclaim clean page cache at DEF_PRIORITY. FWIW, the patch looks good to me, so: Acked-by: Rik van Riel <riel@redhat.com> --
Apr 9, 2:25 pm 2010
Roland McGrath
Re: [PATCH] ptrace: kill BKL in ptrace syscall
Acked-by: Roland McGrath <roland@redhat.com> Thanks, Roland --
Apr 9, 2:43 pm 2010
H. Peter Anvin
Re: [-v2 PATCH 2/6] powernow-k8: Add core performance bo ...
Nevermind... MUA out of order error. -hpa --
Apr 9, 1:59 pm 2010
H. Peter Anvin
Re: [-v2 PATCH 2/6] powernow-k8: Add core performance bo ...
As far as I can tell I'm still waiting for those updated patches... -hpa --
Apr 9, 1:57 pm 2010
Jan Blunck
Re: [GIT, RFC] Killing the Big Kernel Lock
Yes and maybe rename generic_file_llseek to generic_llseek. --
Apr 9, 4:02 am 2010
Christian Kujau
Re: Kernel crash in xfs_iflush_cluster (was Somebody tak ...
Perhaps Dave meant the stable-queue? http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git Then again, 2.6.34-rc3 needs testing too! :-) Christian. -- BOFH excuse #98: The vendor put the bug there. --
Apr 9, 2:37 pm 2010
Janos Haar
Re: Kernel crash in xfs_iflush_cluster (was Somebody tak ...
Hello, I am just started to test the stable-queue patch series on 2.6.32.10. Now running, we will see... The 2.6.33.2 made 4 crashes in the last 3 days. :-( This was more worse than the original 2.6.32.10. (I am very interested, anyway, this is the last shot of this server. The owner giving me an ultimate. If the server crashes again in the next week, i need to replace the entire HW, the OS, and the services as well...) Thanks a lot for help. Best Regards, Janos Haar ----- ...
Apr 9, 3:44 pm 2010
Roland McGrath Apr 9, 1:13 pm 2010
Oleg Nesterov
Re: [patch] oom: give current access to memory reserves ...
We can't. Any fatal signal sent to any sub-thread kills the whole thread Since a) they share the same ->mm and b) they share their children, I don't think we should separate T and M. ->children is per_thread. But this is only because we have some strange historiral oddities like __WNOTHREAD. Otherwise, it is not correct to assume that the child of T is not the child of M. Any process is the child of its parent's thread group, not the thread which actually called Thanks! already in ...
Apr 9, 5:38 am 2010
Frederic Weisbecker
Re: [watchdog] combine nmi_watchdog and softlockup
I'm not sure a fallback plan is welcome. What we want is a single implementation. If archs already have their own hardlockup detectors, then good for them as they have this fallback implementation already. For those who haven't it or who want to profit from a generic code that does a good deal of the error prone work for them already, they can just implement a basic perf support for the cpu-cycle events. Perf events gives a chance to provide a generic support for hardlockup detection ...
Apr 8, 5:22 pm 2010
Frederic Weisbecker
Re: [watchdog] combine nmi_watchdog and softlockup
Actually not. What the hardlockup detector does it to check the progression of irqs. So it detects true hardlockups: stuck in an irq disabled section. If you don't have NMI to detect that (here this made by hardware clock based on cpu cycles overflows), then you're screwed. The hardlockup detector is useless with a maskable irq based clock. --
Apr 8, 5:00 pm 2010
Don Zickus Apr 9, 8:05 am 2010
Cyrill Gorcunov
Re: [watchdog] combine nmi_watchdog and softlockup
yup, i know what nmi-watchdog is doing. I guess you've misunderstood me. I meant that sw-driven detector is not supposed to guard against the cases you're referring to. I don't remember the details but someone proposed to make a fallback to sw-watchdog if there is no ability to use nmi from perf-events (for any reason) which eventually being implemented in Don's patch. And there will be a message that watchdog has been switched to sw-driven scaffold. So user will (or should) see this message and ...
Apr 9, 7:56 am 2010
Frederic Weisbecker
Re: [watchdog] combine nmi_watchdog and softlockup
Yeah but high-prio doesn't mean that it is scheduled often. It means that once it is in a runnable state (TASK_RUNNING), it will have a higher priority to get into the cpu (lower prio tasks will have less time in the cpu than the higher prio until the higher prio get to sleep). Especially here this is a SCHED_FIFO class, so usual tasks (SCHED_OTHER) won't ever run until it goes to sleep. But when it goes to sleep, it doesn't need the cpu, so other tasks can run. And it is only woken up ...
Apr 8, 6:02 pm 2010
Don Zickus Apr 9, 6:32 am 2010
Roland McGrath
Re: [PATCH -mm] sys_unshare: simplify the not-really-imp ...
Acked-by: Roland McGrath <roland@redhat.com> Thanks, Roland --
Apr 9, 1:03 pm 2010
Roland McGrath
Re: [PATCH -mm 2/2] keyctl_session_to_parent: use thread ...
Acked-by: Roland McGrath <roland@redhat.com> Thanks, Roland --
Apr 9, 12:45 pm 2010
Roland McGrath
Re: [PATCH -mm 1/2] proc_sched_show_task: use get_nr_threads()
Acked-by: Roland McGrath <roland@redhat.com> Thanks, Roland --
Apr 9, 12:54 pm 2010
Roland McGrath
Re: [PATCH -mm 3/3] proc: make task_sig() lockless
I'm not so sure. Operations like sigprocmask and sigaction really have always been entirely atomic from the userland perspective before. Now it becomes possible to read from /proc e.g. a blocked set that never existed as such (one word updated by sigprocmask but not yet the next word). Thanks, Roland --
Apr 9, 12:59 pm 2010
Roland McGrath
Re: [PATCH -mm 2/3] proc: make collect_sigign_sigcatch() ...
In v2.6.34-rc3-500-g0eddb51 this isn't possible because the calls from task_sig() and do_task_stat() are under siglock. Is that locking removed by another pending change? Thanks, Roland --
Apr 9, 12:53 pm 2010
Roland McGrath
Re: [PATCH -mm 1/3] proc: get_nr_threads() doesn't need ...
Acked-by: Roland McGrath <roland@redhat.com> I'm not entirely sure about the name, but it's probably fine. There should be some comments somewhere making clear what "nr" or kind of threads this refers to. This is threads created and not yet reaped. It differs from the "threads not yet exited" (signal->live) count only during some races around exit time, and when ptrace is preventing self-reaping. Thanks, Roland --
Apr 9, 12:48 pm 2010
Roland McGrath
Re: [PATCH] check_unshare_flags: kill the bogus CLONE_SI ...
Acked-by: Roland McGrath <roland@redhat.com> Thanks, Roland --
Apr 9, 12:41 pm 2010
Roland McGrath
Re: [PATCH -mm 0/3] make task_struct->signal stable, fin ...
These 3 all Acked-by: Roland McGrath <roland@redhat.com> Thanks, Roland --
Apr 9, 12:40 pm 2010
Roland McGrath
Re: [PATCH 1/3] make task_struct->signal immutable/refco ...
Acked-by: Roland McGrath <roland@redhat.com> I'm not thrilled about the field name, but whatever. We now have three atomic counts with subtly different meanings, and no comments anywhere really explaining it all. * live: created and not yet begun to exit * count: not yet reaped We should never export those at all. In fact, I would not even make it a separate inline. We're here to simplify the lifetime rules, not give new ways to complicate them. If anybody wants to keep a signal_struct ...
Apr 9, 12:38 pm 2010
Roland McGrath
Re: [PATCH 3/3] kill the awful task_rq_unlock_wait() hack
Acked-by: Roland McGrath <roland@redhat.com> Thanks, Roland --
Apr 9, 12:38 pm 2010
Ben Gamari
Re: Poor interactive performance with I/O loads with fsy ...
I am using btrfs, so yes, I was expecting things to be better. Unfortunately, the improvement seems to be non-existent under high IO/fsync load. - Ben --
Apr 9, 7:56 am 2010
Ben Gamari
Re: Poor interactive performance with I/O loads with fsy ...
Are these backtraces at all useful? I've received no feedback thusfar, so I can only that either, a) there is insufficient data to draw any conclusions and there is no interest in pursuing this further, or b) nobody has looked at the backtraces As I've said in the past, I am very interested in seeing this problem looked at and would love to contribute whatever I can to that effort. However, without knowing what information is necessary, I can be of only very limited use in my own ...
Apr 9, 8:21 am 2010
Andy Walls
Re: [RFC] What are the goals for the architecture of an ...
This requires support at the hardware level. (You can't have CPU code running to decode IR pulses when your CPU is "asleep".) I know of two video chips supported under linux that provide such a function. Wake-up from IR for these chips will rely on the kernel PCIe or USB infrastructure supporting PCIe or USB Power Managment Events from hardware. It will take a huge amount of work and time to get the respective linux video drivers to properly support suspend/resume properly. If you're ...
Apr 9, 3:50 am 2010
Mauro Carvalho Chehab
Re: [RFC] What are the goals for the architecture of an ...
AFAIK, only saa7134 have a good suspend/resume code [1]. You may be watching TV, do a suspend and waking the hardware again, and you'll keep seeing the same channel (I tested it some time ago, when the proper suspend code were added, on analog mode, with alsa enabled). Other drivers can suspend/resume, but they won't properly restore the video registers, so, you'll see artifacts when it returns. So, yes, you're right: before any suspend/resume code on those drivers, we first need to add some ...
Apr 9, 4:32 pm 2010
James Hogan
Re: [RFC] What are the goals for the architecture of an ...
Hi, I haven't seen this mentioned yet, but are there any plans for a sysfs interface to set up waking from suspend/standby on a particular IR scancode (for hardware decoders that support masking of comparing of the IR data), kind of analagous to the rtc framework's wakealarm sysfs file? Cheers James
Apr 9, 12:21 am 2010
Jarod Wilson
Re: [RFC] What are the goals for the architecture of an ...
Yep, it can perform wakes, and the current lirc_mceusb does support it, though it requires some screwing around with echoing something into somewhere in sysfs (for the usb controller its attached to) to enable it, from what I recall... Making it Just Work would be a good idea. -- Jarod Wilson jarod@redhat.com --
Apr 9, 5:58 am 2010
Jon Smirl
Re: [RFC] What are the goals for the architecture of an ...
You probably need to tell the USB system to leave the MSMCE's power turned on during suspend. Maybe the MSMCE driver can tell the USB -- Jon Smirl jonsmirl@gmail.com --
Apr 9, 6:02 am 2010
Mauro Carvalho Chehab
Re: [RFC] What are the goals for the architecture of an ...
Hi James, The additions at IR core, if needed [1], shouldn't be hard, but the main changes should happen at the hardware driver level. There's no current plans for it, at least from my side, but, let's see if some hardware driver developers want to implement it on the corresponding driver. [1] Basically, a keycode (like KEY_POWER) could be used to wake up the machine. So, by associating some scancode to KEY_POWER via ir-core, the driver can program the hardware to wake up the machine ...
Apr 9, 6:01 am 2010
James Hogan Apr 9, 2:42 pm 2010
Devin Heitmueller
Re: [RFC] What are the goals for the architecture of an ...
On Fri, Apr 9, 2010 at 9:01 AM, Mauro Carvalho Chehab Really? Have you actually seen any hardware where a particular scan code can be used to wake up the hardware? The only hardware I have seen has the ability to unsuspend on arrival of IR traffic, but you didn't have the granularity to dictate that it only wake up on particular scancodes. Devin -- Devin J. Heitmueller - Kernel Labs http://www.kernellabs.com --
Apr 9, 2:55 pm 2010
Andy Walls
Re: [RFC] What are the goals for the architecture of an ...
The CX23888 and CX23102 can do it. Basically any IR pulse pattern your heart desires; within reason. And any carrier freq you want too; within reason. But let's be real, the cx23885, cx231xx, and cx25840 modules are nowhere near properly supporing suspend/resume for their main video and DMA functions, AFAIK. Regards, Andy --
Apr 9, 3:14 pm 2010
previous daytodaynext day
April 8, 2010April 9, 2010April 10, 2010