lkml.org 
[lkml]   [2021]   [Sep]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v1 2/8] x86/xen: simplify xen_oldmem_pfn_is_ram()
    From
    Date
    > 
    > How about
    >
    >     return a.mem_type != HVMMEM_mmio_dm;
    >

    Ha, how could I have missed that :)

    >
    > Result should be promoted to int and this has added benefit of not requiring changes in patch 4.
    >

    Can we go one step further and do


    @@ -20,24 +20,11 @@ static int xen_oldmem_pfn_is_ram(unsigned long pfn)
    struct xen_hvm_get_mem_type a = {
    .domid = DOMID_SELF,
    .pfn = pfn,
    + .mem_type = HVMMEM_ram_rw,
    };
    - int ram;

    - if (HYPERVISOR_hvm_op(HVMOP_get_mem_type, &a))
    - return -ENXIO;
    -
    - switch (a.mem_type) {
    - case HVMMEM_mmio_dm:
    - ram = 0;
    - break;
    - case HVMMEM_ram_rw:
    - case HVMMEM_ram_ro:
    - default:
    - ram = 1;
    - break;
    - }
    -
    - return ram;
    + HYPERVISOR_hvm_op(HVMOP_get_mem_type, &a);
    + return a.mem_type != HVMMEM_mmio_dm;
    }
    #endif


    Assuming that if HYPERVISOR_hvm_op() fails that
    .mem_type is not set to HVMMEM_mmio_dm.

    --
    Thanks,

    David / dhildenb

    \
     
     \ /
      Last update: 2021-09-29 10:47    [W:5.894 / U:0.044 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site