Giter VIP home page Giter VIP logo

lis-next's People

Contributors

abhimarathe avatar adriansuhov avatar aflat avatar chipitsine avatar chkp-zegman avatar chvalean avatar dcui avatar deajan avatar divyajyothikasam avatar haiyangz avatar iamshital avatar johnsongeorge-w avatar kelleymh avatar lis-service avatar longlimsft avatar mboitei avatar nickme avatar prashantmhetar avatar santoshx avatar seansp avatar seansp-zz avatar shemminger avatar simonxiaoss avatar sireeshapotnuru avatar srikkanth avatar stevecui avatar szarkos avatar vtsingaras avatar vyadavmsft avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lis-next's Issues

netvsc driver's netvsc_send_table populates with single queue

Hello,

I'm using rhel-7.3 as a VM on microsoft server hyperv-2016 with kernel-3.10.0-514.2.2.el7.x86_64 launched with 4vCPU's, 4GB memory. The tx_send_table always updates with single queue and some time with two queues, Is this the expected behavior.

Thanks,
Rakesh

RHEL 7 latest kernel breaking LIS integration

RHEL recently published kernel 3.10.0-514.10.2.el7.x86_64.
If we install LIS 4.1.3-1 on top of the new kernel, after reboot the VM will hang and fail to boot.

This has been reported by two users using the v-magine OpenStack deployment in this thread

All LIS modules report unknown symbols at boot time, including storvsc, which fails to load. This leads to dracut-initqueue timeout messages.
A few sample boot messages for reference:

[ 1.304404] hv_storvsc: disagrees about version of symbol vmbus_driver_unregister
[ 1.304406] hv_storvsc: Unknown symbol vmbus_driver_unregister (err -22)
[ 1.304731] hv_storvsc: Unknown symbol __vmbus_driver_register (err -22)
[ 1.304737] hv_storvsc: disagrees about version of symbol vmbus_sendpacket_mpb_desc
[ 1.304738] hv_storvsc: Unknown symbol vmbus_sendpacket_mpb_desc (err -22)
[ 1.304740] hv_storvsc: disagrees about version of symbol vmbus_are_subchannels_present
[ 1.304740] hv_storvsc: Unknown symbol vmbus_are_subchannels_present (err -22)

disable/enable integration services failure in 4.2.4

Regression from 4.2.3-1.

Tests that disable/enable integration services fail (eg. KVP and FCopy), because the daemon cannot be started after a disable/enable cycle. The daemons enter a failed state and cannot be started.

CentOS 6.9 (kernel-2.6.32-696.30.1.el6.x86_64) / depmod issue

I've installed LIS 4.2.5-2 from https://aka.ms/lis on a CentOS 6.9 VM (OpenLogic:CentOS:6.9:latest)

[root@c69l LISISO]# cat /etc/centos-release
CentOS release 6.9 (Final)
[root@c69l LISISO]# uname -r
2.6.32-696.30.1.el6.x86_64
[root@c69l ~]# tar xzf /tmp/lis-rpms-4.2.5-2.tar.gz 
[root@c69l ~]# cd LISISO
[root@c69l LISISO]# ./install.sh 
Removing Hyper-V daemons
Invoking release specific install file in directory CentOS69
Installing the Linux Integration Services for Microsoft Hyper-V...
Preparing...                ########################################### [100%]
   1:kmod-microsoft-hyper-v ########################################### [100%]
Preparing...                ########################################### [100%]
   1:microsoft-hyper-v-debug########################################### [ 50%]
   2:microsoft-hyper-v      ########################################### [100%]
Saving old initramfs
Installing new initramfs
Adding KVP Daemon to Chkconfig....
Starting KVP Daemon....
Adding VSS Daemon to Chkconfig....
Starting VSS Daemon....
Adding FCOPY Daemon to Chkconfig....
Starting FCOPY Daemon....
 Linux Integration Services for Hyper-V has been installed. Please reboot your system.
[root@c69l LISISO]# reboot

Verified that the driver version was 4.2.5-2:

[root@c69l ~]# modinfo hv_vmbus
filename:       /lib/modules/2.6.32-696.30.1.el6.x86_64/weak-updates/microsoft-hyper-v/hv_vmbus.ko
version:        4.2.5.2
license:        GPL
srcversion:     563CE3C50B61BCDE6A452A0
alias:          acpi*:VMBus:*
alias:          acpi*:VMBUS:*
depends:        

After I ran depmod -a, the drivers point back to the built-in ones:

[root@c69l ~]# depmod -a
[root@c69l ~]# modinfo hv_vmbus
filename:       /lib/modules/2.6.32-696.30.1.el6.x86_64/kernel/drivers/hv/hv_vmbus.ko
version:        3.1
license:        GPL
retpoline:      Y
srcversion:     A280F9C354AF9451F98BE62
alias:          acpi*:VMBus:*
alias:          acpi*:VMBUS:*
depends:        
vermagic:       2.6.32-696.30.1.el6.x86_64 SMP mod_unload modversions 

If you reboot the VM you will lose network connectivity,
I had to connect to the serial console to run the commands:

[root@c69l ~]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
[root@c69l ~]# modprobe hv_netvsc
hv_netvsc: disagrees about version of symbol vmbus_driver_unregister
hv_netvsc: Unknown symbol vmbus_driver_unregister
hv_netvsc: disagrees about version of symbol vmbus_sendpacket
hv_netvsc: Unknown symbol vmbus_sendpacket
hv_netvsc: disagrees about version of symbol vmbus_teardown_gpadl
hv_netvsc: Unknown symbol vmbus_teardown_gpadl
hv_netvsc: disagrees about version of symbol vmbus_close
hv_netvsc: Unknown symbol vmbus_close
hv_netvsc: disagrees about version of symbol vmbus_recvpacket_raw
hv_netvsc: Unknown symbol vmbus_recvpacket_raw
hv_netvsc: disagrees about version of symbol vmbus_open
hv_netvsc: Unknown symbol vmbus_open
hv_netvsc: disagrees about version of symbol vmbus_set_sc_create_callback
hv_netvsc: Unknown symbol vmbus_set_sc_create_callback
hv_netvsc: disagrees about version of symbol __vmbus_driver_register
hv_netvsc: Unknown symbol __vmbus_driver_register
hv_netvsc: disagrees about version of symbol vmbus_establish_gpadl
hv_netvsc: Unknown symbol vmbus_establish_gpadl
hv_netvsc: disagrees about version of symbol vmbus_sendpacket_pagebuffer
hv_netvsc: Unknown symbol vmbus_sendpacket_pagebuffer
FATAL: Error inserting hv_netvsc (/lib/modules/2.6.32-696.30.1.el6.x86_64/kernel/drivers/net/hyperv/hv_netvsc.ko): Unknown symbol in module, or unknown parameter (see dmesg)

You can fix the issue by creating a symlink to hyperv.conf and run depmod -a again:

[root@c69l ~]# ln -s /opt/files/hyperv.conf /etc/depmod.d/hyperv.conf
[root@c69l ~]# depmod -a
[root@c69l ~]# modprobe hv_netvsc
hv_vmbus: registering driver hv_netvsc
hv_netvsc 000d3af8-ee2b-000d-3af8-ee2b000d3af8: real num tx,rx queues:1, 1
[root@c69l ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 00:0d:3a:f8:ee:2b brd ff:ff:ff:ff:ff:ff
    inet6 fe80::20d:3aff:fef8:ee2b/64 scope link
       valid_lft forever preferred_lft forever

I've checked on Centos 7.5 and it still points to version is 4.2.5-2 after running depmod -a

We had customers affected by this issue. Would it be possible for you to fix the LIS package asap ?

Rogue Wave Software Centos 7.3 image kernel breaking LIS integration

I tried to install LIS 4.1.3-2 on a VM build from the Centos 7.3 from Rogue Wave Software,
using kernel 3.10.0-514.16.1.el7.x86_64, and after reboot the VM hangs and fails to boot.

All LIS modules report unknown symbols at boot time, including storvsc, which fails to load. This leads to dracut-initqueue timeout messages.

A few sample boot messages for reference:

[ 3.294211] hv_storvsc: disagrees about version of symbol vmbus_driver_unregister
[ 3.294212] hv_storvsc: Unknown symbol vmbus_driver_unregister (err -22)
[ 3.294250] hv_storvsc: disagrees about version of symbol vmbus_sendpacket
[ 3.294251] hv_storvsc: Unknown symbol vmbus_sendpacket (err -22)
[ 3.294259] hv_storvsc: disagrees about version of symbol vmbus_close
[ 3.294260] hv_storvsc: Unknown symbol vmbus_close (err -22)
[ 3.294263] hv_storvsc: disagrees about version of symbol vmbus_recvpacket
[ 3.294263] hv_storvsc: Unknown symbol vmbus_recvpacket (err -22)
[ 3.294276] hv_storvsc: disagrees about version of symbol vmbus_open
[ 3.294277] hv_storvsc: Unknown symbol vmbus_open (err -22)

removing hv_netvsc module causes a task hung on rhel-6.9

Hello,

I had compiled the lis-next drivers for rhel-6.9 which has kernel-2.6.32-696.3.2.el6.x86_64 , The windows server-2016 is used as hypervisor and VM is configured to use 4 vcpu's. During rmmod hv_netvsc, found a task hung for more than 120seconds, Below is the log
hv_vmbus: unregistering driver hv_netvsc
INFO: task rmmod:1459 blocked for more than 120 seconds.
Not tainted 2.6.32-696.3.2.el6.x86_64 #1
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
rmmod D 0000000000000000 0 1459 1444 0x00000084
ffff8800375d3bf8 0000000000000086 0000000000000000 ffff8800375b0806
0000000100000000 0000000000000000 0000003465b9d831 ffff8800000001ff
00000002375d3b98 00000000fffedb23 ffff880036df1068 ffff8800375d3fd8
Call Trace:
[] schedule_timeout+0x215/0x2e0
[] ? sysfs_delete_inode+0x0/0x60
[] wait_for_common+0x123/0x180
[] ? default_wake_function+0x0/0x20
[] wait_for_completion+0x1d/0x20
[] rndis_filter_device_remove+0x36/0x1d0 [hv_netvsc]
[] netvsc_remove+0x63/0xc0 [hv_netvsc]
[] vmbus_remove+0x24/0x30 [hv_vmbus]
[] __device_release_driver+0x6f/0xe0
[] driver_detach+0xc8/0xd0
[] bus_remove_driver+0x8e/0x120
[] driver_unregister+0x30/0x70
[] vmbus_driver_unregister+0x35/0x40 [hv_vmbus]
[] netvsc_drv_exit+0x21/0x29 [hv_netvsc]
[] sys_delete_module+0x194/0x260
[] ? __stop_cpus+0x23/0x80
[] system_call_fastpath+0x16/0x1b

,I added some debug prints and found the net_dev->num_sc_offered is less than 0 and waits for completion,
if (net_dev->num_sc_offered > 0)
wait_for_completion(&net_dev->channel_init_wait);

Thanks,
Rakesh

error compiling lis-next on rhel/centos 6.0 and 6.2x32

The following error appears when compiling LIS-next branch 4.1.3 on 6.0 and 6.2x32.

gcc -Wall -Wextra -g -lpthread -D__EXPORTED_HEADERS__ -I../include/uapi -I ../include -o hv_kvp_daemon hv_kvp_daemon.c
In file included from ../include/uapi/linux/hyperv.h:33,
from hv_kvp_daemon.c:36:
../include/uapi/linux/../../linux/hv_compat.h:639:31: error: linux/etherdevice.h: No such file or directory
In file included from ../include/uapi/linux/hyperv.h:33,
from hv_kvp_daemon.c:36:
../include/uapi/linux/../../linux/hv_compat.h:647: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘attribute’ before ‘ether_addr_equal’
make: *** [hv_kvp_daemon] Error 1

Cleanup compile warnings

For example:

  • vmbus_flow_handler defined but not used.
  • va_tsc defined but not used.
  • tsc_msr defined but not used.

RH 7.3 - hid_hyperv error messages

Installing lis-next on RHEL 7.3 GA results in hid_hyperv / mouse input to not be functional, with these messages being logged:

kernel: hid (null): transport driver missing .raw_request()
hv_vmbus: probe failed for device vmbus-58f75a6d-d949-4320-99e1-a2a2576d581c (-22)
hid_hyperv: probe of vmbus-58f75a6d-d949-4320-99e1-a2a2576d581c failed with error -22

RH7.5 kernel update results in symbol version mismatches

After installing kmod-microsoft-hyper-v-4.2.5-20180524.x86_64 on 3.10.0-862.el7 kernel everything works well and the newly installed modules are loaded. But after updating the kernel to 3.10.0-862.3.2.el7 the installed modules cannot be loaded and the old built-in modules are used again.

I understand that kmod for rpm for 3.10.0-862.3.2.el7 is available under update2 directory. However, my understanding is that the purpose of kmod is to automatically re-use already installed modules after minor kernel updates. Minor kernel updates should not break symbols.

Upgrade the 7.x daemons to use systemd unit files

This is a post 4.1.3 request. As an example, the 7.3 service file for kvp contains the following:

[Unit]
Description=Hyper-V KVP daemon
BindsTo=sys-devices-virtual-misc-vmbus\x21hv_kvp.device

[Service]
Type=simple
ExecStart=/usr/sbin/hypervkvpd -n

Not able to install LIS on RHEL 6.X

Hi,

Please help us we are not able to install this LIS on RHEL6.x x86_64

]# ./rhel6-hv-driver-install
Building Modules
make: *** /lib/modules/2.6.32-504.el6.x86_64/build: No such file or directory. Stop.
]#
]# make -C /lib/modules/$(uname -r)/build M=pwd clean
make: *** /lib/modules/2.6.32-504.el6.x86_64/build: No such file or directory. Stop.
]#

]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.6 (Santiago)
]#
]# uname -r
2.6.32-504.el6.x86_64
]#

