Tuesday, November 17, 2015

firmware

t4fwdebugtool flowc 10000

xxd -s 0x80000 -l 512 /sys/kernel/debug/cxgb4/0002\:01\:00.4/flash

Wednesday, November 11, 2015

WHQL

reinstall

provide IPV6 address of PEER in the test GUI when it asked.
disable all NDIS interfaces and run the test.

Tuesday, November 3, 2015

Enable flow control under debuuger

NDIS registry key to enable flowcontrol in the presence of Debug enabled:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NDIS\Parameters\[DWORD]AllowFlowControlUnderDebugger.

Set this key to 1 and reboot the machine to enable Tx-Flow control with debugger enabled.

Friday, October 30, 2015

REG

which bit we want to set select that in binary mode
convert it to hex
add to the existing value



original : 0x10002
mod : 0x1000a
 cxgbtool eth0 reg 0x7d8c=0x1000a

[root@t6fpga5 ~]# reg6.py -f TP_ERR_CONFIG
[0x07d8c] TP_ERR_CONFIG                                 0x0001000a [     65546]
  [31:31]   TnlErrorFPMA                                0x0        [         0]
  [30:30]   TnlErrorPing                                0x0        [         0]
  [29:29]   TnlErrorCsum                                0x0        [         0]
  [28:28]   TnlErrorCsumIP                              0x0        [         0]
  [27:27]   TnlErrorOpaque                              0x0        [         0]
  [26:26]   TnlErrorIp6Opt                              0x0        [         0]
  [25:25]   TnlErrorTcpOpt                              0x0        [         0]
  [24:24]   TnlErrorPktLen                              0x0        [         0]
  [23:23]   TnlErrorTcpHdrLen                           0x0        [         0]
  [22:22]   TnlErrorIpHdrLen                            0x0        [         0]
  [21:21]   TnlErrorEthHdrLen                           0x0        [         0]
  [20:20]   TnlErrorAttack                              0x0        [         0]
  [19:19]   TnlErrorFrag                                0x0        [         0]
  [18:18]   TnlErrorIpVer                               0x0        [         0]
  [17:17]   TnlErrorMac                                 0x0        [         0]
  [16:16]   TnlErrorAny                                 0x1        [         1]
  [15:15]   DropErrorFPMA                               0x0        [         0]
  [14:14]   DropErrorPing                               0x0        [         0]
  [13:13]   DropErrorCsum                               0x0        [         0]
  [12:12]   DropErrorCsumIP                             0x0        [         0]
  [11:11]   DropErrorOpaque                             0x0        [         0]
  [10:10]   DropErrorIp6Opt                             0x0        [         0]
  [ 9: 9]   DropErrorTcpOpt                             0x0        [         0]
  [ 8: 8]   DropErrorPktLen                             0x0        [         0]
  [ 7: 7]   DropErrorTcpHdrLen                          0x0        [         0]
  [ 6: 6]   DropErrorIpHdrLen                           0x0        [         0]
  [ 5: 5]   DropErrorEthHdrLen                          0x0        [         0]
  [ 4: 4]   DropErrorAttack                             0x0        [         0]
  [ 3: 3]   DropErrorFrag                               0x1        [         1]
  [ 2: 2]   DropErrorIpVer                              0x0        [         0]
  [ 1: 1]   DropErrorMac                                0x1        [         1]
  [ 0: 0]   DropErrorAny                                0x0        [         0]


[root@t6fpga5 ~]# reg6.py -f TP_ERR_CONFIG[DropErrorFrag]=0
0x10002 [65538]

[root@t6fpga5 ~]# reg6.py -f TP_ERR_CONFIG[DropErrorFrag]=1
0x1000a [65546]


working
=======

[root@t6fpga5 t5tools]# reg6.py -f TP_ERR_CONFIG[DropErrorFrag]=1
0x1000a [65546]
[root@t6fpga5 t5tools]# reg6.py tp_eside_config[FragmentDrop]=1
0x2086666 [34104934]


Friday, October 9, 2015

Linux bonding

Linux Network bonding – setup

