# This is made doubly annoying by the presence of '.o' files which are actually
# empty ar archives.
objects.builtin: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) FORCE
- @echo $(vmlinux-all) | tr " " "\n" | grep "\.o$$" | xargs file | \
+ @echo $(KBUILD_VMLINUX_INIT) $(KBUILD_VMLINUX_MAIN) | \
+ tr " " "\n" | grep "\.o$$" | xargs file | \
grep ELF | cut -d: -f1 > objects.builtin
- @for archive in $$(echo $(vmlinux-all) | tr " " "\n" | grep "\.a$$"); do \
- ar t "$$archive" | grep '\.o$$' | \
- sed "s,^,$${archive%/*}/," >> objects.builtin; \
+ @for archive in $$(echo $(KBUILD_VMLINUX_INIT) $(KBUILD_VMLINUX_MAIN) |\
+ tr " " "\n" | grep "\.a$$"); do \
+ ar t "$$archive" | grep '\.o$$' | \
+ sed "s,^,$${archive%/*}/," >> objects.builtin; \
done
else
PHONY += objects.builtin
walk_stack_t walk_stack;
};
-extern unsigned long print_context_stack(struct thread_info *tinfo,
- unsigned long *stack,
- unsigned long bp,
- const struct stacktrace_ops *ops,
- void *data, unsigned long *end,
- int *graph);
-
void dump_trace(struct task_struct *tsk, struct pt_regs *regs,
unsigned long *stack, unsigned long bp,
const struct stacktrace_ops *ops, void *data);
} else {
deactivate_task(rq, prev, DEQUEUE_SLEEP);
prev->on_rq = 0;
-
+
/*
* If a worker went to sleep, notify and ask
* workqueue whether it wants to wake up a task
*/
if (prev->flags & PF_WQ_WORKER) {
struct task_struct *to_wakeup;
-
+
to_wakeup = wq_worker_sleeping(prev, cpu);
if (to_wakeup)
try_to_wake_up_local(to_wakeup);
signalfd_notify(t, sig);
sigaddset(&pending->signal, sig);
complete_signal(sig, t, group);
-ret:
DTRACE_PROC2(signal__send, struct task_struct *, t, int, sig);
+ret:
trace_signal_generate(sig, info, t, group, result);
return ret;
}