RHEL 6.x 32 bit not booting

On RHEL 6.2, 6.6 and 6.8, all 32 bit with LIS-next, the VMs are not booting when multiple External NICs are attached. On 6.4 and 7.0 64 bit it works as expected.

Get an error after run "./rhel7-hv-driver-install"

Sorry, I am new for this.
I need help or advise.

After I ran this command "./rhel7-hv-driver-install".
I got this error

> Building Modules
> Cleaning up from any previous builds
> make: Entering directory `/usr/src/kernels/3.10.0-327.18.2.el7.x86_64'
> make: *** No rule to make target `clean'.  Stop.
> make: Leaving directory `/usr/src/kernels/3.10.0-327.18.2.el7.x86_64'

Cannot build lis-next on RHEL 6.4 x64

Trying to build lis-next on RHEL 6.4 x64 with kernel 2.6.32-358.56.1.el6.x86_64 I get the following error:

[root@localhost hv]# ./rhel${rhel_version}-hv-driver-install Building Modules make: Entering directory/usr/src/kernels/2.6.32-358.56.1.el6.x86_64'
make: Leaving directory /usr/src/kernels/2.6.32-358.56.1.el6.x86_64' make: Entering directory/usr/src/kernels/2.6.32-358.56.1.el6.x86_64'
CC [M] /root/lis-next/hv-rhel6.x/hv/netvsc_drv.o
CC [M] /root/lis-next/hv-rhel6.x/hv/netvsc.o
CC [M] /root/lis-next/hv-rhel6.x/hv/rndis_filter.o
CC [M] /root/lis-next/hv-rhel6.x/hv/af_hvsock.o
/root/lis-next/hv-rhel6.x/hv/af_hvsock.c: In function ‘hvsock_getname’:
/root/lis-next/hv-rhel6.x/hv/af_hvsock.c:424: error: implicit declaration of function ‘__sockaddr_check_size’
make[1]: *** [/root/lis-next/hv-rhel6.x/hv/af_hvsock.o] Error 1
make: *** [module/root/lis-next/hv-rhel6.x/hv] Error 2
make: Leaving directory /usr/src/kernels/2.6.32-358.56.1.el6.x86_64' Wed Sep 07 11:39:10 2016 : Error: Unable to build the lis-next RHEL 6 code

warning in hv_fcopy_daemon.c file 6.x

The bellow warning appears when compiling hv_fcopy_daemon.c for 6.x branch 4.1.3

gcc -Wall -Wextra -g -lpthread -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D__EXPORTED_HEADERS__ -I../include/uapi -I ../include -o hv_fcopy_daemon hv_fcopy_daemon.c
hv_fcopy_daemon.c: In function ‘hv_copy_data’:
hv_fcopy_daemon.c:109: warning: comparison between signed and unsigned integer expressions

netvsc_start_xmit error in netvsc_drv.c

Compiling lis-next on centos 6.0 64bit (kernel 2.6.32-71.el6.x86_64) fails with the below:

/root/lis-next/hv-rhel6.x/hv/netvsc_drv.c: In function ‘netvsc_start_xmit’:
/root/lis-next/hv-rhel6.x/hv/netvsc_drv.c:656: error: implicit declaration of function ‘skb_tx_timestamp’
make[1]: *** [/root/lis-next/hv-rhel6.x/hv/netvsc_drv.o] Error 1

Limitations of the video driver (hyperv_fb.c) in Linux Integration Services

Hi there,

we are investigating the possibility to use Hyper-V as a base for a new version of one of our products (Browser in the Box).
Our goal is to have a Linux VM running on a desktop computer with Hyper-V (Windows 10) with the GUI shown to the user. And we would love to use VMConnect functionality for showing the GUI.
The current implementation of the video driver ("hyperv_fb.c"), however, has a number of hard limitations preventing the use of VMConnect for our needs. In particular,

  1. The maximum resolution is fixed to 1920x1080.
  2. No screen resizing is possible on a running VM (neither from the host side, nor from the VM side itself via "xrandr" or a similar tool).

The question is if those limitations are specific to a particular driver implementation (and can be solved by further extending and modifying the driver) or if
they are imposed by the underlying Hyper-V architecture and changes to the Hyper-V code would be necessary to support those features.

We would greatly appreciate if you could give us any information regarding the issues.

In case if the limitations are coming from the driver implementation and the features can be implemented in the Linux Integration Services (without modifying the Hyper-V code), do you maybe know a LIS contributor who would be interested in implementing those features for us (for a certain fee of course)?

Best regards,
Clemens A. Schulz

netvsc_set_hash warning on centos 6

Compiling the modules returns the below warning on centos 6.7 (32bit):
WARNING: "netvsc_set_hash" [/root/lis-next/hv-rhel6.x/hv/hv_netvsc.ko] undefined!

Clean up skb_set_hash() code in hv_compat.h

This is a post 4.1.3 request.

Clean up the following code in hv_compat.h

#if (RHEL_RELEASE_CODE < RHEL_RELEASE_VERSION(6,6))
static inline void
skb_set_hash(struct sk_buff *skb, __u32 hash, int type)
{
#if (RHEL_RELEASE_CODE > RHEL_RELEASE_VERSION(6,6))
skb->rxhash = hash;
#endif
}
#endif

CentOS 7.5 (kernel-3.10.0-862.6.3.el7.x86_64) / LVM boot issue with LiS 4.2.5-2

Hello

i upgraded LiS to 4.2.5-2 on 3 CentOS 7.5 (upgraded from 7.4).
These VM are standard gen1 with IDE controller hosted on a Windows 10 1803 x64

After reboot, LVM volumes are not found.

dracut-initqueue[252]: Warning: dracut-initqueue timeout - starting timeout scripts
...
dracut-initqueue[252]: Warning: dracut-initqueue timeout - starting timeout scripts
dracut-initqueue[252]: Warning: Could not book
dracut-initqueue[252]: Warning: /dev/centos/root does not exist
dracut-initqueue[252]: Warning: /dev/centos/swap does not exist
dracut-initqueue[252]: Warning: /dev/mapper/centos-root does not exist

dracut:/# lvm pvscan
No matching physical volumes found

i had to reboot in recovery then uninstall LiS to resolve the issue.

Rgds
Stéphane O.

Install failure

On RHEL 6.1 the installation fails with the following message:

/root/lis-next/hv-rhel6.x/hv/arch/x86/include/lis/asm/mshyperv.h:164:5: warning:"IS_ENABLED" is not defined
/root/lis-next/hv-rhel6.x/hv/arch/x86/include/lis/asm/mshyperv.h:164:15: error: missing binary operator before token "("
/root/lis-next/hv-rhel6.x/hv/vmbus_drv.c:55:26: error: asm/mshyperv.h: No such file or directory
/root/lis-next/hv-rhel6.x/hv/vmbus_drv.c: In function hyperv_panic_event:
/root/lis-next/hv-rhel6.x/hv/vmbus_drv.c:106: error: implicit declaration of function hyperv_report_panic
make[1]: *** [/root/lis-next/hv-rhel6.x/hv/vmbus_drv.o] Error 1
make: *** [_module_/root/lis-next/hv-rhel6.x/hv] Error 2
make: Leaving directory `/usr/src/kernels/2.6.32-131.0.15.el6.i686'
[root@localhost hv]# /root/lis-next/hv-rhel6.x/hv/arch/x86/include/lis/asm/mshyperv.h:164:15: error: missing binary operator before token "("
make: Leaving directory `/usr/src/kernels/2.6.32-131.0.15.el6.i686'
-bash: /root/lis-next/hv-rhel6.x/hv/arch/x86/include/lis/asm/mshyperv.h:164:15::No such file or directory
[root@localhost hv]# /root/lis-next/hv-rhel6.x/hv/vmbus_drv.c:55:26: error: asm/mshyperv.h: No such file or directory
-bash: /root/lis-next/hv-rhel6.x/hv/vmbus_drv.c:55:26:: No such file or directory
[root@localhost hv]# /root/lis-next/hv-rhel6.x/hv/vmbus_drv.c: In function hyperv_panic_event
-bash: /root/lis-next/hv-rhel6.x/hv/vmbus_drv.c:: No such file or directory
[root@localhost hv]# :/root/lis-next/hv-rhel6.x/hv/vmbus_drv.c:106: error: implicit declaration of function hyperv_report_panic
-bash: :/root/lis-next/hv-rhel6.x/hv/vmbus_drv.c:106:: No such file or directory
[root@localhost hv]# make[1]: *** [/root/lis-next/hv-rhel6.x/hv/vmbus_drv.o] Error 1
-bash: âmake[1]:: command not found
[root@localhost hv]# make: *** [_module_/root/lis-next/hv-rhel6.x/hv] Error 2
-bash: make:: command not found
[root@localhost hv]# make: Leaving directory `/usr/src/kernels/2.6.32-131.0.15.el6.i686'

