Problems with axe(4) and checksum offloading

2013-04-07 Thread Spil Oss
Hi all,

With checksum offloading enabled I cannot use my axe NIC (ASIX AX88772B).

ifconfig ue0 -txcsum -rxcsum
will make dhclient ue0 return

if I re-enable txcsum and rxcsum I get an immediate response from the dhcp
server.

Tried to remove the csum features by commenting out
ifp->if_capabilities |= IFCAP_TXCSUM | IFCAP_RXCSUM;
ifp->if_hwassist = AXE_CSUM_FEATURES;
(lines 855 and 856 in /usr/src/sys/dev/usb/net/if_axe.c)
and rebuild the module. This does remove RXCSUM and TXCSUM from options and
behaves the same as disabling the features with ifconfig (i.e. does not
work)

10.0-CURRENT r248351

Hope someone can help me... Spil.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Problems with axe(4) and checksum offloading

2013-04-07 Thread YongHyeon PYUN
On Sun, Apr 07, 2013 at 09:14:16PM +0200, Spil Oss wrote:
> Hi all,
> 
> With checksum offloading enabled I cannot use my axe NIC (ASIX AX88772B).
> 
> ifconfig ue0 -txcsum -rxcsum
> will make dhclient ue0 return
> 
> if I re-enable txcsum and rxcsum I get an immediate response from the dhcp
> server.
> 
> Tried to remove the csum features by commenting out
> ifp->if_capabilities |= IFCAP_TXCSUM | IFCAP_RXCSUM;
> ifp->if_hwassist = AXE_CSUM_FEATURES;
> (lines 855 and 856 in /usr/src/sys/dev/usb/net/if_axe.c)
> and rebuild the module. This does remove RXCSUM and TXCSUM from options and
> behaves the same as disabling the features with ifconfig (i.e. does not
> work)
> 
> 10.0-CURRENT r248351
> 
> Hope someone can help me... Spil.

Last time I tried, checksum offloading worked as expected.
Would you show me the verbose dmesg output after attaching the
axe(4) NIC?
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Problems with axe(4) and checksum offloading

2013-04-08 Thread Spil Oss
Hi YongHyeon,

output from verbose boot

ugen3.2:  at usbus3
axe0:  on usbus3
axe0: PHYADDR 0xe0:0x10
miibus1:  on axe0
ukphy0:  PHY 16 on miibus1
ukphy0: OUI 0x007063, model 0x0008, rev. 1
ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto,
auto-flow
ue0:  on axe0
ue0: bpf attached
ue0: Ethernet address: 00:60:6e:42:5b:53
ue0: link state changed to UP
ue0: link state changed to DOWN
ue0: link state changed to UP

Apart from what I originally described...
Networking does work, but not when packets pass through ipfw and nat. If I
add my ipfw rules before the divert natd rule networking works as expected,
without the SYN,ACK response packets are not accepted if I e.g. connect to
something on the axe interface. I have validated the ipfw ruleset with the
onboard realtek NIC and it then works as expected.

# usbconfig -u 3 -a 2 dump_info
ugen3.2:  at usbus3, cfg=0 md=HOST spd=HIGH
(480Mbps) pwr=ON (200mA)

Kind regards,

Spil.


On Mon, Apr 8, 2013 at 8:35 AM, YongHyeon PYUN  wrote:

> On Sun, Apr 07, 2013 at 09:14:16PM +0200, Spil Oss wrote:
> > Hi all,
> >
> > With checksum offloading enabled I cannot use my axe NIC (ASIX AX88772B).
> >
> > ifconfig ue0 -txcsum -rxcsum
> > will make dhclient ue0 return
> >
> > if I re-enable txcsum and rxcsum I get an immediate response from the
> dhcp
> > server.
> >
> > Tried to remove the csum features by commenting out
> > ifp->if_capabilities |= IFCAP_TXCSUM | IFCAP_RXCSUM;
> > ifp->if_hwassist = AXE_CSUM_FEATURES;
> > (lines 855 and 856 in /usr/src/sys/dev/usb/net/if_axe.c)
> > and rebuild the module. This does remove RXCSUM and TXCSUM from options
> and
> > behaves the same as disabling the features with ifconfig (i.e. does not
> > work)
> >
> > 10.0-CURRENT r248351
> >
> > Hope someone can help me... Spil.
>
> Last time I tried, checksum offloading worked as expected.
> Would you show me the verbose dmesg output after attaching the
> axe(4) NIC?
>
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Problems with axe(4) and checksum offloading