Linux network Bonding is a creation of a single bonded interface by combining 2 or more Ethernet interfaces. This helps in high availability of your network interface and offers performance improvements on your data traffic flow. Bonding is also referred as nic trunking or teaming.
Bonding allows you to aggregate multiple ports into a single group, effectively combining the bandwidth into a single connection. Bonding also allows you to create multi-gigabit pipes to transport traffic through the highest traffic areas of your network. For example, you can aggregate three megabits ports into a three-megabits trunk port. That is equivalent with having one interface with three megabytes speed
Steps for bonding in Oracle Enterprise Linux and Redhat Enterprise Linux are as follows..
Step 1.
Create the file ifcfg-bond0 with the IP address, netmask and gateway. Shown below is my test bonding config file.
# cat /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 
IPADDR=192.168.1.12 
NETMASK=255.255.255.0 
GATEWAY=192.168.1.1 
USERCTL=no 
BOOTPROTO=none 
ONBOOT=yes
Step 2.
Modify eth0, eth1 and eth2 configuration as shown below. Comment out, or remove the ip address, netmask, gateway and hardware address from each one of these files, since settings should only come from the ifcfg-bond0 file above. Make sure you add the MASTER and SLAVE configuration in these files.
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 
BOOTPROTO=none 
ONBOOT=yes 
# Settings for Bond 
MASTER=bond0 
SLAVE=yes
# cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1 
BOOTPROTO=none  
ONBOOT=yes 
USERCTL=no 
# Settings for bonding 
MASTER=bond0 
SLAVE=yes
# cat /etc/sysconfig/network-scripts/ifcfg-eth2
DEVICE=eth2 
BOOTPROTO=none 
ONBOOT=yes 
MASTER=bond0 
SLAVE=yes
Step 3.
Set the parameters for bond0 bonding kernel module. Select the network bonding mode based on you need. The modes are
  • mode=0 (Balance Round Robin)
  • mode=1 (Active backup)
  • mode=2 (Balance XOR)
  • mode=3 (Broadcast)
  • mode=4 (802.3ad)
  • mode=5 (Balance TLB)
  • mode=6 (Balance ALB)
Add the following lines to /etc/modprobe.conf
# bonding commands 
alias bond0 bonding 
options bond0 mode=1 miimon=100
Step 4.
Load the bond driver module from the command prompt.
# modprobe bonding
Step 5.
Restart the network, or restart the computer.
# service network restart # Or restart computer
When the machine boots up check the proc settings.
# cat /proc/net/bonding/bond0 
Ethernet Channel Bonding Driver
Bonding Mode: adaptive load balancing 
Primary Slave: None 
Currently Active Slave: eth2 
MII Status: up 
MII Polling Interval (ms): 100 
Up Delay (ms): 0 
Down Delay (ms): 0
Slave Interface: eth2 
MII Status: up 
Link Failure Count: 0 
Permanent HW addr: 00:13:72:80: 62:f0
Look at ifconfig -a and check that your bond0 interface is active. You are done!.
To verify whether the failover bonding works..
  • Do an ifdown eth0 and check /proc/net/bonding/bond0 and check the “Current Active slave”.
  • Do a continuous ping to the bond0 ipaddress from a different machine and do a ifdown the active interface. The ping should not break.

Thursday, October 8, 2015

start netconsole

DUT:

modprobe netconsole netconsole=20000@10.192.193.105/br0,20000@10.192.193.26/00:25:90:52:03:74

local Ip and interface name, remote interface ip and mac


PEER:
nc -dul 20000 | tee t6fpga5.txt &

getting details on system freeze:



1) Please enable NMI watchdog in the BIOS settings.

2) Add below line to sysctl.conf
kernel.unknown_nmi_panic = 1

3) Append nmi_watchdog=1 to kernel command line

title Red Hat Enterprise Linux Server (2.6.18-128.el5)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-128.el5 ro root=/dev/sda nmi_watchdog=1
        initrd /initrd-2.6.18-128.el5.img

4) Enable kdump


5) Try to get the crash logs from netconsole or serial console.




Wednesday, September 16, 2015

virt-manager

Change default storage path:
virsh
pool-destroy default
pool-undefine default
pool-define-as --name default --type dir --target /rum/media/user1/partition1
pool-autostart default
pool-build default
pool-start default

Tuesday, September 8, 2015

workbench GUI

localhost:~ # cat .vnc/xstartup
#!/bin/sh

#xrdb $HOME/.Xresources
#xsetroot -solid grey
#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &

unset SESSION_MANAGER
 exec /etc/X11/xinit/xinitrc
xrdb $HOME/.Xresources
xsetroot -solid grey
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &

Monday, September 7, 2015

Mount CIFS/NFS