KVP OS distro version detection improvement

The KVP daemon is using /etc/os-release to report the OSMajorVersion key.

If the file does not exist, it falls back to /etc/redhat-release. The fallback code assumes the file has multiple lines of content, which is incorrect. Temporary workaround is to install the RPM that provides the /etc/os-release file.

The code will be updated for the fallback parsing code to handle the contents of /etc/redhat-release for both RedHat and CentOS.

wait completion timeout on RH5.x

We are experiencing some wait completion timeouts using 2.6.18 kernels.
Especially with netvsc_open() calling rndis_filter_open().
It seems like
9ecf188 (RH6)) and df897f6 (RH7) were not back ported to RH5.

Check if daemon guest service is enabled, gracefully exit if not.

If the guest service for each daemon is enabled, you can find the guest service GUID under:
/sys/bus/vmbus/drivers/hv_util/vmbus_*/class_id
Add a check to the daemons to verify their guest service is enabled. If not, log an informational message and exit gracefully.

Following is prototype code:

char HV_UTIL_ROOT_DIR[] = "/sys/bus/vmbus/drivers/hv_util";

char KVP_GUID[] = "{a9a0f4e7-5a45-4d96-b827-8a841e8c03e6}";
char VSS_GUID[] = "{35fa2e29-ea23-4236-96ae-3a6ebacba440}";
char FCOPY_GUID[] = "{34d14be3-dee4-41c8-9ae7-6b174977c192}";

