All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] FreeBSD port update, FreeSBIE, X, more slirp dhcp problems...
@ 2004-06-05  1:35 Juergen Lock
  2004-06-05  8:40 ` Fabrice Bellard
  0 siblings, 1 reply; 3+ messages in thread
From: Juergen Lock @ 2004-06-05  1:35 UTC (permalink / raw)
  To: qemu-devel

I have updated the FreeBSD port to tonight's snapshot, the update
can be fetched here:
	http://www.freebsd.org/cgi/query-pr.cgi?pr=67583&f=raw

 With slirp dhcp still doesn't work for a FreeSBIE guest, I have
to manually configure the network (see the pkg-message patch in
the port update).  After doing that it works tho.

 Also, X doesn't work on FreeSBIE (I think I said that already),
when I try to start X (xinit) I get:
	Fatal server error:
	Caught signal 11
(11 is SIGSEGV)

 This time i scp'd the XFree86.0.log out of the guest in case it
helps (see below), at least that
	(II) VESA(0): VESA VBE Total Mem: 0 kB
looks suspicious...

	Juergen

This is a pre-release version of XFree86, and is not supported in any
way.  Bugs may be reported to XFree86@XFree86.Org and patches submitted
to fixes@XFree86.Org.  Before reporting bugs in pre-release versions,
please check the latest version in the XFree86 CVS repository
(http://www.XFree86.Org/cvs).

XFree86 Version 4.3.99.15
Release Date:  1 November 2003
X Protocol Version 11, Revision 0, Release 6.6
Build Operating System: FreeBSD 5.2.1 i386 [ELF] 
Current Operating System: FreeBSD FreeSBIE.LiveCD 5.2.1-RELEASE FreeBSD 5.2.1-RELEASE #1: Tue Feb 24 17:06:31 CET 2004     root@nathan:/usr/obj/usr/src/sys/FREESBIE i386
Build Date: 13 February 2004
Changelog Date: 02 November 2003
	Before reporting problems, check http://www.XFree86.Org/
	to make sure that you have the latest version.
Module Loader present
Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/XFree86.0.log", Time: Sat Jun  5 01:03:57 2004
(==) Using config file: "/etc/X11/XF86Config"
(==) ServerLayout "Layout0"
(**) |-->Screen "Screen0" (0)
(**) |   |-->Monitor "Monitor0"
(**) |   |-->Device "Card0"
(**) |-->Input Device "Keyboard0"
(**) Option "XkbModel" "pc105"
(**) XKB: model: "pc105"
(**) Option "XkbLayout" "de"
(**) XKB: layout: "de"
(==) Keyboard: CustomKeycode disabled
(**) |-->Input Device "Mouse0"
(**) FontPath set to "/usr/X11R6/lib/X11/fonts/misc/,/usr/X11R6/lib/X11/fonts/Type1/,/usr/X11R6/lib/X11/fonts/75dpi/,/usr/X11R6/lib/X11/fonts/100dpi/,/usr/X11R6/lib/X11/fonts/bitstream-vera/"
(**) RgbPath set to "/usr/X11R6/lib/X11/rgb"
(**) ModulePath set to "/usr/X11R6/lib/modules"
(II) Module ABI versions:
	XFree86 ANSI C Emulation: 0.2
	XFree86 Video Driver: 0.7
	XFree86 XInput driver : 0.4
	XFree86 Server Extension : 0.2
	XFree86 Font Renderer : 0.4
(II) Loader running on freebsd
(II) LoadModule: "bitmap"
(II) Loading /usr/X11R6/lib/modules/fonts/libbitmap.a
(II) Module bitmap: vendor="The XFree86 Project"
	compiled for 4.3.99.15, module version = 1.0.0
	Module class: XFree86 Font Renderer
	ABI class: XFree86 Font Renderer, version 0.4
(II) Loading font Bitmap
(II) LoadModule: "pcidata"
(II) Loading /usr/X11R6/lib/modules/libpcidata.a
(II) Module pcidata: vendor="The XFree86 Project"
	compiled for 4.3.99.15, module version = 1.0.0
	ABI class: XFree86 Video Driver, version 0.7
(--) Using syscons driver with X support (version 2.0)
(--) using VT number 9

(II) PCI: Probing config type using method 1
(II) PCI: Config type is 1
(II) PCI: stages = 0x03, oldVal1 = 0x00000000, mode1Res1 = 0x80000000
(II) PCI: PCI scan (all values are in hex)
(II) PCI: 00:00:0: chip 8086,1237 card 0000,0000 rev 02 class 06,04,00 hdr 01
(II) PCI: 00:01:0: chip 8086,7000 card 0000,0000 rev 00 class 06,01,00 hdr 80
(II) PCI: 00:01:1: chip 8086,7010 card 0000,0000 rev 00 class 01,01,00 hdr 00
(II) PCI: 00:02:0: chip 1234,1111 card 0000,0000 rev 00 class 03,00,00 hdr 00
(II) PCI: 00:03:0: chip 10ec,8029 card 0000,0000 rev 00 class 02,00,00 hdr 00
(II) PCI: End of PCI scan
(WW) Misconfigured PCI bridge 0:0:0 (0,0)
(II) PCI-to-ISA bridge:
(II) Bus -1: bridge is at (0:1:0), (0,-1,-1), BCTRL: 0x0008 (VGA_EN is set)
(II) Host-to-PCI bridge:
(II) Bus 0: bridge is at (0:0:0), (0,0,0), BCTRL: 0x0008 (VGA_EN is set)
(II) Bus 0 I/O range:
	[0] -1	0	0x00000000 - 0x0000ffff (0x10000) IX[B]
(II) Bus 0 non-prefetchable memory range:
	[0] -1	0	0x00000000 - 0xffffffff (0x0) MX[B]
(II) Bus 0 prefetchable memory range:
	[0] -1	0	0x00000000 - 0xffffffff (0x0) MX[B]
(--) PCI:*(0:2:0) unknown vendor (0x1234) unknown chipset (0x1111) rev 0, Mem @ 0xe0000000/22
(II) Addressable bus resource ranges are
	[0] -1	0	0x00000000 - 0xffffffff (0x0) MX[B]
	[1] -1	0	0x00000000 - 0x0000ffff (0x10000) IX[B]
(II) OS-reported resource ranges:
	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
	[5] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
	[6] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
(II) Active PCI resource ranges:
	[0] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
	[1] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
(II) Active PCI resource ranges after removing overlaps:
	[0] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
	[1] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
(II) OS-reported resource ranges after removing overlaps with PCI:
	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
	[5] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
	[6] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
(II) All system resource ranges:
	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
	[5] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
	[6] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
	[7] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
	[8] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
(II) LoadModule: "extmod"
(II) Loading /usr/X11R6/lib/modules/extensions/libextmod.a
(II) Module extmod: vendor="The XFree86 Project"
	compiled for 4.3.99.15, module version = 1.0.0
	Module class: XFree86 Server Extension
	ABI class: XFree86 Server Extension, version 0.2
(II) Loading extension SHAPE
(II) Loading extension MIT-SUNDRY-NONSTANDARD
(II) Loading extension BIG-REQUESTS
(II) Loading extension SYNC
(II) Loading extension MIT-SCREEN-SAVER
(II) Loading extension XC-MISC
(II) Loading extension XFree86-VidModeExtension
(II) Loading extension XFree86-Misc
(II) Loading extension XFree86-DGA
(II) Loading extension DPMS
(II) Loading extension FontCache
(II) Loading extension TOG-CUP
(II) Loading extension Extended-Visual-Information
(II) Loading extension XVideo
(II) Loading extension XVideo-MotionCompensation
(II) Loading extension X-Resource
(II) LoadModule: "vesa"
(II) Loading /usr/X11R6/lib/modules/drivers/vesa_drv.o
(II) Module vesa: vendor="The XFree86 Project"
	compiled for 4.3.99.15, module version = 1.0.0
	Module class: XFree86 Video Driver
	ABI class: XFree86 Video Driver, version 0.7
(II) LoadModule: "mouse"
(II) Loading /usr/X11R6/lib/modules/input/mouse_drv.o
(II) Module mouse: vendor="The XFree86 Project"
	compiled for 4.3.99.15, module version = 1.0.0
	Module class: XFree86 XInput Driver
	ABI class: XFree86 XInput driver, version 0.4
(II) VESA: driver for VESA chipsets: vesa
(II) Primary Device is: PCI 00:02:0
(--) Assigning device section with no busID to primary device
(--) Chipset vesa found
(II) resource ranges after xf86ClaimFixedResources() call:
	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
	[5] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
	[6] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
	[7] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
	[8] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
(II) resource ranges after probing:
	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
	[5] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
	[6] 0	0	0x000a0000 - 0x000affff (0x10000) MS[B]
	[7] 0	0	0x000b0000 - 0x000b7fff (0x8000) MS[B]
	[8] 0	0	0x000b8000 - 0x000bffff (0x8000) MS[B]
	[9] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
	[10] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
	[11] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
	[12] 0	0	0x000003b0 - 0x000003bb (0xc) IS[B]
	[13] 0	0	0x000003c0 - 0x000003df (0x20) IS[B]
(II) Setting vga for screen 0.
(II) Loading sub module "vbe"
(II) LoadModule: "vbe"
(II) Loading /usr/X11R6/lib/modules/libvbe.a
(II) Module vbe: vendor="The XFree86 Project"
	compiled for 4.3.99.15, module version = 1.1.0
	ABI class: XFree86 Video Driver, version 0.7
(II) Loading sub module "int10"
(II) LoadModule: "int10"
(II) Loading /usr/X11R6/lib/modules/libint10.a
(II) Module int10: vendor="The XFree86 Project"
	compiled for 4.3.99.15, module version = 1.0.0
	ABI class: XFree86 Video Driver, version 0.7
(II) VESA(0): initializing int10
(WW) VESA(0): Bad V_BIOS checksum
(II) VESA(0): Primary V_BIOS segment is: 0xc000
(II) VESA(0): VESA BIOS detected
(II) VESA(0): VESA VBE Version 0.0
(II) VESA(0): VESA VBE Total Mem: 0 kB
(II) VESA(0): VESA VBE OEM: Sÿ

   *** If unresolved symbols were reported above, they might not
   *** be the reason for the server aborting.

Fatal server error:
Caught signal 11.  Server aborting


When reporting a problem related to a server crash, please send
the full server output, not just the last messages.
This can be found in the log file "/var/log/XFree86.0.log".
Please report problems to xfree86@xfree86.org.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] FreeBSD port update, FreeSBIE, X, more slirp dhcp problems...
  2004-06-05  1:35 [Qemu-devel] FreeBSD port update, FreeSBIE, X, more slirp dhcp problems Juergen Lock
@ 2004-06-05  8:40 ` Fabrice Bellard
  2004-06-05 20:30   ` Juergen Lock
  0 siblings, 1 reply; 3+ messages in thread
From: Fabrice Bellard @ 2004-06-05  8:40 UTC (permalink / raw)
  To: qemu-devel

The problem seems to be that XFree does not get correct results from 
VESA VBE int 0x10 calls. If you can recompile the XFree vesa module and 
add traces  in it, the bug should be easy to track (it may be a bug in 
the VGA BIOS).

For DHCP, I need to look at it, but I would need a small disk image to 
test it. You can also try the patch Renzo published on the mailing list.

Fabrice.

Juergen Lock wrote:
> I have updated the FreeBSD port to tonight's snapshot, the update
> can be fetched here:
> 	http://www.freebsd.org/cgi/query-pr.cgi?pr=67583&f=raw
> 
>  With slirp dhcp still doesn't work for a FreeSBIE guest, I have
> to manually configure the network (see the pkg-message patch in
> the port update).  After doing that it works tho.
> 
>  Also, X doesn't work on FreeSBIE (I think I said that already),
> when I try to start X (xinit) I get:
> 	Fatal server error:
> 	Caught signal 11
> (11 is SIGSEGV)
> 
>  This time i scp'd the XFree86.0.log out of the guest in case it
> helps (see below), at least that
> 	(II) VESA(0): VESA VBE Total Mem: 0 kB
> looks suspicious...
> 
> 	Juergen
> 
> This is a pre-release version of XFree86, and is not supported in any
> way.  Bugs may be reported to XFree86@XFree86.Org and patches submitted
> to fixes@XFree86.Org.  Before reporting bugs in pre-release versions,
> please check the latest version in the XFree86 CVS repository
> (http://www.XFree86.Org/cvs).
> 
> XFree86 Version 4.3.99.15
> Release Date:  1 November 2003
> X Protocol Version 11, Revision 0, Release 6.6
> Build Operating System: FreeBSD 5.2.1 i386 [ELF] 
> Current Operating System: FreeBSD FreeSBIE.LiveCD 5.2.1-RELEASE FreeBSD 5.2.1-RELEASE #1: Tue Feb 24 17:06:31 CET 2004     root@nathan:/usr/obj/usr/src/sys/FREESBIE i386
> Build Date: 13 February 2004
> Changelog Date: 02 November 2003
> 	Before reporting problems, check http://www.XFree86.Org/
> 	to make sure that you have the latest version.
> Module Loader present
> Markers: (--) probed, (**) from config file, (==) default setting,
> 	(++) from command line, (!!) notice, (II) informational,
> 	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
> (==) Log file: "/var/log/XFree86.0.log", Time: Sat Jun  5 01:03:57 2004
> (==) Using config file: "/etc/X11/XF86Config"
> (==) ServerLayout "Layout0"
> (**) |-->Screen "Screen0" (0)
> (**) |   |-->Monitor "Monitor0"
> (**) |   |-->Device "Card0"
> (**) |-->Input Device "Keyboard0"
> (**) Option "XkbModel" "pc105"
> (**) XKB: model: "pc105"
> (**) Option "XkbLayout" "de"
> (**) XKB: layout: "de"
> (==) Keyboard: CustomKeycode disabled
> (**) |-->Input Device "Mouse0"
> (**) FontPath set to "/usr/X11R6/lib/X11/fonts/misc/,/usr/X11R6/lib/X11/fonts/Type1/,/usr/X11R6/lib/X11/fonts/75dpi/,/usr/X11R6/lib/X11/fonts/100dpi/,/usr/X11R6/lib/X11/fonts/bitstream-vera/"
> (**) RgbPath set to "/usr/X11R6/lib/X11/rgb"
> (**) ModulePath set to "/usr/X11R6/lib/modules"
> (II) Module ABI versions:
> 	XFree86 ANSI C Emulation: 0.2
> 	XFree86 Video Driver: 0.7
> 	XFree86 XInput driver : 0.4
> 	XFree86 Server Extension : 0.2
> 	XFree86 Font Renderer : 0.4
> (II) Loader running on freebsd
> (II) LoadModule: "bitmap"
> (II) Loading /usr/X11R6/lib/modules/fonts/libbitmap.a
> (II) Module bitmap: vendor="The XFree86 Project"
> 	compiled for 4.3.99.15, module version = 1.0.0
> 	Module class: XFree86 Font Renderer
> 	ABI class: XFree86 Font Renderer, version 0.4
> (II) Loading font Bitmap
> (II) LoadModule: "pcidata"
> (II) Loading /usr/X11R6/lib/modules/libpcidata.a
> (II) Module pcidata: vendor="The XFree86 Project"
> 	compiled for 4.3.99.15, module version = 1.0.0
> 	ABI class: XFree86 Video Driver, version 0.7
> (--) Using syscons driver with X support (version 2.0)
> (--) using VT number 9
> 
> (II) PCI: Probing config type using method 1
> (II) PCI: Config type is 1
> (II) PCI: stages = 0x03, oldVal1 = 0x00000000, mode1Res1 = 0x80000000
> (II) PCI: PCI scan (all values are in hex)
> (II) PCI: 00:00:0: chip 8086,1237 card 0000,0000 rev 02 class 06,04,00 hdr 01
> (II) PCI: 00:01:0: chip 8086,7000 card 0000,0000 rev 00 class 06,01,00 hdr 80
> (II) PCI: 00:01:1: chip 8086,7010 card 0000,0000 rev 00 class 01,01,00 hdr 00
> (II) PCI: 00:02:0: chip 1234,1111 card 0000,0000 rev 00 class 03,00,00 hdr 00
> (II) PCI: 00:03:0: chip 10ec,8029 card 0000,0000 rev 00 class 02,00,00 hdr 00
> (II) PCI: End of PCI scan
> (WW) Misconfigured PCI bridge 0:0:0 (0,0)
> (II) PCI-to-ISA bridge:
> (II) Bus -1: bridge is at (0:1:0), (0,-1,-1), BCTRL: 0x0008 (VGA_EN is set)
> (II) Host-to-PCI bridge:
> (II) Bus 0: bridge is at (0:0:0), (0,0,0), BCTRL: 0x0008 (VGA_EN is set)
> (II) Bus 0 I/O range:
> 	[0] -1	0	0x00000000 - 0x0000ffff (0x10000) IX[B]
> (II) Bus 0 non-prefetchable memory range:
> 	[0] -1	0	0x00000000 - 0xffffffff (0x0) MX[B]
> (II) Bus 0 prefetchable memory range:
> 	[0] -1	0	0x00000000 - 0xffffffff (0x0) MX[B]
> (--) PCI:*(0:2:0) unknown vendor (0x1234) unknown chipset (0x1111) rev 0, Mem @ 0xe0000000/22
> (II) Addressable bus resource ranges are
> 	[0] -1	0	0x00000000 - 0xffffffff (0x0) MX[B]
> 	[1] -1	0	0x00000000 - 0x0000ffff (0x10000) IX[B]
> (II) OS-reported resource ranges:
> 	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
> 	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
> 	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
> 	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
> 	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
> 	[5] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
> 	[6] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
> (II) Active PCI resource ranges:
> 	[0] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
> 	[1] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
> (II) Active PCI resource ranges after removing overlaps:
> 	[0] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
> 	[1] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
> (II) OS-reported resource ranges after removing overlaps with PCI:
> 	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
> 	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
> 	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
> 	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
> 	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
> 	[5] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
> 	[6] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
> (II) All system resource ranges:
> 	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
> 	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
> 	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
> 	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
> 	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
> 	[5] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
> 	[6] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
> 	[7] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
> 	[8] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
> (II) LoadModule: "extmod"
> (II) Loading /usr/X11R6/lib/modules/extensions/libextmod.a
> (II) Module extmod: vendor="The XFree86 Project"
> 	compiled for 4.3.99.15, module version = 1.0.0
> 	Module class: XFree86 Server Extension
> 	ABI class: XFree86 Server Extension, version 0.2
> (II) Loading extension SHAPE
> (II) Loading extension MIT-SUNDRY-NONSTANDARD
> (II) Loading extension BIG-REQUESTS
> (II) Loading extension SYNC
> (II) Loading extension MIT-SCREEN-SAVER
> (II) Loading extension XC-MISC
> (II) Loading extension XFree86-VidModeExtension
> (II) Loading extension XFree86-Misc
> (II) Loading extension XFree86-DGA
> (II) Loading extension DPMS
> (II) Loading extension FontCache
> (II) Loading extension TOG-CUP
> (II) Loading extension Extended-Visual-Information
> (II) Loading extension XVideo
> (II) Loading extension XVideo-MotionCompensation
> (II) Loading extension X-Resource
> (II) LoadModule: "vesa"
> (II) Loading /usr/X11R6/lib/modules/drivers/vesa_drv.o
> (II) Module vesa: vendor="The XFree86 Project"
> 	compiled for 4.3.99.15, module version = 1.0.0
> 	Module class: XFree86 Video Driver
> 	ABI class: XFree86 Video Driver, version 0.7
> (II) LoadModule: "mouse"
> (II) Loading /usr/X11R6/lib/modules/input/mouse_drv.o
> (II) Module mouse: vendor="The XFree86 Project"
> 	compiled for 4.3.99.15, module version = 1.0.0
> 	Module class: XFree86 XInput Driver
> 	ABI class: XFree86 XInput driver, version 0.4
> (II) VESA: driver for VESA chipsets: vesa
> (II) Primary Device is: PCI 00:02:0
> (--) Assigning device section with no busID to primary device
> (--) Chipset vesa found
> (II) resource ranges after xf86ClaimFixedResources() call:
> 	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
> 	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
> 	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
> 	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
> 	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
> 	[5] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
> 	[6] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
> 	[7] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
> 	[8] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
> (II) resource ranges after probing:
> 	[0] -1	0	0xffe00000 - 0xffffffff (0x200000) MX[B](B)
> 	[1] -1	0	0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
> 	[2] -1	0	0x000f0000 - 0x000fffff (0x10000) MX[B]
> 	[3] -1	0	0x000c0000 - 0x000effff (0x30000) MX[B]
> 	[4] -1	0	0x00000000 - 0x0009ffff (0xa0000) MX[B]
> 	[5] -1	0	0xe0000000 - 0xe03fffff (0x400000) MX[B](B)
> 	[6] 0	0	0x000a0000 - 0x000affff (0x10000) MS[B]
> 	[7] 0	0	0x000b0000 - 0x000b7fff (0x8000) MS[B]
> 	[8] 0	0	0x000b8000 - 0x000bffff (0x8000) MS[B]
> 	[9] -1	0	0x0000ffff - 0x0000ffff (0x1) IX[B]
> 	[10] -1	0	0x00000000 - 0x000000ff (0x100) IX[B]
> 	[11] -1	0	0x0000c000 - 0x0000c0ff (0x100) IX[B]E
> 	[12] 0	0	0x000003b0 - 0x000003bb (0xc) IS[B]
> 	[13] 0	0	0x000003c0 - 0x000003df (0x20) IS[B]
> (II) Setting vga for screen 0.
> (II) Loading sub module "vbe"
> (II) LoadModule: "vbe"
> (II) Loading /usr/X11R6/lib/modules/libvbe.a
> (II) Module vbe: vendor="The XFree86 Project"
> 	compiled for 4.3.99.15, module version = 1.1.0
> 	ABI class: XFree86 Video Driver, version 0.7
> (II) Loading sub module "int10"
> (II) LoadModule: "int10"
> (II) Loading /usr/X11R6/lib/modules/libint10.a
> (II) Module int10: vendor="The XFree86 Project"
> 	compiled for 4.3.99.15, module version = 1.0.0
> 	ABI class: XFree86 Video Driver, version 0.7
> (II) VESA(0): initializing int10
> (WW) VESA(0): Bad V_BIOS checksum
> (II) VESA(0): Primary V_BIOS segment is: 0xc000
> (II) VESA(0): VESA BIOS detected
> (II) VESA(0): VESA VBE Version 0.0
> (II) VESA(0): VESA VBE Total Mem: 0 kB
> (II) VESA(0): VESA VBE OEM: Sÿ
> 
>    *** If unresolved symbols were reported above, they might not
>    *** be the reason for the server aborting.
> 
> Fatal server error:
> Caught signal 11.  Server aborting
> 
> 
> When reporting a problem related to a server crash, please send
> the full server output, not just the last messages.
> This can be found in the log file "/var/log/XFree86.0.log".
> Please report problems to xfree86@xfree86.org.
> 
> 
> 
> _______________________________________________
> Qemu-devel mailing list
> Qemu-devel@nongnu.org
> http://lists.nongnu.org/mailman/listinfo/qemu-devel
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] FreeBSD port update, FreeSBIE, X, more slirp dhcp problems...
  2004-06-05  8:40 ` Fabrice Bellard