Mount Linux CIFS share

Mount CIFS with the default local filesystem permissions:
# mkdir /mnt/cifs
# mount -t cifs //server-name/share-name /mnt/cifs -o username=shareuser,password=sharepassword,domain=domname
# mount -t cifs //192.168.101.100/sales /mnt/cifs -o username=shareuser,password=sharepassword,domain=domname

OR
# mount.cifs //192.168.101.100/sales /mnt/cifs -o username=shareuser,password=sharepassword,domain=domname

Thursday, September 3, 2015

RHEL 7 CMDS

How to configure VLAN -
=====================
ip link add link ens4 name ens4.23 type vlan id 23
ip link set ens4.23 up
ip addr add 102.23.23.74/24 dev ens4.23
How to bring link up/down -
=========================
ip link set ens4 up
ip link set ens4 down
How to assign IP -
================
ip addr add 102.1.1.74/24 dev ens4
How to assign default gw -
========================
ip route add default via 10.192.192.1
How to change MTU -
=================
ip link set mtu 9000 dev ens4


IPV6:
-----
IPV6:
-----
Add:
ifconfig eth0 inet6 add 2000::31/64
ip -6 addr add 2000::31/64 dev eth0

Display:
ip -6 addr show dev eth0
ifconfig eth0 | grep "inet6 addr:"

Remove:
ip -6 addr del 2000::31/64 dev eth0
ifconfig eth0 inet6 del 2000::31/64

check routing table:
route -n -A inet6

[root@t6vnic1 ~]# route -n -A inet6
Kernel IPv6 routing table
Destination                                 Next Hop                                Flags Metric Ref    Use Iface
2000::/64                                   ::                                      U     256    0        0 eth5
fe80::/64                                   ::                                      U     256    0        0 eth3
fe80::/64                                   ::                                      U     256    0        0 eth5
::1/128                                     ::                                      U     0      5        1 lo
2000::31/128                                ::                                      U     0      1849       1 lo
fe80::211:22ff:fe33:ab56/128                ::                                      U     0      0        1 lo
fe80::444:abff:fecd:0/128                   ::                                      U     0      30       1 lo
ff00::/8                                    ::                                      U     256    0        0 eth3
ff00::/8                                    ::                                      U     256    0        0 eth5



[root@t6fpga5 ~]# cat /proc/net/if_inet6
00000000000000000000000000000001 01 80 10 80       lo
fe80000000000000022590fffeadddde 0e 40 20 80      br0
fe80000000000000022590fffeadddde 02 40 20 80     eth8
fe800000000000000444abfffecd0000 11 40 20 c8     eth2
fe800000000000003c0918fffe07592c 0c 40 20 80     tap3
fe80000000000000904021fffee7e2cb 0d 40 20 80     tap4
20000000000000000000000000000031 11 40 00 c8     eth2

[root@t6vnic1 ~]# ip -6 neigh show
fe80::207:43ff:fe12:4e50 dev eth5 lladdr 00:07:43:12:4e:50 STALE

2000::12 dev eth5 lladdr 00:07:43:12:4e:50 REACHABLE

sysctl -w net.ipv6.conf.all.accept_dad=0
sysctl -w net.ipv6.conf.eth2.accept_dad=0


then only assign ip and bring up the interface.

Monday, August 3, 2015

remote session with windbg

Either we can increase the user sessions Otherwise, trying this, Remote Debugging Using WinDbg

Thursday, July 30, 2015

enable debug

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter]
"DEFAULT"=dword:ffffffff

create users


    net localgroup administrators core96cn$i /add
    write-host "core96cn$i has been created"

Monday, July 6, 2015

diag

./seeprom_t5.pl -fvpd ../serial/vpdfilename.txt -f ../serial/filename.txt -setall

Wednesday, June 24, 2015

DNS setup

1. install role
2. create reverse lookup zone PTR record (browse and select forward lookup entry)

Friday, January 30, 2015

NetPIPE




Can you run the following data Integrity Test on XEN.

Server:
NPtcp -i -n 5 -u 888388609

Client:
NPtcp -i -h <Server IP> -n 5 -u 888388609

The NetPipe Source is at /home/sreekanth/tools/NetPIPE-3.7.1.tar.gz

Thursday, January 29, 2015

blast

blast:
-----

