On 12/16/2014 11:24 AM, David Vrabel wrote:
On 16/12/14 05:55, Juergen Gross wrote:
On 12/15/2014 01:05 PM, David Vrabel wrote:
On 11/12/14 18:04, Juergen Gross wrote:
Instead of manually list each hypercall in arch/x86/xen/xen-head.S
use the auto generated symbol list.

This also corrects the wrong address of xen_hypercall_mca which was
located 32 bytes higher than it should.

Symbol addresses have been verified to match the correct ones via
objdump output.
[...]
+
+#define HYPERCALL(n) \
+    .equ xen_hypercall_##n, hypercall_page + __HYPERVISOR_##n * 32; \
+    .type xen_hypercall_##n, function; .size xen_hypercall_##n, 32
+#include <asm/xen-hypercalls.h>
+#undef HYPERCALL

The gas manual[1] suggests the syntax you've used for .type is invalid
and suggest using .type <name>, STT_FUNC

Really? In the link below I see:

The types supported are:

STT_FUNC
function
     Mark the symbol as being a function name.
...

So "function" seems to be okay.

From the manual

     The syntaxes supported are:

        .type <name> STT_<TYPE_IN_UPPER_CASE>
        .type <name>,#<type>
        .type <name>,@<type>
        .type <name>,%<type>
        .type <name>,"<type>"

And

     The first variant will be accepted by the GNU assembler on all
     architectures...

grepping through the x86 assembler sources

.type <name>,@function

seems to be the preferred syntax (100%). I think I'll switch to that.


Juergen

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to