/*

  • check_class_id()

  • Try to open the class_id entry under the directory.

  • If successful, read the class_id string and see if

  • it matches our GUID.
    */
    int check_class_id(char *dirname, char *classid)
    {
    int f;
    int isEnabled = 0;
    char filename[256];
    char buf[256];

     sprintf(filename, "%s/%s/class_id", HV_UTIL_ROOT_DIR, dirname);
    
     f = open(filename, O_RDONLY);
     if (f > 0)
     {
             memset(buf, 0, 256);
             read(f, buf, 255);
             if (! (strncmp(classid, buf, 38)))
                     isEnabled = 1;
             close(f);
     }
    
     return isEnabled;
    

}

/*

  • is_service_enabled()

  • Open the hv_util directory in the sysfs directory.

  • Then check all subdirectories for a class_id that

  • matches our GUID.
    */
    int is_service_enabled(char *serviceGUID)
    {
    int isEnabled = 0;
    DIR *dir;
    struct dirent *ent;

     if (! (dir = opendir(HV_UTIL_ROOT_DIR)))
             return 0;
    
     /* Note: The vmbus_nn entries are links, not DT_DIR entries */
     while ((ent = readdir(dir)))
             if (ent->d_type == DT_LNK)
                     if (check_class_id(ent->d_name, serviceGUID))
                     {
                             isEnabled = 1;
                             break;
                     }
     closedir(dir);
     return isEnabled;
    

}

