14 Apr, 2011
1 commit
-
For future rework of try_to_wake_up() we'd like to push part of that
function onto the CPU the task is actually going to run on.In order to do so we need a generic callback from the existing scheduler IPI.
This patch introduces such a generic callback: scheduler_ipi() and
implements it as a NOP.BenH notes: PowerPC might use this IPI on offline CPUs under rare conditions!
Acked-by: Russell King
Acked-by: Martin Schwidefsky
Acked-by: Chris Metcalf
Acked-by: Jesper Nilsson
Acked-by: Benjamin Herrenschmidt
Signed-off-by: Ralf Baechle
Reviewed-by: Frank Rowand
Cc: Mike Galbraith
Cc: Nick Piggin
Cc: Linus Torvalds
Cc: Andrew Morton
Signed-off-by: Ingo Molnar
Signed-off-by: Peter Zijlstra
Link: http://lkml.kernel.org/r/20110405152728.744338123@chello.nl
29 Mar, 2011
1 commit
-
Scripted with coccinelle.
Signed-off-by: Thomas Gleixner
26 Mar, 2011
1 commit
-
Signed-off-by: Thomas Gleixner
To: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/2205/
Signed-off-by: Ralf Baechle
05 Aug, 2010
1 commit
-
Signed-off-by: Ralf Baechle
23 Apr, 2010
1 commit
30 Mar, 2010
1 commit
-
…it slab.h inclusion from percpu.h
percpu.h is included by sched.h and module.h and thus ends up being
included when building most .c files. percpu.h includes slab.h which
in turn includes gfp.h making everything defined by the two files
universally available and complicating inclusion dependencies.percpu.h -> slab.h dependency is about to be removed. Prepare for
this change by updating users of gfp and slab facilities include those
headers directly instead of assuming availability. As this conversion
needs to touch large number of source files, the following script is
used as the basis of conversion.http://userweb.kernel.org/~tj/misc/slabh-sweep.py
The script does the followings.
* Scan files for gfp and slab usages and update includes such that
only the necessary includes are there. ie. if only gfp is used,
gfp.h, if slab is used, slab.h.* When the script inserts a new include, it looks at the include
blocks and try to put the new include such that its order conforms
to its surrounding. It's put in the include block which contains
core kernel includes, in the same order that the rest are ordered -
alphabetical, Christmas tree, rev-Xmas-tree or at the end if there
doesn't seem to be any matching order.* If the script can't find a place to put a new include (mostly
because the file doesn't have fitting include block), it prints out
an error message indicating which .h file needs to be added to the
file.The conversion was done in the following steps.
1. The initial automatic conversion of all .c files updated slightly
over 4000 files, deleting around 700 includes and adding ~480 gfp.h
and ~3000 slab.h inclusions. The script emitted errors for ~400
files.2. Each error was manually checked. Some didn't need the inclusion,
some needed manual addition while adding it to implementation .h or
embedding .c file was more appropriate for others. This step added
inclusions to around 150 files.3. The script was run again and the output was compared to the edits
from #2 to make sure no file was left behind.4. Several build tests were done and a couple of problems were fixed.
e.g. lib/decompress_*.c used malloc/free() wrappers around slab
APIs requiring slab.h to be added manually.5. The script was run on all .h files but without automatically
editing them as sprinkling gfp.h and slab.h inclusions around .h
files could easily lead to inclusion dependency hell. Most gfp.h
inclusion directives were ignored as stuff from gfp.h was usually
wildly available and often used in preprocessor macros. Each
slab.h inclusion directive was examined and added manually as
necessary.6. percpu.h was updated not to include slab.h.
7. Build test were done on the following configurations and failures
were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my
distributed build env didn't work with gcov compiles) and a few
more options had to be turned off depending on archs to make things
build (like ipr on powerpc/64 which failed due to missing writeq).* x86 and x86_64 UP and SMP allmodconfig and a custom test config.
* powerpc and powerpc64 SMP allmodconfig
* sparc and sparc64 SMP allmodconfig
* ia64 SMP allmodconfig
* s390 SMP allmodconfig
* alpha SMP allmodconfig
* um on x86_64 SMP allmodconfig8. percpu.h modifications were reverted so that it could be applied as
a separate patch and serve as bisection point.Given the fact that I had only a couple of failures from tests on step
6, I'm fairly confident about the coverage of this conversion patch.
If there is a breakage, it's likely to be something in one of the arch
headers which should be easily discoverable easily on most builds of
the specific arch.Signed-off-by: Tejun Heo <tj@kernel.org>
Guess-its-ok-by: Christoph Lameter <cl@linux-foundation.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
29 Mar, 2010
1 commit
-
Signed-off-by: Gilles Espinasse
Signed-off-by: Jiri Kosina
27 Feb, 2010
2 commits
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
01 Oct, 2009
1 commit
-
Patch 14275ccdb1e4b487cca745aba994699c426a31ee and
d5dedd4507d307eb3f35f21b6e16f336fdc0d82a are conflicting and the
conflict was resolved badly in merge
92241940be501f798cb21db344bbb3d1ec3c4f1c resulting in the BCM1480 changes
of 14275ccdb1e4b487cca745aba994699c426a31ee getting lost. Sort out the
damage.Reported and initial patch by Mark Mason .
Signed-off-by: Ralf Baechle
24 Sep, 2009
1 commit
-
We're weaning the core code off handing cpumask's around on-stack.
This introduces arch_send_call_function_ipi_mask(), and by defining
it, the old arch_send_call_function_ipi is defined by the core code.We also take the chance to wean the implementations off the
obsolescent for_each_cpu_mask(): making send_ipi_mask take the pointer
seemed the most natural way to ensure all implementations used
for_each_cpu.Signed-off-by: Rusty Russell
25 Jun, 2009
1 commit
-
Some of the were relying into smp.h being dragged in by another header
which of course is fragile. uses smp_processor_id()
only in macros and including smp.h there leads to an include loop, so
don't change cpu-info.h.Signed-off-by: Ralf Baechle
02 Jun, 2009
1 commit
-
Conflicts:
arch/mips/sibyte/bcm1480/irq.c
arch/mips/sibyte/sb1250/irq.cMerge reason: we gathered a few conflicts plus update to latest upstream fixes.
Signed-off-by: Ingo Molnar
14 May, 2009
1 commit
-
Locking of irq_desc is now done in irq_set_affinity; don't lock it again
in chip specific set_affinity function.Signed-off-by: Thomas Bogendoerfer
Signed-off-by: Ralf Baechle
28 Apr, 2009
1 commit
-
according to Ingo, change set_affinity() in irq_chip should return int,
because that way we can handle failure cases in a much cleaner way, in
the genirq layer.v2: fix two typos
[ Impact: extend API ]
Signed-off-by: Yinghai Lu
Cc: Andrew Morton
Cc: Suresh Siddha
Cc: "Eric W. Biederman"
Cc: Rusty Russell
Cc: linux-arch@vger.kernel.org
LKML-Reference:
Signed-off-by: Ingo Molnar
30 Mar, 2009
1 commit
-
__do_IRQ() is deprecated and will go away.
Signed-off-by: Ralf Baechle
15 Jan, 2009
1 commit
-
Impact: fix build errors
Since the SPARSE IRQS changes redefined how the kstat irqs are
organized, arch's must use the new accessor function:kstat_incr_irqs_this_cpu(irq, DESC);
If CONFIG_SPARSE_IRQS is set, then DESC is a pointer to the
irq_desc which has a pointer to the kstat_irqs. If not, then
the .irqs field of struct kernel_stat is used instead.Signed-off-by: Mike Travis
Signed-off-by: Ingo Molnar
13 Dec, 2008
2 commits
-
Impact: change existing irq_chip API
Not much point with gentle transition here: the struct irq_chip's
setaffinity method signature needs to change.Fortunately, not widely used code, but hits a few architectures.
Note: In irq_select_affinity() I save a temporary in by mangling
irq_desc[irq].affinity directly. Ingo, does this break anything?(Folded in fix from KOSAKI Motohiro)
Signed-off-by: Rusty Russell
Signed-off-by: Mike Travis
Reviewed-by: Grant Grundler
Acked-by: Ingo Molnar
Cc: ralf@linux-mips.org
Cc: grundler@parisc-linux.org
Cc: jeremy@xensource.com
Cc: KOSAKI Motohiro -
Impact: cleanup
Each SMP arch defines these themselves. Move them to a central
location.Twists:
1) Some archs (m32, parisc, s390) set possible_map to all 1, so we add a
CONFIG_INIT_ALL_POSSIBLE for this rather than break them.2) mips and sparc32 '#define cpu_possible_map phys_cpu_present_map'.
Those archs simply have phys_cpu_present_map replaced everywhere.3) Alpha defined cpu_possible_map to cpu_present_map; this is tricky
so I just manipulate them both in sync.4) IA64, cris and m32r have gratuitous 'extern cpumask_t cpu_possible_map'
declarations.Signed-off-by: Rusty Russell
Reviewed-by: Grant Grundler
Tested-by: Tony Luck
Acked-by: Ingo Molnar
Cc: Mike Travis
Cc: ink@jurassic.park.msu.ru
Cc: rmk@arm.linux.org.uk
Cc: starvik@axis.com
Cc: tony.luck@intel.com
Cc: takata@linux-m32r.org
Cc: ralf@linux-mips.org
Cc: grundler@parisc-linux.org
Cc: paulus@samba.org
Cc: schwidefsky@de.ibm.com
Cc: lethal@linux-sh.org
Cc: wli@holomorphy.com
Cc: davem@davemloft.net
Cc: jdike@addtoit.com
Cc: mingo@redhat.com
31 Jul, 2008
1 commit
-
This patch explicitly removes the kgdb implementation, for mips which
is intended to be followed by a patch that adds a kgdb implementation
for MIPS that makes use of the kgdb core in the kernel.Signed-off-by: Jason Wessel
Signed-off-by: Ralf Baechle
20 Feb, 2008
1 commit
-
Signed-off-by: Ralf Baechle
29 Jan, 2008
1 commit
-
Signed-off-by: Ralf Baechle
16 Nov, 2007
2 commits
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
03 Nov, 2007
5 commits
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
30 Oct, 2007
2 commits
-
Signed-off-by: Ralf Baechle
-
They break the timer interrupt initialization and only seem to be a kludge
for initialization happening in the wrong order. Further testing done by
Thiemo confirms the suspicion that the other invocations also seem to have
useless.Signed-off-by: Ralf Baechle
23 Oct, 2007
1 commit
-
The BCM148 has 4 cores but there are also just 4 generic timers available
so use the ZBbus cycle counter instead of it. In addition the ZBbus
counter also offers a much higher resolution and 64-bit counting so I'm
considering a later complete conversion to it once I figure out if all
members of the Sibyte SOC family support it - the docs seem to agree but
the headers files seem to disagree ...Signed-off-by: Ralf Baechle
20 Oct, 2007
1 commit
-
Signed-off-by: Ralf Baechle
18 Oct, 2007
1 commit
-
Fix some typo introduced on clockevent conversion.
Signed-off-by: Atsushi Nemoto
Signed-off-by: Ralf Baechle
12 Oct, 2007
5 commits
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
-
Signed-off-by: Ralf Baechle
-
In fact there are no foward declarations at all needed when moving things
into the right order.Signed-off-by: Ralf Baechle
22 Sep, 2007
1 commit
-
Signed-off-by: Ralf Baechle