1. 15 12月, 2015 1 次提交
    • O
      Drivers: hv: utils: run polling callback always in interrupt context · 3cace4a6
      Olaf Hering 提交于
      All channel interrupts are bound to specific VCPUs in the guest
      at the point channel is created. While currently, we invoke the
      polling function on the correct CPU (the CPU to which the channel
      is bound to) in some cases we may run the polling function in
      a non-interrupt context. This  potentially can cause an issue as the
      polling function can be interrupted by the channel callback function.
      Fix the issue by running the polling function on the appropriate CPU
      at interrupt level. Additional details of the issue being addressed by
      this patch are given below:
      
      Currently hv_fcopy_onchannelcallback is called from interrupts and also
      via the ->write function of hv_utils. Since the used global variables to
      maintain state are not thread safe the state can get out of sync.
      This affects the variable state as well as the channel inbound buffer.
      
      As suggested by KY adjust hv_poll_channel to always run the given
      callback on the cpu which the channel is bound to. This avoids the need
      for locking because all the util services are single threaded and only
      one transaction is active at any given point in time.
      
      Additionally, remove the context variable, they will always be the same as
      recv_channel.
      Signed-off-by: NOlaf Hering <olaf@aepfle.de>
      Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3cace4a6
  2. 25 5月, 2015 6 次提交
  3. 27 11月, 2014 2 次提交
  4. 08 2月, 2014 1 次提交
  5. 27 9月, 2013 1 次提交
  6. 27 7月, 2013 1 次提交
  7. 16 3月, 2013 1 次提交
    • K
      Drivers: hv: Add a new driver to support host initiated backup · 96dd86fa
      K. Y. Srinivasan 提交于
      This driver supports host initiated backup of the guest. On Windows guests,
      the host can generate application consistent backups using the Windows VSS
      framework. On Linux, we ensure that the backup will be file system consistent.
      This driver allows the host to initiate a  "Freeze" operation on all the mounted
      file systems in the guest. Once the mounted file systems in the guest are frozen,
      the host snapshots the guest's file systems. Once this is done, the guest's file
      systems are "thawed".
      
      This driver has a user-level component (daemon) that invokes the appropriate
      operation on all the mounted file systems in response to the requests from
      the host. The duration for which the guest is frozen is very short - a few seconds.
      During this interval, the diff disk is comitted.
      
      In this version of the patch I have addressed the feedback from Olaf Herring.
      Also, some of the connector related issues have been fixed.
      Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com>
      Reviewed-by: NHaiyang Zhang <haiyangz@microsoft.com>
      Cc: Evgeniy Polyakov <zbr@ioremap.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      96dd86fa