LIS 4.0.11 not working with CentOS 7.2

I just upgraded my CentOS VM to 7.2 (just by using yum upgrade). This upgraded the kernel to 3.10.0-327.3.1.el7. After a reboot, I was unable to use my mouse and keyboard from a "Virtual Machine Connection" window. Luckily, I was still able to use PuTTY to SSH into it.

In dmesg I saw the following:

[   30.880959] hyperv_keyboard: module verification failed: signature and/or required key missing - tainting kernel
[   30.880990] hyperv_keyboard: disagrees about version of symbol vmbus_driver_unregister
[   30.880992] hyperv_keyboard: Unknown symbol vmbus_driver_unregister (err -22)
[   30.881000] hyperv_keyboard: disagrees about version of symbol vmbus_sendpacket
[   30.881001] hyperv_keyboard: Unknown symbol vmbus_sendpacket (err -22)
[   30.881057] hyperv_keyboard: disagrees about version of symbol vmbus_close
[   30.881059] hyperv_keyboard: Unknown symbol vmbus_close (err -22)
[   30.881069] hyperv_keyboard: disagrees about version of symbol vmbus_recvpacket_raw
[   30.881070] hyperv_keyboard: Unknown symbol vmbus_recvpacket_raw (err -22)
[   30.881076] hyperv_keyboard: disagrees about version of symbol vmbus_open
[   30.881077] hyperv_keyboard: Unknown symbol vmbus_open (err -22)
[   30.881089] hyperv_keyboard: disagrees about version of symbol __vmbus_driver_register
[   30.881090] hyperv_keyboard: Unknown symbol __vmbus_driver_register (err -22)
[   30.903003] hv_balloon: disagrees about version of symbol vmbus_sendpacket
[   30.903048] hv_balloon: Unknown symbol vmbus_sendpacket (err -22)
[   30.903055] hv_balloon: disagrees about version of symbol vmbus_close
[   30.903056] hv_balloon: Unknown symbol vmbus_close (err -22)
[   30.903061] hv_balloon: disagrees about version of symbol vmbus_recvpacket
[   30.903062] hv_balloon: Unknown symbol vmbus_recvpacket (err -22)
[   30.903081] hv_balloon: disagrees about version of symbol vmbus_open
[   30.903082] hv_balloon: Unknown symbol vmbus_open (err -22)
[   30.903100] hv_balloon: disagrees about version of symbol __vmbus_driver_register
[   30.903101] hv_balloon: Unknown symbol __vmbus_driver_register (err -22)
[   30.903613] hv_balloon: disagrees about version of symbol vmbus_sendpacket
[   30.903620] hv_balloon: Unknown symbol vmbus_sendpacket (err -22)
[   30.903625] hv_balloon: disagrees about version of symbol vmbus_close
[   30.903626] hv_balloon: Unknown symbol vmbus_close (err -22)
[   30.903631] hv_balloon: disagrees about version of symbol vmbus_recvpacket
[   30.903632] hv_balloon: Unknown symbol vmbus_recvpacket (err -22)
[   30.903651] hv_balloon: disagrees about version of symbol vmbus_open
[   30.903652] hv_balloon: Unknown symbol vmbus_open (err -22)
[   30.903670] hv_balloon: disagrees about version of symbol __vmbus_driver_register
[   30.903671] hv_balloon: Unknown symbol __vmbus_driver_register (err -22)
[   30.949023] hid_hyperv: disagrees about version of symbol vmbus_driver_unregister
[   30.949029] hid_hyperv: Unknown symbol vmbus_driver_unregister (err -22)
[   30.949036] hid_hyperv: disagrees about version of symbol vmbus_sendpacket
[   30.949037] hid_hyperv: Unknown symbol vmbus_sendpacket (err -22)
[   30.949042] hid_hyperv: disagrees about version of symbol vmbus_close
[   30.949043] hid_hyperv: Unknown symbol vmbus_close (err -22)
[   30.949096] hid_hyperv: disagrees about version of symbol vmbus_recvpacket_raw
[   30.949098] hid_hyperv: Unknown symbol vmbus_recvpacket_raw (err -22)
[   30.949102] hid_hyperv: disagrees about version of symbol vmbus_open
[   30.949103] hid_hyperv: Unknown symbol vmbus_open (err -22)
[   30.949111] hid_hyperv: disagrees about version of symbol __vmbus_driver_register
[   30.949112] hid_hyperv: Unknown symbol __vmbus_driver_register (err -22)
[   30.949752] hyperv_fb: disagrees about version of symbol vmbus_driver_unregister
[   30.949757] hyperv_fb: Unknown symbol vmbus_driver_unregister (err -22)
[   30.949769] hyperv_fb: disagrees about version of symbol vmbus_sendpacket
[   30.949770] hyperv_fb: Unknown symbol vmbus_sendpacket (err -22)
[   30.949779] hyperv_fb: disagrees about version of symbol vmbus_close
[   30.949780] hyperv_fb: Unknown symbol vmbus_close (err -22)
[   30.949784] hyperv_fb: disagrees about version of symbol vmbus_recvpacket
[   30.949785] hyperv_fb: Unknown symbol vmbus_recvpacket (err -22)
[   30.949797] hyperv_fb: disagrees about version of symbol vmbus_open
[   30.949798] hyperv_fb: Unknown symbol vmbus_open (err -22)
[   30.949821] hyperv_fb: disagrees about version of symbol __vmbus_driver_register
[   30.949822] hyperv_fb: Unknown symbol __vmbus_driver_register (err -22)

Ability to control file transfer permissions

Is it possible to control the file creation when using Copy-VMFile against a linux machine. For instance changing the default file permissions when copying to certian locations? Currently everything gets copy down with root permissions, leaving standard users without write access. It would be good to be able to change the deafault permissions for certain locations and even whitelist and blacklist other areas.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.