2013-04-09 Thread YongHyeon PYUN
On Mon, Apr 08, 2013 at 08:45:58PM +0200, Spil Oss wrote:
> Hi YongHyeon,
> 
> output from verbose boot
> 
> ugen3.2:  at usbus3
> axe0:  on usbus3
> axe0: PHYADDR 0xe0:0x10
> miibus1:  on axe0
> ukphy0:  PHY 16 on miibus1
> ukphy0: OUI 0x007063, model 0x0008, rev. 1
> ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto,
> auto-flow
> ue0:  on axe0
> ue0: bpf attached
> ue0: Ethernet address: 00:60:6e:42:5b:53
> ue0: link state changed to UP
> ue0: link state changed to DOWN
> ue0: link state changed to UP

AX88772B engineering sample I have still worked on latest current.
Could you use a static IP rather than using DHCP and see whether
that makes any difference?(Note, you have to revert your changes
made to axe(4) before trying that).

Also show me the output of 'ifconfig ue0' before/after running
dhclient(8).

> 
> Apart from what I originally described...
> Networking does work, but not when packets pass through ipfw and nat. If I
> add my ipfw rules before the divert natd rule networking works as expected,
> without the SYN,ACK response packets are not accepted if I e.g. connect to
> something on the axe interface. I have validated the ipfw ruleset with the
> onboard realtek NIC and it then works as expected.
> 
> # usbconfig -u 3 -a 2 dump_info
> ugen3.2:  at usbus3, cfg=0 md=HOST spd=HIGH
> (480Mbps) pwr=ON (200mA)
> 
> Kind regards,
> 
> Spil.
> 
> 
> On Mon, Apr 8, 2013 at 8:35 AM, YongHyeon PYUN  wrote:
> 
> > On Sun, Apr 07, 2013 at 09:14:16PM +0200, Spil Oss wrote:
> > > Hi all,
> > >
> > > With checksum offloading enabled I cannot use my axe NIC (ASIX AX88772B).
> > >
> > > ifconfig ue0 -txcsum -rxcsum
> > > will make dhclient ue0 return
> > >
> > > if I re-enable txcsum and rxcsum I get an immediate response from the
> > dhcp
> > > server.
> > >
> > > Tried to remove the csum features by commenting out
> > > ifp->if_capabilities |= IFCAP_TXCSUM | IFCAP_RXCSUM;
> > > ifp->if_hwassist = AXE_CSUM_FEATURES;
> > > (lines 855 and 856 in /usr/src/sys/dev/usb/net/if_axe.c)
> > > and rebuild the module. This does remove RXCSUM and TXCSUM from options
> > and
> > > behaves the same as disabling the features with ifconfig (i.e. does not
> > > work)
> > >
> > > 10.0-CURRENT r248351
> > >
> > > Hope someone can help me... Spil.
> >
> > Last time I tried, checksum offloading worked as expected.
> > Would you show me the verbose dmesg output after attaching the
> > axe(4) NIC?
> >
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Problems with axe(4) and checksum offloading

2013-04-10 Thread Spil Oss
Hi YongHyeon,

With the original unmodified .ko...

ifconfig output as requested at bottom

Static IP-configuration does not make a difference with the ipfw behaviour.

