Russell King
d7b906897e
[S390] genirq/clockevents: move irq affinity prototypes/inlines to interrupt.h
...
> Generic code is not supposed to include irq.h. Replace this include
> by linux/hardirq.h instead and add/replace an include of linux/irq.h
> in asm header files where necessary.
> This change should only matter for architectures that make use of
> GENERIC_CLOCKEVENTS.
> Architectures in question are mips, x86, arm, sh, powerpc, uml and sparc64.
>
> I did some cross compile tests for mips, x86_64, arm, powerpc and sparc64.
> This patch fixes also build breakages caused by the include replacement in
> tick-common.h.
I generally dislike adding optional linux/* includes in asm/* includes -
I'm nervous about this causing include loops.
However, there's a separate point to be discussed here.
That is, what interfaces are expected of every architecture in the kernel.
If generic code wants to be able to set the affinity of interrupts, then
that needs to become part of the interfaces listed in linux/interrupt.h
rather than linux/irq.h.
So what I suggest is this approach instead (against Linus' tree of a
couple of days ago) - we move irq_set_affinity() and irq_can_set_affinity()
to linux/interrupt.h, change the linux/irq.h includes to linux/interrupt.h
and include asm/irq_regs.h where needed (asm/irq_regs.h is supposed to be
rarely used include since not much touches the stacked parent context
registers.)
Build tested on ARM PXA family kernels and ARM's Realview platform
kernels which both use genirq.
[ tglx@linutronix.de: add GENERIC_HARDIRQ dependencies ]
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
2008-04-17 07:47:05 +02:00
..
irq
genirq: do not leave interupts enabled on free_irq
2008-02-19 10:43:58 +01:00
power
Merge branches 'release' and 'doc' into release
2008-03-13 01:59:53 -04:00
time
[S390] genirq/clockevents: move irq affinity prototypes/inlines to interrupt.h
2008-04-17 07:47:05 +02:00
.gitignore
Update kernel/.gitignore with new auto-generated files
2008-02-09 23:27:01 -08:00
acct.c
bsd_acct: using task_struct->tgid is not right in pid-namespaces
2008-03-24 19:22:20 -07:00
audit.c
audit: silence two kerneldoc warnings in kernel/audit.c
2008-03-28 14:45:21 -07:00
audit.h
audit_tree.c
Introduce path_put()
2008-02-14 21:13:33 -08:00
auditfilter.c
Introduce path_put()
2008-02-14 21:13:33 -08:00
auditsc.c
[PATCH] Audit: Fix the format type for size_t variables
2008-03-01 07:16:06 -05:00
backtracetest.c
x86: add a simple backtrace test module
2008-01-30 13:33:08 +01:00
capability.c
Add 64-bit capability support to the kernel
2008-02-05 09:44:20 -08:00
cgroup.c
cgroups: include hierarchy ids in /proc/<pid>/cgroup
2008-04-11 08:06:43 -07:00
cgroup_debug.c
compat.c
hrtimer: don't modify restart_block->fn in restart functions
2008-02-10 10:48:03 +01:00
configs.c
cpu.c
cpu: fix section mismatch warnings for enable_nonboot_cpus
2008-02-08 09:22:41 -08:00
cpuset.c
cpusets: fix obsolete comment
2008-03-05 17:53:33 -08:00
delayacct.c
dma.c
exec_domain.c
exit.c
asmlinkage_protect replaces prevent_tail_call
2008-04-10 17:28:26 -07:00
extable.c
module: Don't report discarded init pages as kernel text.
2008-01-29 17:13:18 +11:00
fork.c
memcgroup: fix spurious EBUSY on memory cgroup removal
2008-03-28 14:45:21 -07:00
futex.c
NULL noise: fs/*, mm/*, kernel/*
2008-03-30 14:18:41 -07:00
futex_compat.c
futex_compat __user annotation
2008-03-30 14:18:41 -07:00
hrtimer.c
hrtimer: catch expired CLOCK_REALTIME timers early
2008-02-14 22:08:30 +01:00
itimer.c
ITIMER_REAL: convert to use struct pid
2008-02-08 09:22:29 -08:00
kallsyms.c
remove support for un-needed _extratext section
2008-02-06 10:41:01 -08:00
Kconfig.hz
sched: high-res preemption tick
2008-01-25 21:08:29 +01:00
Kconfig.preempt
rcu: move PREEMPT_RCU config option back under PREEMPT
2008-03-10 18:01:20 -07:00
kexec.c
vmcoreinfo: add "VMCOREINFO_" to all the call for vmcoreinfo_append_str()
2008-02-07 08:42:25 -08:00
kfifo.c
kmod.c
Dont touch fs_struct in usermodehelper
2008-02-14 21:13:32 -08:00
kprobes.c
kprobes: fix a null pointer bug in register_kretprobe()
2008-03-04 16:35:19 -08:00
ksysfs.c
Kobject: convert remaining kobject_unregister() to kobject_put()
2008-01-24 20:40:40 -08:00
kthread.c
sched: fix, always create kernel threads with normal priority
2008-01-25 21:08:33 +01:00
latencytop.c
sched: latencytop support
2008-01-25 21:08:34 +01:00
lockdep.c
Subject: lockdep: include all lock classes in all_lock_classes
2008-02-25 23:03:02 +01:00
lockdep_internals.h
lockdep_proc.c
Makefile
avoid overflows in kernel/time.c
2008-02-08 09:22:39 -08:00
marker.c
markers: use synchronize_sched()
2008-04-02 15:28:19 -07:00
module.c
modules: warn about suspicious return values from module's ->init() hook
2008-03-10 18:01:20 -07:00
mutex-debug.c
kernel: remove fastcall in kernel/*
2008-02-08 09:22:31 -08:00
mutex-debug.h
mutex.c
kernel: remove fastcall in kernel/*
2008-02-08 09:22:31 -08:00
mutex.h
notifier.c
kernel/notifier.c should #include <linux/reboot.h>
2008-02-06 10:41:02 -08:00
ns_cgroup.c
nsproxy.c
namespaces: move the IPC namespace under IPC_NS option
2008-02-08 09:22:23 -08:00
panic.c
ACPI: Taint kernel on ACPI table override (format corrected)
2008-02-06 22:07:51 -05:00
params.c
Add new string functions strict_strto* and convert kernel params to use them
2008-02-08 09:22:41 -08:00
pid.c
kernel: remove fastcall in kernel/*
2008-02-08 09:22:31 -08:00
pid_namespace.c
namespaces: cleanup the code managed with PID_NS option
2008-02-08 09:22:23 -08:00
pm_qos_params.c
pm qos infrastructure and interface
2008-02-05 09:44:22 -08:00
posix-cpu-timers.c
Use find_task_by_vpid in posix timers
2008-02-08 09:22:41 -08:00
posix-timers.c
hrtimer: check relative timeouts for overflow
2008-02-14 22:08:30 +01:00
printk.c
Fix locking bug in "acquire_console_semaphore_for_printk()"
2008-04-15 13:09:54 -07:00
profile.c
Nuke a duplicate include from profile.c
2008-02-08 09:22:34 -08:00
ptrace.c
ptrace_check_attach: remove unneeded ->signal != NULL check
2008-02-08 09:22:26 -08:00
rcuclassic.c
Preempt-RCU: implementation
2008-01-25 21:08:24 +01:00
rcupdate.c
rcupdate: fix comment
2008-02-13 16:21:18 -08:00
rcupreempt.c
rcupreempt: remove never-migrates assumption from rcu_process_callbacks()
2008-02-29 20:21:13 +01:00
rcupreempt_trace.c
Preempt-RCU: implementation
2008-01-25 21:08:24 +01:00
rcutorture.c
cpu-hotplug: replace lock_cpu_hotplug() with get_online_cpus()
2008-01-25 21:08:02 +01:00
relay.c
relay: set an spd_release() hook for splice
2008-03-26 12:04:09 +01:00
res_counter.c
Memory Resource Controller use strstrip while parsing arguments
2008-03-04 16:35:09 -08:00
resource.c
[POWERPC] Add arch-specific walk_memory_remove() for 64-bit powerpc
2008-02-08 19:52:48 +11:00
rtmutex-debug.c
Don't operate with pid_t in rtmutex tester
2008-02-08 09:22:41 -08:00
rtmutex-debug.h
rtmutex-tester.c
Driver core: change sysdev classes to use dynamic kobject names
2008-01-24 20:40:40 -08:00
rtmutex.c
hrtimer: more hrtimer_init_sleeper() fallout.
2008-02-13 15:45:36 +01:00
rtmutex.h
rtmutex_common.h
Don't operate with pid_t in rtmutex tester
2008-02-08 09:22:41 -08:00
rwsem.c
sched.c
NOHZ: reevaluate idle sleep length after add_timer_on()
2008-03-26 08:28:55 +01:00
sched_debug.c
sched: improve affine wakeups
2008-03-19 04:27:53 +01:00
sched_fair.c
revert "sched: fix fair sleepers"
2008-04-14 14:26:23 +02:00
sched_idletask.c
sched: high-res preemption tick
2008-01-25 21:08:29 +01:00
sched_rt.c
sched: balance RT task resched only on runqueue
2008-03-07 16:43:00 +01:00
sched_stats.h
seccomp.c
signal.c
freezer vs stopped or traced
2008-03-04 07:59:54 -08:00
softirq.c
rcu: add support for dynamic ticks and preempt rcu
2008-02-29 18:46:50 +01:00
softlockup.c
softlockup: fix task state setting
2008-02-29 18:46:53 +01:00
spinlock.c
spinlock: lockbreak cleanup
2008-01-30 13:31:20 +01:00
srcu.c
make srcu_readers_active() static
2008-02-06 10:41:02 -08:00
stacktrace.c
stop_machine.c
stopmachine: semaphore to mutex
2008-02-06 10:41:08 -08:00
sys.c
Pidns: make full use of xxx_vnr() calls
2008-02-08 09:22:29 -08:00
sys_ni.c
timerfd: new timerfd API
2008-02-05 09:44:07 -08:00
sysctl.c
sched: revert load_balance_monitor() changes
2008-03-04 17:54:06 +01:00
sysctl_check.c
constify tables in kernel/sysctl_check.c
2008-02-08 09:22:31 -08:00
taskstats.c
test_kprobes.c
kprobes: kretprobe user entry-handler
2008-02-06 10:41:11 -08:00
time.c
avoid overflows in kernel/time.c
2008-02-08 09:22:39 -08:00
timeconst.pl
timeconst.pl: correct reversal of USEC_TO_HZ and HZ_TO_USEC
2008-02-12 14:29:26 -08:00
timer.c
NOHZ: reevaluate idle sleep length after add_timer_on()
2008-03-26 08:28:55 +01:00
tsacct.c
uid16.c
asmlinkage_protect replaces prevent_tail_call
2008-04-10 17:28:26 -07:00
user.c
sched: rt-group: make rt groups scheduling configurable
2008-02-13 15:45:40 +01:00
user_namespace.c
namespaces: cleanup the code managed with the USER_NS option
2008-02-08 09:22:23 -08:00
utsname.c
utsname_sysctl.c
wait.c
kernel: remove fastcall in kernel/*
2008-02-08 09:22:31 -08:00
workqueue.c
workqueue: make delayed_work_timer_fn() static
2008-02-08 09:22:37 -08:00