@ 2004-06-05 20:30   ` Juergen Lock
  0 siblings, 0 replies; 3+ messages in thread
From: Juergen Lock @ 2004-06-05 20:30 UTC (permalink / raw)
  To: fabrice; +Cc: qemu-devel

In article <40C186EB.3060504@bellard.org> you write:
>...
>For DHCP, I need to look at it, but I would need a small disk image to 
>test it. You can also try the patch Renzo published on the mailing list.

Did that (had to edit it a bit, see below), and FreeSBIE now gets
an address and a default route, but still no nameserver.  Well this
_could_ also be normal but somehow i doubt it.  (Could also be
that I broke the patch somehow, I'm no dhcp expert...)

	Juergen

Index: slirp/bootp.c
===================================================================
RCS file: /cvsroot/qemu/qemu/slirp/bootp.c,v
retrieving revision 1.3
diff -u -r1.3 bootp.c
--- slirp/bootp.c	4 Jun 2004 15:30:48 -0000	1.3
+++ slirp/bootp.c	5 Jun 2004 19:34:22 -0000
@@ -29,11 +29,12 @@
 
 #define START_ADDR 15
 
-#define LEASE_TIME (24 * 3600)
+#define LEASE_TIME (120)
 
 typedef struct {
     uint8_t allocated;
     uint8_t macaddr[6];
+    int time;
 } BOOTPClient;
 
 BOOTPClient bootp_clients[NB_ADDR];
@@ -68,26 +69,54 @@
 {
     BOOTPClient *bc;
     int i;
+    int now=time(NULL);
 
     for(i = 0; i < NB_ADDR; i++) {
         if (!memcmp(macaddr, bootp_clients[i].macaddr, 6))
             goto found;
     }
+    for(i = 0; i < NB_ADDR; i++) {
+	if (now-bootp_clients[i].time > 3*LEASE_TIME)
+	    goto found;
+    }
     return NULL;
  found:
     bc = &bootp_clients[i];
-    bc->allocated = 1;
     paddr->s_addr = htonl(ntohl(special_addr.s_addr) | (i + START_ADDR));
     return bc;
 }
 
+static BOOTPClient *find_reqaddr(struct in_addr *paddr, struct in_addr *reqaddr, const uint8_t *macaddr)
+{
+    BOOTPClient *bc=NULL;
+    int i;
+    /*check the net prefix*/
+    if ((ntohl(reqaddr->s_addr) & 0xffffff00) ==
+		    (ntohl(special_addr.s_addr) & 0xffffff00)) {
+	    i=(ntohl(reqaddr->s_addr) & 0xff) - START_ADDR;
+	    if (i>=0 && i< NB_ADDR) {
+		    bc = &bootp_clients[i];
+		    if (bc->allocated &&
+				    (memcmp(macaddr, bootp_clients[i].macaddr, 6)==0)) {
+			    paddr->s_addr = reqaddr->s_addr;
+			    return bc;
+		    }
+		    else
+			    bc=NULL;
+	    }
+    }
+    return bc;
+}
+
+
 static void dhcp_decode(const uint8_t *buf, int size,
-                        int *pmsg_type)
+                        int *pmsg_type, struct sockaddr_in *preqaddr)
 {
     const uint8_t *p, *p_end;
     int len, tag;
 
     *pmsg_type = 0;    
+    preqaddr->sin_addr.s_addr=htonl(0L);
 
     p = buf;
     p_end = buf + size;
@@ -114,6 +143,10 @@
                 if (len >= 1)
                     *pmsg_type = p[0];
                 break;
+            case RFC2132_REQ_ADDR:
+		if (len == 4) {
+			memcpy(&(preqaddr->sin_addr),p,4);
+		}
             default:
                 break;
             }
@@ -127,14 +160,14 @@
     BOOTPClient *bc;
     struct mbuf *m;
     struct bootp_t *rbp;
-    struct sockaddr_in saddr, daddr;
+    struct sockaddr_in saddr, daddr, reqaddr;
     struct in_addr dns_addr;
     int dhcp_msg_type, val;
-    uint8_t *q;
+    uint8_t *q,replytype;
 
     /* extract exact DHCP msg type */
-    dhcp_decode(bp->bp_vend, DHCP_OPT_LEN, &dhcp_msg_type);
-    dprintf("bootp packet op=%d msgtype=%d\n", bp->bp_op, dhcp_msg_type);
+    dhcp_decode(bp->bp_vend, DHCP_OPT_LEN, &dhcp_msg_type,&reqaddr);
+    dprintf("bootp packet op=%d msgtype=%d reqaddr=%x\n", bp->bp_op, dhcp_msg_type,ntohl(reqaddr.sin_addr.s_addr));
     
     if (dhcp_msg_type != DHCPDISCOVER && 
         dhcp_msg_type != DHCPREQUEST)
@@ -149,19 +182,18 @@
     m->m_data += sizeof(struct udpiphdr);
     memset(rbp, 0, sizeof(struct bootp_t));
 
-    if (dhcp_msg_type == DHCPDISCOVER) {
-        bc = get_new_addr(&daddr.sin_addr);
-        if (!bc) {
-            dprintf("no address left\n");
-            return;
-        }
-        memcpy(bc->macaddr, client_ethaddr, 6);
-    } else {
-        bc = find_addr(&daddr.sin_addr, bp->bp_hwaddr);
-        if (!bc) {
-            dprintf("no address assigned\n");
-            return;
-        }
+    bc=NULL;
+    daddr.sin_addr.s_addr=htonl(0L);
+    if (dhcp_msg_type == DHCPREQUEST) {
+ 	   if (reqaddr.sin_addr.s_addr != htonl(0L))
+ 		   bc = find_reqaddr(&daddr.sin_addr, &reqaddr.sin_addr, bp->bp_hwaddr);
+ 	   else 
+ 		   bc = find_addr(&daddr.sin_addr, bp->bp_hwaddr);
+    }
+    else if (dhcp_msg_type == DHCPDISCOVER) {
+ 	   bc = find_addr(&daddr.sin_addr, bp->bp_hwaddr);
+ 	   if (!bc)
+	       bc = get_new_addr(&daddr.sin_addr);
     }
     dprintf("offered addr=%08x\n", ntohl(daddr.sin_addr.s_addr));
 
@@ -182,18 +214,21 @@
     memcpy(q, rfc1533_cookie, 4);
     q += 4;
 
-    if (dhcp_msg_type == DHCPDISCOVER) {
-        *q++ = RFC2132_MSG_TYPE;
-        *q++ = 1;
-        *q++ = DHCPOFFER;
-    } else if (dhcp_msg_type == DHCPREQUEST) {
+    if (bc != NULL) {
+        memcpy(bc->macaddr, client_ethaddr, 6);
+    	bc->allocated = 1;
+	bc->time = time(NULL);
+    	replytype=(dhcp_msg_type == DHCPDISCOVER)?DHCPOFFER:DHCPACK;
+    }
+    else
+	replytype=DHCPNACK;
+
         *q++ = RFC2132_MSG_TYPE;
         *q++ = 1;
-        *q++ = DHCPACK;
-    }
+    *q++ = replytype;
         
-    if (dhcp_msg_type == DHCPDISCOVER ||
-        dhcp_msg_type == DHCPREQUEST) {
+    if ((dhcp_msg_type == DHCPDISCOVER ||
+        dhcp_msg_type == DHCPREQUEST) && replytype!=DHCPNACK) {
         *q++ = RFC2132_SRV_ID;
         *q++ = 4;
         memcpy(q, &saddr.sin_addr, 4);
Index: slirp/bootp.h
===================================================================
RCS file: /cvsroot/qemu/qemu/slirp/bootp.h,v
retrieving revision 1.1
diff -u -r1.1 bootp.h
--- slirp/bootp.h	22 Apr 2004 00:10:47 -0000	1.1
+++ slirp/bootp.h	5 Jun 2004 19:34:22 -0000
@@ -71,6 +71,7 @@
 #define DHCPOFFER		2
 #define DHCPREQUEST		3
 #define DHCPACK			5
+#define DHCPNACK		6
 
 #define RFC1533_VENDOR_MAJOR	0
 #define RFC1533_VENDOR_MINOR	0

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-06-05 20:24 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-06-05  1:35 [Qemu-devel] FreeBSD port update, FreeSBIE, X, more slirp dhcp problems Juergen Lock
2004-06-05  8:40 ` Fabrice Bellard
2004-06-05 20:30   ` Juergen Lock

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.