./btl.pl -s -t bl -n 200 -log -p 19000
./btl.pl -c -t bl -n 200 -fip 102.88.88.9 -log -p 19000
burst:
-----
On the DUT start 150 instances of burst 
# ./btl.pl -n 150 -p 3000 -log -t bu 

On the peer start 
# ./btl.pl -n 150 -p 3000 -fip <DUT ip> -log -t bu 


verification:
-----------
cat BSB_* | grep -i err


Blast Result:
-------------
Blast stopped because: Data Error.


Error detected.  Got a data error mismatch.
 

EPEL

yum --disablerepo="*" --enablerepo="epel" list available | less

Docker

Docker Image is basically a snapshot of file system at specific time can be used to create containers

1. Docker Installation:
   Install EPEL repositories to install docker
   yum install epel-release
   start docker service (service docker start)
   verify docker installed properly as below
   #docker version
   #docker info
   #ps faux

2. Creation of Docker Image:
   Create a script (Docker file) to create an image.
   We can get it from https://github.com/docker/docker/tree/master/contrib
   modify yum repo based on version we are trying to create docker image
   save the docker image using below command.
   docker save <id> > /tmp/centos65base.tar


  docker load < /root/centos65base.tar

3. Verification of image which we created
   #docker images
   #docker ps -all