ipfw ruleset (based on /etc/rc.firewall simple ruleset)
00010 allow ip from any to me dst-port 22 recv ue0
00010 allow tcp from me 22 to any xmit ue0
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
00400 deny ip from any to ::1
00500 deny ip from ::1 to any
00600 allow ipv6-icmp from :: to ff02::/16
00700 allow ipv6-icmp from fe80::/10 to fe80::/10
00800 allow ipv6-icmp from fe80::/10 to ff02::/16
00900 allow ipv6-icmp from any to any ip6 icmp6types 1
01000 allow ipv6-icmp from any to any ip6 icmp6types 2,135,136
01100 deny ip from 10.16.2.1 to any in via ue0
01200 deny ip from 172.17.2.111 to any in via re0
01300 deny ip from any to 10.0.0.0/8 via ue0
01500 deny ip from any to 192.168.0.0/16 via ue0
01600 deny ip from any to 0.0.0.0/8 via ue0
01700 deny ip from any to 169.254.0.0/16 via ue0
01800 deny ip from any to 192.0.2.0/24 via ue0
01900 deny ip from any to 224.0.0.0/4 via ue0
02000 deny ip from any to 240.0.0.0/4 via ue0
02100 divert 8668 ip4 from any to any via ue0
02200 deny ip from 10.0.0.0/8 to any via ue0
02400 deny ip from 192.168.0.0/16 to any via ue0
02500 deny ip from 0.0.0.0/8 to any via ue0
02600 deny ip from 169.254.0.0/16 to any via ue0
02700 deny ip from 192.0.2.0/24 to any via ue0
02800 deny ip from 224.0.0.0/4 to any via ue0
02900 deny ip from 240.0.0.0/4 to any via ue0
03000 allow tcp from any to any established
03100 allow ip from any to any frag
03200 allow tcp from any to me dst-port 22 setup
03300 allow tcp from any to me dst-port 25 setup
03400 allow tcp from any to me dst-port 465 setup
03500 allow tcp from any to me dst-port 587 setup
03600 allow tcp from any to me dst-port 80 setup
03700 allow tcp from any to me dst-port 443 setup
03800 deny log logamount 5 ip4 from any to any in via ue0 setup proto tcp
03900 allow tcp from any to any setup
04000 allow udp from me to any dst-port 53 keep-state
04100 allow udp from me to any dst-port 123 keep-state
04200 allow ip from any to any dst-port 22 recv ue0
65535 deny ip from any to any

If I remove rule 10 it will NOT work with ue0, the ruleset without rule 10
DOES work with re0.

Found an older PR about em or fxp having trouble with natd when
rxcsum/txcsum was enabled, that is why I started fiddling with
rxcsum/txcsum and found that the NIC would be unusable without
rxcsum/txcsum enabled. If only I could find that PR now (kern/170081???)...
Was fixed in base...

Some other post reported fake AX88772A chips (32-pin packaging vs 64 in the
original) on cheap USB NICs so I checked the hardware as well and could not
see an issue (64-pin packaging).

# ifconfig ue0
ue0: flags=8802 metric 0 mtu 1500
options=8000b
ether 00:60:6e:42:5b:53
nd6 options=21
media: Ethernet autoselect (100baseTX )
status: active

# dhclient ue0
DHCPDISCOVER on ue0 to 255.255.255.255 port 67 interval 4
DHCPOFFER from 172.17.2.1
DHCPREQUEST on ue0 to 255.255.255.255 port 67
DHCPACK from 172.17.2.1
bound to 172.17.2.111 -- renewal in 43200 seconds.

# ifconfig ue0
ue0: flags=8843 metric 0 mtu 1500
options=8000b
ether 00:60:6e:42:5b:53
inet6 fe80::260:6eff:fe42:5b53%ue0 prefixlen 64 scopeid 0x7
inet 172.17.2.111 netmask 0xff00 broadcast 172.17.2.255
nd6 options=21
media: Ethernet autoselect (100baseTX )
status: active




On Wed, Apr 10, 2013 at 4:14 AM, YongHyeon PYUN  wrote:

