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

[PATCH 0/2] Copy NetSettings


  • To: <win-pv-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Owen Smith <owen.smith@xxxxxxxxxx>
  • Date: Thu, 22 Sep 2022 07:58:04 +0100
  • Authentication-results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
  • Cc: Owen Smith <owen.smith@xxxxxxxxxx>
  • Delivery-date: Thu, 22 Sep 2022 06:58:27 +0000
  • Ironport-data: A9a23:GUEQDasfgR3U/Y+tDOUeJ5SiS+fnVBVeMUV32f8akzHdYApBsoF/q tZmKWzSbPmCMWT2Kd11OY+38x8AuMDUzINiGgtvrS4zHiIU+JbJXdiXEBz9bniYRiHhoOOLz Cm8hv3odp1coqr0/0/1WlTZhSAgk/vOHtIQMcacUghpXwhoVSw9vhxqnu89k+ZAjMOwRgiAo rsemeWGULOe82MyYzl8B56r8ks15qyj4mlA5zTSWNgQ1LPgvyhNZH4gDfnZw0vQGuF8AuO8T uDf+7C1lkuxE8AFU47Nfh7TKyXmc5aKVeS8oiM+t5uK23CukhcawKcjXMfwXG8M49m/c3Kd/ /0W3XC4YV9B0qQhA43xWTEAe811FfUuFLMqvRFTGCFcpqHLWyKE/hlgMK05Facq4eEpIntyz tAFNDAGNjmBm86ax5vuH4GAhux7RCXqFIYWu3UmxjDFF/c2B5vERs0m5/cBgm123JoXW6+DO YxJMlKDbzyZC/FLElAIBZR4h+KpmnnXeDxEslOF46Ew5gA/ySQhieCyYYuPJLRmQ+1bo2mIh Uyb317yGz41C/W/1yqB1FuF07qncSTTB9tJSezQGuRRqEKSwCkLFlgaWEW2pdG9i1WiQJRPJ koM4C0soKMuskuxQbHAswaQ+SDe+ERGApwJTrN8uFrlJrfoDxixLFofSWBicuAdmNIqRTdy/ 12Vs//uLGk62FGKck5x5ot4vBvrZ3ZOczNePnRYJecWy4K9+d9u13ojWv4mSffo1YOtRFkc1 hjQ9EADa6MvYdnnPklR1XTOmHqSq5fAVWbZDS2HDzv+vmuViGNIDrFECGQ3Dt4adu51tnHb4 BA5dzG2tYji962lmi2XW/kqF7q0/fuDOzC0qQcxQcJ+p2n2piH7INk4DNRCyKBBba45lcLBO heP6Wu9GrcKVJdVUUOHS93oUJl7pUQRPd/kSurVfrJzX3SFTyfepXkGWKJl9zqy+KTauf1gZ MzznAfFJSpyNJmLOxLtGLhFgO5ynXpnrY4RLLiipymaPXOlTCb9Yd843JGmNIjVMIvsTN3pz uti
  • Ironport-hdrordr: A9a23:BkVTu6nCyCQub6rIOQVaKKKHc8fpDfIm3DAbv31ZSRFFG/Fxl6 iV88jzsiWE7Qr5OUtQ/uxoV5PgfZqxz/NICOoqTNWftWvd2FdARbsKheCJ/9SJIVybygc378 ldmsZFZOEYdWIK7vrH3A==
  • List-id: Developer list for the Windows PV Drivers subproject <win-pv-devel.lists.xenproject.org>

XenVif currently has code to detect when a PV device has a working emulated
alias. XenVif will then copy the entire contents of its network settings to
a storage key based of VIF index.
When the driver starts, it will attempt to copy these settings from the
storage location back to various network setting locations for the new network
identity. This code is only executed when upgrading from emulated, but can be
extended to cover any case where the VIF is assigned a new network location,
provided the current network location's identifier (NetCfgInstanceId) is
stashed.
There are several upgrade scenarios that need to be covered to maintain network
configuration.
* Upgrade of XenBus, that exposes a new hardware ID to XenVif. In this case,
  the existing XenVif will rebind to a compatible ID exposed by XenBus and
  will not generate a new network connection. There currently is an issue that
  can cause, in some circumstances, XenBus and XenVif to enumerate the PV
  devices without issuing the VIF unplug.
* Upgrade of XenVif, binding to a different hardware ID exposed by XenBus.
  This is where the new XenVif coinstaller stashes the current network location
  identifier and XenVif's StartDevice will copy settings from the stashed
  network location identifier to the new network location identifier. XenNet
  could also rebind to a compatible ID exposed by XenVif, no chnage in network
  location is expected here.
* Upgrade of XenNet, binding to a different hardware ID exposed by Xenvif.
  This is not expected to change the network location, and therefore not require
  copying of network settings.

Owen Smith (2):
  Write current NetCfgInstanceId before upgrade
  Rework network settings copy code.

 src/coinst/coinst.c   | 341 ++++++++++++++++++
 src/xenvif/pdo.c      |  93 +++--
 src/xenvif/settings.c | 810 +++++++++++++++++++++++-------------------
 3 files changed, 849 insertions(+), 395 deletions(-)

-- 
2.32.0.windows.1




 


Rackspace

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