[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[RFC PATCH v2 13/34] x86/xen/msr: Remove the error pointer argument from set_reg()



set_reg() is used to write the following MSRs on Xen:

    MSR_FS_BASE
    MSR_KERNEL_GS_BASE
    MSR_GS_BASE

But none of these MSRs are written using any MSR write safe API.
Therefore there is no need to pass an error pointer argument to
set_reg() for returning an error code to be used in MSR safe APIs.

Remove the error pointer argument.

Signed-off-by: Xin Li (Intel) <xin@xxxxxxxxx>
---
 arch/x86/xen/enlighten_pv.c | 16 +++++-----------
 1 file changed, 5 insertions(+), 11 deletions(-)

diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
index b5a8bceb5f56..9a89cb29fa35 100644
--- a/arch/x86/xen/enlighten_pv.c
+++ b/arch/x86/xen/enlighten_pv.c
@@ -1111,17 +1111,11 @@ static u64 xen_do_read_msr(unsigned int msr, int *err)
        return val;
 }
 
-static void set_seg(unsigned int which, unsigned int low, unsigned int high,
-                   int *err)
+static void set_seg(u32 which, u32 low, u32 high)
 {
        u64 base = ((u64)high << 32) | low;
 
-       if (HYPERVISOR_set_segment_base(which, base) == 0)
-               return;
-
-       if (err)
-               *err = -EIO;
-       else
+       if (HYPERVISOR_set_segment_base(which, base))
                WARN(1, "Xen set_segment_base(%u, %llx) failed\n", which, base);
 }
 
@@ -1138,15 +1132,15 @@ static void xen_do_write_msr(unsigned int msr, unsigned 
int low,
 
        switch (msr) {
        case MSR_FS_BASE:
-               set_seg(SEGBASE_FS, low, high, err);
+               set_seg(SEGBASE_FS, low, high);
                break;
 
        case MSR_KERNEL_GS_BASE:
-               set_seg(SEGBASE_GS_USER, low, high, err);
+               set_seg(SEGBASE_GS_USER, low, high);
                break;
 
        case MSR_GS_BASE:
-               set_seg(SEGBASE_GS_KERNEL, low, high, err);
+               set_seg(SEGBASE_GS_KERNEL, low, high);
                break;
 
        case MSR_STAR:
-- 
2.49.0




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.