[root@localhost ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
<none>              <none>              ed49ce70a44d        21 minutes ago      272.4 MB

[root@localhost ~]# docker tag ed49ce70a44d centos7base:7

[root@localhost ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
centos7base         7                   ed49ce70a44d        21 minutes ago      272.4 MB

4. Start the container from docker image as below. we can start from same machine or from other machine
#docker run -i -t ed49ce70a44d /bin/bash

In case if you exit from docker container
we need to below to get into container to re-connect.

docker start <container id>
docker attach <Container id>

do not exit from container, instead use  "ctrl +p and ctrl +q" to come to HOST system.

5. Commiting the changes that we made in container, when we commit new image gets created as below.
   [root@localhost ~]# docker commit 6d1b4d04bd5a centos7base-commit
   cea4e70c4bf833605ed06bb9fc60c722bf9870423633a93e5f0c030c7f7d4b8b

#docker images
REPOSITORY           TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
centos7base-commit   latest              cea4e70c4bf8        About a minute ago   272.9 MB
centos7base          7                   ed49ce70a44d        54 minutes ago       272.4 MB



[root@HOST ~]# docker run --device=/dev/sdb --net='host' --privileged=true -it ed49ce70a44d /bin/bash

[root@container /]# fdisk -l

Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes




$ DOCKER_NVIDIA_DEVICES="--device /dev/nvidia0:/dev/nvidia0 --device /dev/nvidiactl:/dev/nvidiactl --device /dev/nvidia-uvm:/dev/nvidia-uvm"
$ sudo docker run -ti $DOCKER_NVIDIA_DEVICES tleyden5iwx/ubuntu-cuda /bin/bash


PRIVILIZED CONTAINER:
=====================
has access to all the devices, instead of being restricted to a small, sane set of devices;
retains all the capabilities of the host. It means that this container will be able to mknod, mount, etc.




















Wednesday, January 28, 2015

VF


== System Requirements: ==


Enable the following in the BIOS:
BIOS -> Advanced -> Advanced Chipset Settings

Intel VT-d       [Enabled]
SR-IOV Supported [Enabled]
Intel I/OAT      [Enabled]

BIOS -> Advanced -> Configure advanced CPU settings

Intel(R) Virtualization Tech   [Enabled]

Note : If the “SR-IOV Supported” option is not there in the BIOS, the BIOS needs to be updated.
On SuperMicro X8 Motherboards, the BIOS Version needs to be >= 1.1a.
Supermicro X7 Motherboards won’t have the SR-IOV Option even if the BIOS is updated.




== Setting up KVM: ==


1.Install RHEL 6.x 64-bit OS.

2.Compile 3.6.11 kernel on the above machine. Use the following files for compilation:
  (a)Linux-3.6.11.tar.bz2 [wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.6.11.tar.bz2].
  (b).config file for the compilation[/home/sonyarpitad/vNIC_Conf/config_3.6.11].
3.After the 3.6.11 kernel is successfully compiled, make the following entry in the /boot/grub/menu.lst file and boot into 3.6.11 kernel:
 title Red Hat Enterprise Linux Server (3.6.11)
        root (hd0,0)
        kernel /vmlinuz-3.6.11 ro root=LABEL=/1 intel_iommu=on
        initrd /initrd-3.6.11.img
4.Boot into 3.6.11 Kernel and verify if Intel IOMMU is enabled using “dmesg | grep i iommu”. If IOMMU is not enabled, the Link won’t come up on the VMs.
5.Install “qemu-kvm-1.2.0.tar.gz” [/home/sonyarpitad/vNIC_Conf/qemu-kvm-1.2.0.tar.gz] package to enable qemu.

== Setting up VM: ==


1.Boot into 3.6.11 kernel.

2.Load the kvm and kvm-intel or kvm-amd
 Example:  #modprobe kvm allow_unsafe_assigned_interrupts=1
           #modprobe kvm-intel

3. Since kvm module gets loaded automatically due to dependency of kvm_intel on it, add this to a conf file under modprobe.d as below:
 # cat /etc/modprobe.d/kvm.conf
 Options kvm allow_unsafe_assigned_interrupts=1

4.Create disk image for the VM using the command:
       # qemu-img create -f qcow2 vdisk.img <size of disk image for VM>
        [example-- qemu-img create -f qcow2 vdisk.img 30G]



<u>'''NOTE'''</u>: User needs to follow the VNC configuration in case the he/she is working on a remote computer and not infront of the console of the Test computer.

== VNC Configuration: ==


1.Copy VNC configuration file[/home/sonyarpitad/vNIC_Conf/xstartup] to /root/.vnc/

2.Start VNCServer :
    # vncserver -geometry 1440x900 :1

3. After the VNC server is started, open a VNC session to work on the VMs. [Can use any VNCviewer]

== Installing OS on the VM: ==



1.Insert the CD or use ISO for the respective OS to be installed on the VM on the physical host.

2.(a)Execute the following command in a VNC session to bring up the VM while booting from a cd-rom:
          #qemu-system-x86_64 -hda vdisk.img -cdrom /dev/cdrom -boot d smp 2  -m 1024 &

     If the ISO image is available, copy it to the Physical Host and install the OS in VM using:
          #qemu-system-x86_64 -hda vdisk.img -cdrom <path to boot-media.iso> -boot d smp 2  -m 1024 &
                  where,
                      -hda  use 'file' as IDE hard disk image
                      -cdrom use 'file' as IDE cdrom image
                      - boot [order=drives][,once=drives][,menu=on|off]
                           'drives': floppy (a), hard disk (c), CD-ROM (d), network (n)
                      -smp n     set the number of CPUs to 'n' [default=1]
                      -m megs    set virtual RAM size to megs MB [default=128]
  (b)Once the VM boots up, install OS on it. Once it asks for reboot, press “Reboot” and when the VM comes up close the “QEMU” window and boot the VM using the following command:
          #qemu-system-x86_64 hda vdisk.img boot c smp 2 m 1024 net none &
            where,
                -net none  use it alone to have zero network devices
  (c)Complete the installation procedure and reboot the VM. Poweroff the VM.

3.Setting corporate network on the VM:
  (a)On the Physical host setup a bridge network.
     #brctl addbr br0
     #ifconfig eth0 0.0.0.0 up
     #brctl addif br0 eth0
     #ifconfig br0 <ip/netmask of the corporate interface>
   Add route- #route add default gw <IP address of gateway>
 (b)Start VM specifying a tap interface and a vitual nic.
     #qemu-system-x86_64 hda vdisk.img  -boot c smp 2 m 1024  -net nic,vlan=0,model=e1000 net tap,ifname=tap0,vlan=0,script=no &
 (c)While the VM is booting add the tap0 interface on the physical host to the bridge.
     #ifconfig tap0 up
     #brctl addif br0 tap0

== Bringing up the VM with T4 VF: ==


1.Load the cxgb4 driver on the Physical host specifying the VFs:
 # modprobe cxgb4 num_vf=w,x,y,z
 where w: number of VFs on PF0
       x: number of VFs on PF1  
       y: number of VFs on PF2
       z: number of VFs on PF3

2.Execute “lspci” on the host and note the PCI ID assigned to the VM [Example:04:01.1]

3.Power up the VM attaching the VF:
    # qemu-system-x86_64 hda vdisk.img  -boot c smp 2 m 1024  -net nic,vlan=0,model=e1000,mac=00:xx:yy:zz:ww:vv net tap,ifname=tap1,vlan=0,script=no pcidevice host=<PCI ID of the VF> &  
   
where xx,yy,zz,ww,vv are hex values

While the VM is booting add the tap0 interface to the bridge.
    #ifconfig tap1 up
    #brctl addif br0 tap1

4.When the VM is brought up, load the cxgb4vf driver.

5.Execute “ifconfig -a” to make sure that T4 VF is detected on the VM.

6.Bring up the VF: ifconfig ethX up

== Serial Console on VM:  ==


1. # qemu-system-x86_64 hda vdisk.img  -boot c smp 2 m 1024  -net nic,vlan=0,model=e1000,mac=00:xx:yy:zz:ww:vv net tap,ifname=tap1,vlan=0,script=no pcidevice host=<PCI ID of the VF>  -serial file:<dump-filename> &

2. On VM /boot/grub/menu.lst add the following entry:
console=ttyS0,115200

Refer: http://www.linux-kvm.org/page/Bugs







1.12.25 kernel.org
1.11.27.0 suse,rhel inbox

rmmod kvm_intel
rmmod kvm
modprobe kvm allow_unsafe_assigned_interrupts=1
modprobe kvm_intel
rmmod cxgb4
modprobe cxgb4 num_vf=4,0,0,0

. bridge.sh

qemu-system-x86_64 -smp 4 -m 4048 -hda /root/vnic/vdisks/vdisk_3_6_11.img -net nic,model=e1000,macaddr=00:11:22:33:44:55 -net tap,ifname=tap2,vlan=0,script=no,downscript=no -device pci-assign,host=03:01.0 &
ifconfig tap2 up
brctl addif br0 tap2


How to configure VLAN -
=====================
ip link add link ens4 name ens4.23 type vlan id 23
ip link set ens4.23 up
ip addr add 102.23.23.74/24 dev ens4.23

How to bring link up/down -
=========================
ip link set ens4 up
ip link set ens4 down

How to assign IP -
================
ip addr add 102.1.1.74/24 dev ens4

How to assign default gw -
========================
ip route add default via 10.192.192.1

How to change MTU -
=================
ip link set mtu 9000 dev ens4




VM IPs -
------
10.192.194.72/22
10.192.194.73/22
74
75

gw - 10.192.192.1








qemu-system-x86_64 -smp 4 -m 4048 -hda /root/vnic/vdisks/vdisk_3_6_11.img -net nic,model=e1000,macaddr=00:11:22:33:44:55 -net tap,ifname=tap2,vlan=0,script=no,downscript=no -device pci-assign,host=03:01.0 -device pci-assign,host=03:01.4 &
qemu-system-x86_64 -smp 4 -m 4048 -hda /root/vnic/vdisks/vdisk_3_6_11.img -net nic,model=e1000,macaddr=00:11:22:33:44:55 -net tap,ifname=tap2,vlan=0,script=no,downscript=no -device pci-assign,host=03:01.0 -device pci-assign,host=03:01.1 &

brctl addif br0 tap2
ifconfig tap2 up

logs:
=====
cat /sys/kernel/debug/cxgb4/0000\:03\:00.4/devlog > devlog
cat /sys/kernel/debug/cxgb4/0000\:03\:00.4/edc0 > edc0
cat /sys/kernel/debug/cxgb4/0000\:03\:00.4/edc1 > edc1
cat /sys/kernel/debug/cxgb4/0000\:03\:00.4/mc1 > mc1

qemu-system-x86_64 -smp 4 -m 4048 -hda /root/vnic/vdisks/vdisk_3_6_11.img -net nic,model=e1000,macaddr=00:11:22:33:44:55 -net tap,ifname=tap2,vlan=0,script=no,downscript=no -device pci-assign,host=03:01.0 &

ifconfig tap2 up
brctl addif br0 tap2


qemu-system-x86_64 -smp 4 -m 4048 -hda /root/vnic/vdisks/vdisk-RHEL7u1-Snapshot.img -net nic,model=e1000,macaddr=00:11:22:33:44:55 -net tap,ifname=tap3,vlan=0,script=no,downscript=no -device pci-assign,host=03:01.4 &

ifconfig tap3 up
brctl addif br0 tap3


fallocate -l2g junk

03:01:0
03:01:1

4
5

- - - -
01:0 0 1 2 3
4 5 6 7

02:0 - - - -
0 1 2 3
4 5 6 7


vf's of PF0| vf's of PF1






PPC8:
=====
3.17.8