> On Mon, Apr 08, 2013 at 08:45:58PM +0200, Spil Oss wrote:
> > Hi YongHyeon,
> >
> > output from verbose boot
> >
> > ugen3.2:  at usbus3
> > axe0:  on usbus3
> > axe0: PHYADDR 0xe0:0x10
> > miibus1:  on axe0
> > ukphy0:  PHY 16 on miibus1
> > ukphy0: OUI 0x007063, model 0x0008, rev. 1
> > ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto,
> > auto-flow
> > ue0:  on axe0
> > ue0: bpf attached
> > ue0: Ethernet address: 00:60:6e:42:5b:53
> > ue0: link state changed to UP
> > ue0: link state changed to DOWN
> > ue0: link state changed to UP
>
> AX88772B engineering sample I have still worked on latest current.
> Could you use a static IP rather than using DHCP and see whether
> that makes any difference?(Note, you have to revert your changes
> made to axe(4) before trying that).
>
> Also show me the output of 'ifconfig ue0' before/after running
> dhclient(8).
>
> >
> > Apart from what I originally described...
> > Networking does work, but not when packets pass through ipfw and nat. If
> I
> > add my ipfw rules before the divert natd rule networking works as
> expected,
> > without the SYN,ACK response packets are not accepted if I e.g. connect
> to
> > something on the axe interface. I have validated the ipfw ruleset with
> the
> > onboard realtek NIC and it then works as expected.
> >
> > # usbconfig -u 3 -a 2 dump_info
> > ugen3.2:  at usbus3,

Re: Problems with axe(4) and checksum offloading

2013-04-10 Thread YongHyeon PYUN
On Wed, Apr 10, 2013 at 07:48:00PM +0200, Spil Oss wrote:
> Hi YongHyeon,
> 
> With the original unmodified .ko...
> 
> ifconfig output as requested at bottom
> 
> Static IP-configuration does not make a difference with the ipfw behaviour.
> 
> ipfw ruleset (based on /etc/rc.firewall simple ruleset)
> 00010 allow ip from any to me dst-port 22 recv ue0
> 00010 allow tcp from me 22 to any xmit ue0
> 00100 allow ip from any to any via lo0
> 00200 deny ip from any to 127.0.0.0/8
> 00300 deny ip from 127.0.0.0/8 to any
> 00400 deny ip from any to ::1
> 00500 deny ip from ::1 to any
> 00600 allow ipv6-icmp from :: to ff02::/16
> 00700 allow ipv6-icmp from fe80::/10 to fe80::/10
> 00800 allow ipv6-icmp from fe80::/10 to ff02::/16
> 00900 allow ipv6-icmp from any to any ip6 icmp6types 1
> 01000 allow ipv6-icmp from any to any ip6 icmp6types 2,135,136
> 01100 deny ip from 10.16.2.1 to any in via ue0
> 01200 deny ip from 172.17.2.111 to any in via re0
> 01300 deny ip from any to 10.0.0.0/8 via ue0
> 01500 deny ip from any to 192.168.0.0/16 via ue0
> 01600 deny ip from any to 0.0.0.0/8 via ue0
> 01700 deny ip from any to 169.254.0.0/16 via ue0
> 01800 deny ip from any to 192.0.2.0/24 via ue0
> 01900 deny ip from any to 224.0.0.0/4 via ue0
> 02000 deny ip from any to 240.0.0.0/4 via ue0
> 02100 divert 8668 ip4 from any to any via ue0
> 02200 deny ip from 10.0.0.0/8 to any via ue0
> 02400 deny ip from 192.168.0.0/16 to any via ue0
> 02500 deny ip from 0.0.0.0/8 to any via ue0
> 02600 deny ip from 169.254.0.0/16 to any via ue0
> 02700 deny ip from 192.0.2.0/24 to any via ue0
> 02800 deny ip from 224.0.0.0/4 to any via ue0
> 02900 deny ip from 240.0.0.0/4 to any via ue0
> 03000 allow tcp from any to any established
> 03100 allow ip from any to any frag
> 03200 allow tcp from any to me dst-port 22 setup
> 03300 allow tcp from any to me dst-port 25 setup
> 03400 allow tcp from any to me dst-port 465 setup
> 03500 allow tcp from any to me dst-port 587 setup
> 03600 allow tcp from any to me dst-port 80 setup
> 03700 allow tcp from any to me dst-port 443 setup
> 03800 deny log logamount 5 ip4 from any to any in via ue0 setup proto tcp
> 03900 allow tcp from any to any setup
> 04000 allow udp from me to any dst-port 53 keep-state
> 04100 allow udp from me to any dst-port 123 keep-state
> 04200 allow ip from any to any dst-port 22 recv ue0
> 65535 deny ip from any to any
> 
> If I remove rule 10 it will NOT work with ue0, the ruleset without rule 10
> DOES work with re0.
> 
> Found an older PR about em or fxp having trouble with natd when
> rxcsum/txcsum was enabled, that is why I started fiddling with
> rxcsum/txcsum and found that the NIC would be unusable without
> rxcsum/txcsum enabled. If only I could find that PR now (kern/170081???)...
> Was fixed in base...

