>I would prefer to use KVM or Qemu.

You might try VirtualBOX as well, as its also supporting USB Tunneling to vm.

>.[7h.Entered debugger on last-chance exception (Exception Code: 0xc0000005) (Page Fault)
>Memory at 0x00000004 could not be read: Page not present.
>kdb:>

In this situation you should acquire backtrace for this crash, by simply issuing bt command.

2010/9/16 Pavel Pisa <ppisa4lists@pikron.com>
Hello Michael and Amine,

thanks for fast response. I have rebuild actual ReactOS sources
from GIT repository.

> > From: ppisa4lists@pikron.com
> > To: ros-dev@reactos.org
> > 1) We need to include usbdlib.h in the driver build, but DECLSPEC_EXPORT
> >    in this header is not declared/maintained.

On Wednesday 15 September 2010 11:04:27 Amine Khaldi wrote:
> I have addressed your first problem in r48774. Please retest and report
> any further issues.
> Re. contacting the developers, you're welcome to join our IRC channels
> for a real-time discussion: http://www.reactos.org/en/community_irc.html

The driver sources compile in WDM build from unmodified sources now. Great.

> > 2) If we overcome by some hack problem 1) the link fails on undefined
> >    references to
> >      __imp__USBD_ParseConfigurationDescriptorEx@28
> >      __imp__USBD_CreateConfigurationRequestEx@8

On Wednesday 15 September 2010 14:16:52 Michael Martin wrote:
> Pavel,
>
> Hi, I am the developer that is currently working on USB in ReactOS.
> Problem 1 has already been fixed by Amine Khaldi.
> As for problem 2, the usbd driver does indeed have these functions
> implemented though i have not looked to see if they are correct. The usbd
> driver is currently built but not added to the ReactOS.iso. To have it
> added, you need to modify boot/bootdata/packages/reactos.dff.
>
> Including the usbd in the rbuild file as a library will resolve the issue.

Please, could you guide me a little. I see two sub-problems.

If I understand well, the functions are provided by usbd.sys.
It seems to be included in LiveCD (output-i386/livecd/reactos/system32/drivers/)
but it is not included in BootCD and list of install files.

There is the second problem, that the driver build needs import library.
I have tried to generate it from obj-i386/drivers/usb/usbd/usbd_usbd.auto.def

 i586-mingw32-dlltool --output-lib usbd.lib --input-def usbd_usbd.def

This way I build something which seems like WDM driver. There would be probably
problem with correct set of options for GCC and LD which I use for build.
I would prefer to specify these directly without calls to Rbuild.
I use next set of options now.

i586-mingw32-gcc -nostdinc -D _M_IX86 -D _M_IX86 -I /home/pi/repo/reactos/include/ddk \
 -I /home/pi/repo/reactos/include/psdk -I /home/pi/repo/reactos/include/crt \
 -I /home/pi/repo/reactos/include/crt/mingw32 -D FOR_WIN_WDM -Wall -Wno-unused \
 -D__NTDRIVER__ -D_DLL -D__USE_CRTIMP -D__REACTOS__ -DDBG=1 -D_SEH_ENABLE_TRACE -DKDBG=1 \
 -DWINVER=0x502 -D_WIN32_IE=0x600 -D_WIN32_WINNT=0x502 -D_WIN32_WINDOWS=0x502 \
 -D_SETUPAPI_VER=0x502 -D_USE_32BIT_TIME_T -D_M_IX86 -D_X86_ -D__i386__ \
 -DUSE_COMPILER_EXCEPTIONS -march=pentium -mtune=i686 -pipe -Wall -gstabs+ \
 -Os -fno-strict-aliasing -fno-unit-at-a-time -fno-optimize-sibling-calls \
 -ftracer -momit-leaf-frame-pointer -mpreferred-stack-boundary=2 -fno-common \
 -fno-zero-initialized-in-bss -c ul_drv/ul_drv.c -o ul_wdm.o

i586-mingw32-gcc -o ul_wdm.sys ul_wdm.o ul_wdm.def -Wl,-subsystem,native -Wl,-entry,_DriverEntry@8 \
 -Wl,-image-base,0x00010000 -Wl,-file-alignment,0x1000 -Wl,-section-alignment,0x1000 \
 -mdll -Wl,-stack,0x40000 -nostdlib -nostartfiles -L . usbd.lib -l hal -l ntoskrnl

./pefixup ul_wdm.sys -exports -sections

I try to prepare setup to test real uLan SB driver with ReactOS.
I would prefer to use KVM or Qemu. I have managed to install actual build
of ReactOS on disk image. I have checked that KMD uLan driver in virtual
(no real device) mode works even on this build.

> FYI, Our USB stack is no where near complete.
> We do plan on implementing all the drivers in the USB stack.
>

Yes I am fully aware of that, but it is interresting combination to test
and it could help us even to find problematic constructs in our driver.
I do not like to run any closed system myslef, so possibility to use
ReactOS (best with KVM a USB device tunneling) is very interresting for me.
Even actual possibility to build (may be even Windows/Ros incompatible)
driver binary under GNU/Linux is great to check, that changes in common
code parts do not (probably) cause breakage of Windows build.

During the history of my trials with ReactOS I have notices more
problems. May it be, that some symptoms could be of some help
for you. May be, that they are problem of my tools setup.

I use qemu-kvm-0.12.3 , own build of i586-mingw32-gcc 4.4.2 on AMD64
Debian system. GCC configured

 configure -v --enable-languages=c,c++ --prefix=/usr --with-system-zlib
 --without-included-gettext --enable-shared --disable-nls --enable-mpfr
 --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu
 --target=i586-mingw32 --enable-threads=win32 --disable-win32-registry
 --enable-version-specific-runtime-libs --disable-libgomp

Headers and import libraries are MSYS updated by HAL and some other from ReactOS.
I use that setup for Windows version of our tools builds too.

The actual version of RectOS requires next additional line for above
described setup

PROJECT_CXXLIBS += "$(shell ${TARGET_CPP} -print-file-name=libgcc_eh.a)"

My LiveCD build does not start under Qemu nor KVM. Logs attached.

The BootCD seems to start correctly. I have been able to reinstall
ReactOS in my older disk image. I have left filesystem unchanged
but when I have tried to install new boot record, loader fails
to start - blocks after loading freeldr message.
When older version of loader is left untouched, system comes up
without problems.

There seems to be some reproducible problem which seems to be
unrelated to our driver (virtual mode for now). When some
CHROMuLAN modal windows/dialogs are open the system freezes
on

err:(dll/win32/user32/windows/menu.c:3183) MenuTrackMenu 1
err:(dll/win32/user32/windows/menu.c:3429) MenuTrackMenu 2
.[7h.Entered debugger on last-chance exception (Exception Code: 0xc0000005) (Page Fault)
Memory at 0x00000004 could not be read: Page not present.
kdb:>

Any way, the amount of things which works under ReactOS and
amount of work which has been required for that to became
reality is impressive.

Best wishes,

           Pavel

_______________________________________________
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev