Re: ifconfig-i386 on 8-STABLE/amd64

2010-04-16 Thread John Baldwin
On Thursday 15 April 2010 8:06:02 pm Jonathan Chen wrote:
 On Thu, Apr 15, 2010 at 04:12:11PM -0700, Xin LI wrote:
  Hi,
  
  On Thu, Apr 15, 2010 at 2:59 PM, Jonathan Chen j...@chen.org.nz wrote:
   ?? ??$ /compat/i386/sbin/ifconfig
   ?? ??: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST
   ?? ?? ?? ??inet 192.168.1.10 netmask 0xff00 broadcast 192.168.1.255
   ?? ?? ?? ??inet 192.168.1.11 netmask 0x broadcast 192.168.1.11
   ?? ?? ?? ??inet 192.168.2.1 netmask 0xff00 broadcast 192.168.2.255
   ?? ?? ?? ??inet 192.168.2.10 netmask 0x broadcast 192.168.2.10
   ?? ?? ?? ??inet 192.168.2.12 netmask 0x broadcast 192.168.2.12
   ?? ?? ?? ??inet 127.0.0.1 netmask 0xff00
   ?? ??ifconfig: ioctl(SIOCGIFINFO_IN6): Device not configured
  
   Why is the output from the 32-bit ifconfig severely mangled?
  
  My understanding is that 32-bit management tools like ifconfig is not
  supported on 64-bit FreeBSD.  Someone has to sit down and write a
  compatibility layer for translating back and forth :(
 
 Ah. The reason I ask is because wine's (32-bit) network-i/f iteration code
 is breaking when running under amd64. It uses code similar to
 ifconfig's to determine available network interfaces. I didn't expect
 the read-only interface would break when crossing the 32 to 64 barrier.

You could patch the kernel backend to support 32-bit processes, it's just a 
bit of work to do so.  Can you find the specific sysctl or syscall that wine 
is invoking?  You can then just fix that handler to support 32-bit processes 
which should fix wine.

-- 
John Baldwin
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


ifconfig-i386 on 8-STABLE/amd64

2010-04-15 Thread Jonathan Chen
Hi,

I've got a 32-bit build on a 8-STABLE/amd64 machine, built using
instructions at:

http://wiki.freebsd.org/Wine#head-6963d527c173e57b1567e881305b544d33435b6d

And I'm noticing some odd output from ifconfig (commands are run from
the non-chrooted env):

$ /sbin/ifconfig
xl0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 1500
options=8VLAN_MTU
ether 00:60:97:a4:7f:82
inet 192.168.1.10 netmask 0xff00 broadcast 192.168.1.255
inet 192.168.1.11 netmask 0x broadcast 192.168.1.11
media: Ethernet autoselect (100baseTX full-duplex)
status: active
fwe0: flags=8802BROADCAST,SIMPLEX,MULTICAST metric 0 mtu 1500
options=8VLAN_MTU
ether 02:1d:7d:f0:67:8b
ch 1 dma -1
fwip0: flags=8802BROADCAST,SIMPLEX,MULTICAST metric 0 mtu 1500
lladdr 0.1d.7d.0.0.f0.67.8b.a.2.ff.fe.0.0.0.0
re0: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST metric 0 mtu 1500

options=389bRXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC
ether 00:1d:7d:9d:3f:1f
inet 192.168.2.1 netmask 0xff00 broadcast 192.168.2.255
inet 192.168.2.10 netmask 0x broadcast 192.168.2.10
inet 192.168.2.12 netmask 0x broadcast 192.168.2.12
media: Ethernet autoselect (none)
status: no carrier
plip0: flags=8810POINTOPOINT,SIMPLEX,MULTICAST metric 0 mtu 1500
ipfw0: flags=8801UP,SIMPLEX,MULTICAST metric 0 mtu 65536
lo0: flags=8049UP,LOOPBACK,RUNNING,MULTICAST metric 0 mtu 16384
options=3RXCSUM,TXCSUM
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x7 
inet6 ::1 prefixlen 128 
inet 127.0.0.1 netmask 0xff00 
nd6 options=3PERFORMNUD,ACCEPT_RTADV

