tree aef9d5be0731a0ee8de0198f12f3854fcd97ceba
parent 75187b8895ebbe7d864d35d924572df875bea382
author Luis R. Rodriguez <mcgrof@kernel.org> 1464228102 -0700
committer Luis R. Rodriguez <mcgrof@kernel.org> 1466720608 -0700

ranges: add initial kprobes demo

This adds a small demo of sectoin ranges matching the style
used in the Linux kernel for kprobes. The only use case we give
and test here is being able to annotate routines as part of
the kprobe section, or not. We test a __kprobes routine, and
then also test another routine without the __kprobes annotation.

To support section ranges properly I noticed we needed to also
extend ranges.h with a proper:

SECTION_RANGE_BEGIN()
SECTION_RANGE_END()

These are used for the DEFINE_SECTION_RANGE(), which is used
to require the user to specify the specific section the custom
section range being defined belongs to.

The next required set of tests would be to test sub-sections...
Its not clear what examples there are for these yet though.
At least I have not seen them in

Results:

Initializing x86 bare metal world
Number of init entries: 8
Initializing kasan ...
Early init for Kasan...
Completed initializing kasan !
Initializing memory ...
Completed initializing memory !
Initializing kprobes ...
== OK: test_kprobe_0001 within range!
== OK: test_kprobe_0002 not in range as expected!
Completed initializing kprobes !
Initializing pci ...
PCI fixup size: 1
Demo: Using LINKTABLE_FOR_EACH
foo_fixup
Demo: Using LINKTABLE_RUN_ALL
foo_fixup
Completed initializing pci !
Initializing beta ...
Completed initializing beta !
Initializing alpha ...
Completed initializing alpha !
Initializing acme ...
Completed initializing acme !
Booting bare metal
Calling start_kernel()...
Running setup_arch for kasan ...
Calling setup_arch work for Kasan...

Signed-off-by: Luis R. Rodriguez <mcgrof@kernel.org>
