Mailing List Archive

Re: [xs-devel] [XenServer6.5]: Check vif interface error at kernel 3.x issue
Hi 李义,

Thanks for your patch! I can confirm that we have already fixed this in the “master” branch as well as in the next release of XenServer.

Here are the commits:
https://github.com/xenserver/xen-api/commit/b887d640094be035c919bd4a85c66c2dac95ed4c
https://github.com/xapi-project/xcp-networkd/commit/a2a480f9a3f7d8717988319fe48ac11ddf9f908f

Cheers,
Rob

On 10 May 2015, at 02:07, 李义 <yilikernel@qq.com<mailto:yilikernel@qq.com>> wrote:

Hi all,

This issue happened on XenServer Creedence.

i have check the xen-api, there have some error to check a interface whether a physical interface.
please check and review. Thanks


Subject: [PATCH] Check vif interface error at kernel 3.x issue

The softlink name of /sys/class/net/vif**/device have not the xen-backend string
on kernel 3.X, should use the softlink /sys/class/net/vif**/device/driver

Signed-off-by: Yi Li <yili@winhong.com<mailto:yili@winhong.com>>
---
ocaml/network/network_utils.ml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ocaml/network/network_utils.ml b/ocaml/network/network_utils.ml
index 281157d..9195f01 100644
--- a/ocaml/network/network_utils.ml
+++ b/ocaml/network/network_utils.ml
@@ -86,7 +86,7 @@ module Sysfs = struct

let is_physical name =
try
- let link = Unix.readlink (getpath name "device") in
+ let link = Unix.readlink (getpath name "device/driver") in
(* filter out device symlinks which look like /../../../devices/xen-backend/vif- *)
not(List.mem "xen-backend" (String.split '/' link))
with _ -> false
--
1.7.12.4
<0001-Check-vif-interface-error-at-kernel-3.x-issue.patch>