Skip to content
  • Ian Campbell's avatar
    libxl: fix cleanup of tap devices in libxl__device_destroy · 7ddc3353
    Ian Campbell authored
    
    
    We pass be_path to tapdisk_destroy but we've already deleted it so it
    fails to read tapdisk-params. However it appears that we need to
    destroy the tap device after tearing down xenstore, to avoid the leak
    reported by Greg Wettstein in
    <201207312141.q6VLfJje012656@wind.enjellic.com>.
    
    So read the tapdisk-params in the cleanup transaction, before the
    remove, and pass that down to destroy_tapdisk instead. tapdisk-params
    may of course be NULL if the device isn't a tap device.
    
    There is no need to tear down the tap device from
    libxl__initiate_device_remove since this ultimately calls
    libxl__device_destroy.
    
    Propagate and log errors from libxl__device_destroy_tapdisk.
    
    Signed-off-by: default avatarIan Campbell <ian.campbell@citrix.com>
    Acked-by: default avatarIan Jackson <ian.jackson@eu.citrix.com>
    Committed-by: default avatarIan Jackson <ian.jackson@eu.citrix.com>
    7ddc3353