If you don't use ipfw/natd, checksum offloading of axe(4) work?
If yes, you'd get better answer from ipfw mailing list.

> 
> Some other post reported fake AX88772A chips (32-pin packaging vs 64 in the
> original) on cheap USB NICs so I checked the hardware as well and could not

AX88772A does not support TX/RX checksum offloading.

> see an issue (64-pin packaging).
> 
> # ifconfig ue0
> ue0: flags=8802 metric 0 mtu 1500
> options=8000b
> ether 00:60:6e:42:5b:53
> nd6 options=21
> media: Ethernet autoselect (100baseTX )
> status: active
> 
> # dhclient ue0
> DHCPDISCOVER on ue0 to 255.255.255.255 port 67 interval 4
> DHCPOFFER from 172.17.2.1
> DHCPREQUEST on ue0 to 255.255.255.255 port 67
> DHCPACK from 172.17.2.1
> bound to 172.17.2.111 -- renewal in 43200 seconds.
> 
> # ifconfig ue0
> ue0: flags=8843 metric 0 mtu 1500
> options=8000b
> ether 00:60:6e:42:5b:53
> inet6 fe80::260:6eff:fe42:5b53%ue0 prefixlen 64 scopeid 0x7
> inet 172.17.2.111 netmask 0xff00 broadcast 172.17.2.255
> nd6 options=21
> media: Ethernet autoselect (100baseTX )
> status: active

I can see TX/RX checksum offloading is active and it successfully
got a IP address via DHCP.

> 
> 
> 
> 
> On Wed, Apr 10, 2013 at 4:14 AM, YongHyeon PYUN  wrote:
> 
> > On Mon, Apr 08, 2013 at 08:45:58PM +0200, Spil Oss wrote:
> > > Hi YongHyeon,
> > >
> > > output from verbose boot
> > >
> > > ugen3.2:  at usbus3
> > > axe0:  on usbus3
> > > axe0: PHYADDR 0xe0:0x10
> > > miibus1:  on axe0
> > > ukphy0:  PHY 16 on miibus1
> > > ukphy0: OUI 0x007063, model 0x0008, rev. 1
> > > ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto,
> > > auto-flow
> > > ue0:  on axe0
> > > ue0: bpf attached
> > > ue0: Ethernet address: 00:60:6e:42:5b:53
> > > ue0: link state changed to UP
> > > ue0: link state changed to DOWN
> > > ue0: link state changed to UP
> >
> > AX88772B engineering sample I have still worked on latest current.
> > Could you use a static IP rather than using DHCP and see whether
> > that makes any difference?(Note, you have to revert your changes
> > made to axe(4) before trying that).
> >
> > 

Re: Problems with axe(4) and checksum offloading

2013-04-13 Thread Spil Oss
Hi YongHyeon,

Will post on freebsd-ipfw@ as well...

Does your engineering sample function normally with rxcsum/txcsum disabled?

Kind regards,

Spil.


On Thu, Apr 11, 2013 at 3:11 AM, YongHyeon PYUN  wrote:

> On Wed, Apr 10, 2013 at 07:48:00PM +0200, Spil Oss wrote:
> > Hi YongHyeon,
> >
> > With the original unmodified .ko...
> >
> > ifconfig output as requested at bottom
> >
> > Static IP-configuration does not make a difference with the ipfw
> behaviour.
> >
> > ipfw ruleset (based on /etc/rc.firewall simple ruleset)
> > 00010 allow ip from any to me dst-port 22 recv ue0
> > 00010 allow tcp from me 22 to any xmit ue0
> > 00100 allow ip from any to any via lo0
> > 00200 deny ip from any to 127.0.0.0/8
> > 00300 deny ip from 127.0.0.0/8 to any
> > 00400 deny ip from any to ::1
> > 00500 deny ip from ::1 to any
> > 00600 allow ipv6-icmp from :: to ff02::/16
> > 00700 allow ipv6-icmp from fe80::/10 to fe80::/10
> > 00800 allow ipv6-icmp from fe80::/10 to ff02::/16
> > 00900 allow ipv6-icmp from any to any ip6 icmp6types 1
> > 01000 allow ipv6-icmp from any to any ip6 icmp6types 2,135,136
> > 01100 deny ip from 10.16.2.1 to any in via ue0
> > 01200 deny ip from 172.17.2.111 to any in via re0
> > 01300 deny ip from any to 10.0.0.0/8 via ue0
> > 01500 deny ip from any to 192.168.0.0/16 via ue0
> > 01600 deny ip from any to 0.0.0.0/8 via ue0
> > 01700 deny ip from any to 169.254.0.0/16 via ue0
> > 01800 deny ip from any to 192.0.2.0/24 via ue0
> > 01900 deny ip from any to 224.0.0.0/4 via ue0
> > 02000 deny ip from any to 240.0.0.0/4 via ue0
> > 02100 divert 8668 ip4 from any to any via ue0
> > 02200 deny ip from 10.0.0.0/8 to any via ue0
> > 02400 deny ip from 192.168.0.0/16 to any via ue0
> > 02500 deny ip from 0.0.0.0/8 to any via ue0
> > 02600 deny ip from 169.254.0.0/16 to any via ue0
> > 02700 deny ip from 192.0.2.0/24 to any via ue0
> > 02800 deny ip from 224.0.0.0/4 to any via ue0
> > 02900 deny ip from 240.0.0.0/4 to any via ue0
> > 03000 allow tcp from any to any established
> > 03100 allow ip from any to any frag
> > 03200 allow tcp from any to me dst-port 22 setup
> > 03300 allow tcp from any to me dst-port 25 setup
> > 03400 allow tcp from any to me dst-port 465 setup
> > 03500 allow tcp from any to me dst-port 587 setup
> > 03600 allow tcp from any to me dst-port 80 setup
> > 03700 allow tcp from any to me dst-port 443 setup
> > 03800 deny log logamount 5 ip4 from any to any in via ue0 setup proto tcp
> > 03900 allow tcp from any to any setup
> > 04000 allow udp from me to any dst-port 53 keep-state
> > 04100 allow udp from me to any dst-port 123 keep-state
> > 04200 allow ip from any to any dst-port 22 recv ue0
> > 65535 deny ip from any to any
> >
> > If I remove rule 10 it will NOT work with ue0, the ruleset without rule
> 10
> > DOES work with re0.
> >
> > Found an older PR about em or fxp having trouble with natd when
> > rxcsum/txcsum was enabled, that is why I started fiddling with
> > rxcsum/txcsum and found that the NIC would be unusable without
> > rxcsum/txcsum enabled. If only I could find that PR now
> (kern/170081???)...
> > Was fixed in base...
>
> If you don't use ipfw/natd, checksum offloading of axe(4) work?
> If yes, you'd get better answer from ipfw mailing list.
>
> >
> > Some other post reported fake AX88772A chips (32-pin packaging vs 64 in
> the
> > original) on cheap USB NICs so I checked the hardware as well and could
> not
>
> AX88772A does not support TX/RX checksum offloading.
>
> > see an issue (64-pin packaging).
> >
> > # ifconfig ue0
> > ue0: flags=8802 metric 0 mtu 1500
> > options=8000b
> > ether 00:60:6e:42:5b:53
> > nd6 options=21
> > media: Ethernet autoselect (100baseTX )
> > status: active
> >
> > # dhclient ue0
> > DHCPDISCOVER on ue0 to 255.255.255.255 port 67 interval 4
> > DHCPOFFER from 172.17.2.1
> > DHCPREQUEST on ue0 to 255.255.255.255 port 67
> > DHCPACK from 172.17.2.1
> > bound to 172.17.2.111 -- renewal in 43200 seconds.
> >
> > # ifconfig ue0
> > ue0: flags=8843 metric 0 mtu 1500
> > options=8000b
> > ether 00:60:6e:42:5b:53
> > inet6 fe80::260:6eff:fe42:5b53%ue0 prefixlen 64 scopeid 0x7
> > inet 172.17.2.111 netmask 0xff00 broadcast 172.17.2.255
> > nd6 options=21
> > media: Ethernet autoselect (100baseTX )
> > status: active
>
> I can see TX/RX checksum offloading is active and it successfully
> got a IP address via DHCP.
>
> >
> >
> >
> >
> > On Wed, Apr 10, 2013 at 4:14 AM, YongHyeon PYUN 
> wrote:
> >
> > > On Mon, Apr 08, 2013 at 08:45:58PM +0200, Spil Oss wrote:
> > > > Hi YongHyeon,
> > > >
> > > > output from verbose boot
> > > >
> > > > ugen3.2:  at usbus3
> > > > axe0:  on usbus3
> > > > axe0: PHYADDR 0xe0:0x10
> > > > miibus1:  on axe0
> > > > ukphy0:  PHY 16 on miibus1
> > > > ukphy0: OUI 0x007063, model 0x0008, rev. 1
> > > > ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto,
> > > > auto-flow
> > > > ue0:  on a