$ /compat/i386/sbin/ifconfig
: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST
inet 192.168.1.10 netmask 0xff00 broadcast 192.168.1.255
inet 192.168.1.11 netmask 0x broadcast 192.168.1.11
inet 192.168.2.1 netmask 0xff00 broadcast 192.168.2.255
inet 192.168.2.10 netmask 0x broadcast 192.168.2.10
inet 192.168.2.12 netmask 0x broadcast 192.168.2.12
inet 127.0.0.1 netmask 0xff00 
ifconfig: ioctl(SIOCGIFINFO_IN6): Device not configured

Why is the output from the 32-bit ifconfig severely mangled?

Cheers.
-- 
Jonathan Chen j...@chen.org.nz
---
I love deadlines. I like the whooshing sound they make as they fly by
- Douglas Adams
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


Re: ifconfig-i386 on 8-STABLE/amd64

2010-04-15 Thread Xin LI
Hi,

On Thu, Apr 15, 2010 at 2:59 PM, Jonathan Chen j...@chen.org.nz wrote:
    $ /compat/i386/sbin/ifconfig
    : flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST
        inet 192.168.1.10 netmask 0xff00 broadcast 192.168.1.255
        inet 192.168.1.11 netmask 0x broadcast 192.168.1.11
        inet 192.168.2.1 netmask 0xff00 broadcast 192.168.2.255
        inet 192.168.2.10 netmask 0x broadcast 192.168.2.10
        inet 192.168.2.12 netmask 0x broadcast 192.168.2.12
        inet 127.0.0.1 netmask 0xff00
    ifconfig: ioctl(SIOCGIFINFO_IN6): Device not configured

 Why is the output from the 32-bit ifconfig severely mangled?

My understanding is that 32-bit management tools like ifconfig is not
supported on 64-bit FreeBSD.  Someone has to sit down and write a
compatibility layer for translating back and forth :(

Cheers,
--
Xin LI delp...@delphij.net http://www.delphij.net
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


Re: ifconfig-i386 on 8-STABLE/amd64

2010-04-15 Thread Jonathan Chen
On Thu, Apr 15, 2010 at 04:12:11PM -0700, Xin LI wrote:
 Hi,
 
 On Thu, Apr 15, 2010 at 2:59 PM, Jonathan Chen j...@chen.org.nz wrote:
  ?? ??$ /compat/i386/sbin/ifconfig
  ?? ??: flags=8843UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST
  ?? ?? ?? ??inet 192.168.1.10 netmask 0xff00 broadcast 192.168.1.255
  ?? ?? ?? ??inet 192.168.1.11 netmask 0x broadcast 192.168.1.11
  ?? ?? ?? ??inet 192.168.2.1 netmask 0xff00 broadcast 192.168.2.255
  ?? ?? ?? ??inet 192.168.2.10 netmask 0x broadcast 192.168.2.10
  ?? ?? ?? ??inet 192.168.2.12 netmask 0x broadcast 192.168.2.12
  ?? ?? ?? ??inet 127.0.0.1 netmask 0xff00
  ?? ??ifconfig: ioctl(SIOCGIFINFO_IN6): Device not configured
 
  Why is the output from the 32-bit ifconfig severely mangled?
 
 My understanding is that 32-bit management tools like ifconfig is not
 supported on 64-bit FreeBSD.  Someone has to sit down and write a
 compatibility layer for translating back and forth :(

Ah. The reason I ask is because wine's (32-bit) network-i/f iteration code
is breaking when running under amd64. It uses code similar to
ifconfig's to determine available network interfaces. I didn't expect
the read-only interface would break when crossing the 32 to 64 barrier.

Thanks for the analysis.
-- 
Jonathan Chen j...@chen.org.nz
--
 In mathematics you don't understand things.
   You just get used to them.
 - Johann von Neumann
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org