<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lwn.git/arch/arm/kernel/kprobes-common.c, branch docs-5.8-2</title>
<subtitle>Linux kernel documentation tree maintained by Jonathan Corbet</subtitle>
<id>http://mirrors.hust.edu.cn/git/lwn.git/atom?h=docs-5.8-2</id>
<link rel='self' href='http://mirrors.hust.edu.cn/git/lwn.git/atom?h=docs-5.8-2'/>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/'/>
<updated>2015-01-09T09:36:50+00:00</updated>
<entry>
<title>ARM: probes: move all probe code to dedicate directory</title>
<updated>2015-01-09T09:36:50+00:00</updated>
<author>
<name>Wang Nan</name>
<email>wangnan0@huawei.com</email>
</author>
<published>2015-01-09T02:19:49+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=fca08f326ae0423f03b097ff54de432fe77b95d0'/>
<id>urn:sha1:fca08f326ae0423f03b097ff54de432fe77b95d0</id>
<content type='text'>
In discussion on LKML (https://lkml.org/lkml/2014/11/28/158), Russell
King suggests to move all probe related code to arch/arm/probes. This
patch does the work. Due to dependency on 'arch/arm/kernel/patch.h', this
patch also moves patch.h to 'arch/arm/include/asm/patch.h', and related
'#include' directives are also midified to '#include &lt;asm/patch.h&gt;'.

Following is an overview of this patch:

 ./arch/arm/kernel/               ./arch/arm/probes/
 |-- Makefile                     |-- Makefile
 |-- probes-arm.c          ==&gt;    |-- decode-arm.c
 |-- probes-arm.h          ==&gt;    |-- decode-arm.h
 |-- probes-thumb.c        ==&gt;    |-- decode-thumb.c
 |-- probes-thumb.h        ==&gt;    |-- decode-thumb.h
 |-- probes.c              ==&gt;    |-- decode.c
 |-- probes.h              ==&gt;    |-- decode.h
 |                                |-- kprobes
 |                                |   |-- Makefile
 |-- kprobes-arm.c         ==&gt;    |   |-- actions-arm.c
 |-- kprobes-common.c      ==&gt;    |   |-- actions-common.c
 |-- kprobes-thumb.c       ==&gt;    |   |-- actions-thumb.c
 |-- kprobes.c             ==&gt;    |   |-- core.c
 |-- kprobes.h             ==&gt;    |   |-- core.h
 |-- kprobes-test-arm.c    ==&gt;    |   |-- test-arm.c
 |-- kprobes-test.c        ==&gt;    |   |-- test-core.c
 |-- kprobes-test.h        ==&gt;    |   |-- test-core.h
 |-- kprobes-test-thumb.c  ==&gt;    |   `-- test-thumb.c
 |                                `-- uprobes
 |                                    |-- Makefile
 |-- uprobes-arm.c         ==&gt;        |-- actions-arm.c
 |-- uprobes.c             ==&gt;        |-- core.c
 |-- uprobes.h             ==&gt;        `-- core.h
 |
 `-- patch.h               ==&gt;    arch/arm/include/asm/patch.h

Signed-off-by: Wang Nan &lt;wangnan0@huawei.com&gt;
Acked-by: Masami Hiramatsu &lt;masami.hiramatsu.pt@hitachi.com&gt;
Signed-off-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: probes: fix instruction fetch order with &lt;asm/opcodes.h&gt;</title>
<updated>2014-04-01T13:45:19+00:00</updated>
<author>
<name>Ben Dooks</name>
<email>ben.dooks@codethink.co.uk</email>
</author>
<published>2013-11-08T18:29:25+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=888be25402021a425da3e85e2d5a954d7509286e'/>
<id>urn:sha1:888be25402021a425da3e85e2d5a954d7509286e</id>
<content type='text'>
If we are running BE8, the data and instruction endianness do not
match, so use &lt;asm/opcodes.h&gt; to correctly translate memory accesses
into ARM instructions.

Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
Signed-off-by: Ben Dooks &lt;ben.dooks@codethink.co.uk&gt;
[taras.kondratiuk@linaro.org: fixed Thumb instruction fetch order]
Signed-off-by: Taras Kondratiuk &lt;taras.kondratiuk@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: Make arch_specific_insn a define for new arch_probes_insn structure</title>
<updated>2014-03-18T20:39:40+00:00</updated>
<author>
<name>David A. Long</name>
<email>dave.long@linaro.org</email>
</author>
<published>2014-03-06T02:41:29+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=b4cd605ca92d9a8a2f71355cb45dd943ebcb0c97'/>
<id>urn:sha1:b4cd605ca92d9a8a2f71355cb45dd943ebcb0c97</id>
<content type='text'>
Because the common underlying code for ARM kprobes and uprobes needs
to share a common architecrure-specific context structure, and because
the generic kprobes include file insists on defining this to a dummy
structure when kprobes is not configured, a new common structure is
required which can exist when uprobes is configured without kprobes.
In this case kprobes will define a dummy structure, but without the
define aliasing the two structure tags it will not affect uprobes and
the shared probes code.

Signed-off-by: David A. Long &lt;dave.long@linaro.org&gt;
Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: Change the remaining shared kprobes/uprobes symbols to something generic</title>
<updated>2014-03-18T20:39:39+00:00</updated>
<author>
<name>David A. Long</name>
<email>dave.long@linaro.org</email>
</author>
<published>2014-03-06T23:12:07+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=47e190fafde49ff8ca732fa137e39cb2b8baba8c'/>
<id>urn:sha1:47e190fafde49ff8ca732fa137e39cb2b8baba8c</id>
<content type='text'>
Any more ARM kprobes/uprobes symbols which have "kprobe" in the name must be
changed to the more generic "probes" or other non-kprobes specific symbol.

Signed-off-by: David A. Long &lt;dave.long@linaro.org&gt;
Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: Rename the shared kprobes/uprobe return value enum</title>
<updated>2014-03-18T20:39:38+00:00</updated>
<author>
<name>David A. Long</name>
<email>dave.long@linaro.org</email>
</author>
<published>2014-03-06T02:23:42+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=44a0a59c535004eac9f18210cb2ce10b23861630'/>
<id>urn:sha1:44a0a59c535004eac9f18210cb2ce10b23861630</id>
<content type='text'>
Change the name of kprobes_insn to probes_insn so it can be shared between
kprobes and uprobes without confusion.

Signed-off-by: David A. Long &lt;dave.long@linaro.org&gt;
Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: Make the kprobes condition_check symbol names more generic</title>
<updated>2014-03-18T20:39:37+00:00</updated>
<author>
<name>David A. Long</name>
<email>dave.long@linaro.org</email>
</author>
<published>2014-03-06T02:17:23+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=f145d664df502585618b12ed68c681f82153e02a'/>
<id>urn:sha1:f145d664df502585618b12ed68c681f82153e02a</id>
<content type='text'>
In preparation for sharing the ARM kprobes instruction interpreting
code with uprobes, make the symbols names less kprobes-specific.

Signed-off-by: David A. Long &lt;dave.long@linaro.org&gt;
Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: Remove use of struct kprobe from generic probes code</title>
<updated>2014-03-18T20:39:37+00:00</updated>
<author>
<name>David A. Long</name>
<email>dave.long@linaro.org</email>
</author>
<published>2014-03-07T16:19:32+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=7579f4b3764337b39087d10496af0e741cbfe570'/>
<id>urn:sha1:7579f4b3764337b39087d10496af0e741cbfe570</id>
<content type='text'>
Change the generic ARM probes code to pass in the opcode and architecture-specific
structure separately instead of using struct kprobe, so we do not pollute
code being used only for uprobes or other non-kprobes instruction
interpretation.

Signed-off-by: David A. Long &lt;dave.long@linaro.org&gt;
Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: use a function table for determining instruction interpreter action</title>
<updated>2014-03-18T20:39:36+00:00</updated>
<author>
<name>David A. Long</name>
<email>dave.long@linaro.org</email>
</author>
<published>2014-03-06T23:06:43+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=3e6cd394bb10c2d65322e5f5d2ff0a9074d903a1'/>
<id>urn:sha1:3e6cd394bb10c2d65322e5f5d2ff0a9074d903a1</id>
<content type='text'>
Make the instruction interpreter call back to semantic action functions
through a function pointer array provided by the invoker.  The interpreter
decodes the instructions into groups and uses the group number to index
into the supplied array.  kprobes and uprobes code will each supply their
own array of functions.

Signed-off-by: David A. Long &lt;dave.long@linaro.org&gt;
Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: Move generic arm instruction parsing code to new files for sharing between features</title>
<updated>2014-03-18T20:39:35+00:00</updated>
<author>
<name>David A. Long</name>
<email>dave.long@linaro.org</email>
</author>
<published>2014-03-07T16:16:10+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=c18377c303787ded44b7decd7dee694db0f205e9'/>
<id>urn:sha1:c18377c303787ded44b7decd7dee694db0f205e9</id>
<content type='text'>
Move the arm version of the kprobes instruction parsing code into more generic
files from where it can be used by uprobes and possibly other subsystems. The
symbol names will be made more generic in a subsequent part of this patchset.

Signed-off-by: David A. Long &lt;dave.long@linaro.org&gt;
Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
<entry>
<title>ARM: Fix missing includes in kprobes sources</title>
<updated>2014-03-18T20:39:34+00:00</updated>
<author>
<name>David A. Long</name>
<email>dave.long@linaro.org</email>
</author>
<published>2014-03-06T23:17:52+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=21254ebc9e509967317ad8c6922797e21137ad53'/>
<id>urn:sha1:21254ebc9e509967317ad8c6922797e21137ad53</id>
<content type='text'>
Make sure includes in ARM kprobes sources are done explicitly. Do not
rely on includes from other includes.

Signed-off-by: David A. Long &lt;dave.long@linaro.org&gt;
Acked-by: Jon Medhurst &lt;tixy@linaro.org&gt;
</content>
</entry>
</feed>