Re: Problems with axe(4) and checksum offloading

2013-04-14 Thread YongHyeon PYUN
On Sat, Apr 13, 2013 at 03:25:11PM +0200, Spil Oss wrote:
> Hi YongHyeon,
> 
> Will post on freebsd-ipfw@ as well...
> 
> Does your engineering sample function normally with rxcsum/txcsum disabled?

Yes.

> 
> Kind regards,
> 
> Spil.
> 
> 
> On Thu, Apr 11, 2013 at 3:11 AM, YongHyeon PYUN  wrote:
> 
> > On Wed, Apr 10, 2013 at 07:48:00PM +0200, Spil Oss wrote:
> > > Hi YongHyeon,
> > >
> > > With the original unmodified .ko...
> > >
> > > ifconfig output as requested at bottom
> > >
> > > Static IP-configuration does not make a difference with the ipfw
> > behaviour.
> > >
> > > ipfw ruleset (based on /etc/rc.firewall simple ruleset)
> > > 00010 allow ip from any to me dst-port 22 recv ue0
> > > 00010 allow tcp from me 22 to any xmit ue0
> > > 00100 allow ip from any to any via lo0
> > > 00200 deny ip from any to 127.0.0.0/8
> > > 00300 deny ip from 127.0.0.0/8 to any
> > > 00400 deny ip from any to ::1
> > > 00500 deny ip from ::1 to any
> > > 00600 allow ipv6-icmp from :: to ff02::/16
> > > 00700 allow ipv6-icmp from fe80::/10 to fe80::/10
> > > 00800 allow ipv6-icmp from fe80::/10 to ff02::/16
> > > 00900 allow ipv6-icmp from any to any ip6 icmp6types 1
> > > 01000 allow ipv6-icmp from any to any ip6 icmp6types 2,135,136
> > > 01100 deny ip from 10.16.2.1 to any in via ue0
> > > 01200 deny ip from 172.17.2.111 to any in via re0
> > > 01300 deny ip from any to 10.0.0.0/8 via ue0
> > > 01500 deny ip from any to 192.168.0.0/16 via ue0
> > > 01600 deny ip from any to 0.0.0.0/8 via ue0
> > > 01700 deny ip from any to 169.254.0.0/16 via ue0
> > > 01800 deny ip from any to 192.0.2.0/24 via ue0
> > > 01900 deny ip from any to 224.0.0.0/4 via ue0
> > > 02000 deny ip from any to 240.0.0.0/4 via ue0
> > > 02100 divert 8668 ip4 from any to any via ue0
> > > 02200 deny ip from 10.0.0.0/8 to any via ue0
> > > 02400 deny ip from 192.168.0.0/16 to any via ue0
> > > 02500 deny ip from 0.0.0.0/8 to any via ue0
> > > 02600 deny ip from 169.254.0.0/16 to any via ue0
> > > 02700 deny ip from 192.0.2.0/24 to any via ue0
> > > 02800 deny ip from 224.0.0.0/4 to any via ue0
> > > 02900 deny ip from 240.0.0.0/4 to any via ue0
> > > 03000 allow tcp from any to any established
> > > 03100 allow ip from any to any frag
> > > 03200 allow tcp from any to me dst-port 22 setup
> > > 03300 allow tcp from any to me dst-port 25 setup
> > > 03400 allow tcp from any to me dst-port 465 setup
> > > 03500 allow tcp from any to me dst-port 587 setup
> > > 03600 allow tcp from any to me dst-port 80 setup
> > > 03700 allow tcp from any to me dst-port 443 setup
> > > 03800 deny log logamount 5 ip4 from any to any in via ue0 setup proto tcp
> > > 03900 allow tcp from any to any setup
> > > 04000 allow udp from me to any dst-port 53 keep-state
> > > 04100 allow udp from me to any dst-port 123 keep-state
> > > 04200 allow ip from any to any dst-port 22 recv ue0
> > > 65535 deny ip from any to any
> > >
> > > If I remove rule 10 it will NOT work with ue0, the ruleset without rule
> > 10
> > > DOES work with re0.
> > >
> > > Found an older PR about em or fxp having trouble with natd when
> > > rxcsum/txcsum was enabled, that is why I started fiddling with
> > > rxcsum/txcsum and found that the NIC would be unusable without
> > > rxcsum/txcsum enabled. If only I could find that PR now
> > (kern/170081???)...
> > > Was fixed in base...
> >
> > If you don't use ipfw/natd, checksum offloading of axe(4) work?
> > If yes, you'd get better answer from ipfw mailing list.
> >
> > >
> > > Some other post reported fake AX88772A chips (32-pin packaging vs 64 in
> > the
> > > original) on cheap USB NICs so I checked the hardware as well and could
> > not
> >
> > AX88772A does not support TX/RX checksum offloading.
> >
> > > see an issue (64-pin packaging).
> > >
> > > # ifconfig ue0
> > > ue0: flags=8802 metric 0 mtu 1500
> > > options=8000b
> > > ether 00:60:6e:42:5b:53
> > > nd6 options=21
> > > media: Ethernet autoselect (100baseTX )
> > > status: active
> > >
> > > # dhclient ue0
> > > DHCPDISCOVER on ue0 to 255.255.255.255 port 67 interval 4
> > > DHCPOFFER from 172.17.2.1
> > > DHCPREQUEST on ue0 to 255.255.255.255 port 67
> > > DHCPACK from 172.17.2.1
> > > bound to 172.17.2.111 -- renewal in 43200 seconds.
> > >
> > > # ifconfig ue0
> > > ue0: flags=8843 metric 0 mtu 1500
> > > options=8000b
> > > ether 00:60:6e:42:5b:53
> > > inet6 fe80::260:6eff:fe42:5b53%ue0 prefixlen 64 scopeid 0x7
> > > inet 172.17.2.111 netmask 0xff00 broadcast 172.17.2.255
> > > nd6 options=21
> > > media: Ethernet autoselect (100baseTX )
> > > status: active
> >
> > I can see TX/RX checksum offloading is active and it successfully
> > got a IP address via DHCP.
> >
> > >
> > >
> > >
> > >
> > > On Wed, Apr 10, 2013 at 4:14 AM, YongHyeon PYUN 
> > wrote:
> > >
> > > > On Mon, Apr 08, 2013 at 08:45:58PM +0200, Spil Oss wrote:
> > > > > Hi YongHyeon,
> > > > >
> > > > > output from verb