Stefan, Are you sure we are expecting to be able to run this on genode-linux? For example, when we run the pci_drv we get an abort due to "no IO PORT support in Linux"????
I think we're missing something here. Thanks Daniel On 05/12/2011 02:50 PM, Daniel Waddington wrote: > Guess we need to add the template parameter to max, max<unsigned long>? > > Daniel > > On 05/12/2011 02:32 PM, Amadeo Cuadrado wrote: >> Thanks Norman and Stefan. >> >> While trying to run these examples with Linux instead of foc, I would >> like to report I get the following error when building the NIC driver: >> >> Program drivers/gpxe_nic/gpxe_nic_drv >> COMPILE main.o >> .../genode/dde_gpxe/src/drivers/gpxe_nic/main.cc: In member function >> 'virtual Nic::Session_component* Nic::Root::_create_session(const >> char*)': >> .../genode/dde_gpxe/src/drivers/gpxe_nic/main.cc:187: error: no >> matching function for call to 'max(unsigned int, long unsigned int)' >> >> Is this known? >> >> Thanks, >> Amadeo >> >> >> -----Original Message----- >> From: Norman Feske [mailto:[email protected]] >> Sent: Thursday, May 12, 2011 5:07 AM >> To: [email protected] >> Subject: Re: lwip examples >> >> Hi Amadeo, >> >> even though your current issue may be related to a configuration problem >> (e.g., the creation of a tap device before starting qemu, configuring >> the bridge device), I want to mention that networking support is not >> expected to work on the current Fiasco.OC version. There are two known >> limitations (documented at >> 'http://genode.org/documentation/release-notes/11.02#section-7') that >> currently stand in the way. One is the lacking support for dynamic >> loading of the lwIP library (ok, I see that you are using a work-around >> for this limitation via linking statically). But more importantly, the >> Fiasco.OC version does not support Genode's signalling API yet. This >> API, however, is used by the data-flow protocol used between lwIP and >> the NIC driver (Genode's packet-stream interface). >> >> That said, both limitations will be addressed by the upcoming Genode >> version to be released later this month. In the meanwhile, if you want >> to get hands-on-experience with using lwIP on Genode, I recommend >> walking the currently well-explored path of using one of the other >> kernels. In your case, I would start with Linux and eventually give OKL4 >> a try. From your test application's perspective, this should not make >> any difference. >> >> For further reference about using lwIP on Genode/Linux with bridging, >> you may take a look at the steps described here: >> >> http://www.genode.org/documentation/release-notes/10.05#section-35 >> >> Cheers >> Norman >> >> On 05/12/2011 11:21 AM, Stefan Kalkowski wrote: >>> Hello Amadeo, >>> >>> when looking at your output it seems to me that at least the >>> pci-driver, >>> and/or timer services are missing in your configuration (normally they >>> would produce some output), but gPXE's nic-driver depends on them, and >>> won't run without these services. As long as the nic-driver isn't >>> available your lwip-application will block while initializing the >>> lwip-stack. >>> >>> Please, verify that init's configuration contains at least these items: >>> >>> <start name="timer"> >>> <resource name="RAM" quantum="512K"/> >>> <provides> <service name="Timer"/> </provides> >>> </start> >>> >>> <start name="pci_drv"> >>> <resource name="RAM" quantum="512K"/> >>> <provides> <service name="PCI"/> </provides> >>> </start> >>> >>> <start name="gpxe_nic_drv"> >>> <resource name="RAM" quantum="2M"/> >>> <provides> <service name="Nic"/> </provides> >>> </start> >>> >>> If this doesn't help you, please post your configuration file. >>> >>> Regards >>> Stefan >>> >>> On 05/12/2011 12:39 AM, Amadeo Cuadrado wrote: >>>> Thanks Stefan for your answer. Yes, I am building lwip and libc >>>> statically. >>>> >>>> I am using qemu to run the .iso, basically: >>>> >>>> qemu -cdrom 'myiso.iso' -net nic,model=pcnet >>>> >>>> I have also used VBox, with same luck. This is the Nic driver I am >>>> using: >>>> >>>> <start name="gpxe_nic_drv"> >>>> <resource name="RAM" quantum="4M"/> >>>> <provides><service name="Nic"/></provides> >>>> </start> >>>> >>>> This is the output from the serial port: >>>> >>>> int main(): --- create local services --- >>>> int main(): --- start init --- >>>> int main(): transferred 431 MB to init >>>> int main(): --- init created, waiting for exit condition --- >>>> [init -> test-lwip_loop] void init_loopback(): init_loopback() >>>> [init -> test-lwip_loop] Libc::Lwip_plugin::Lwip_plugin(): using >>>> the lwIP libc plugin >>>> [init -> test-lwip_loop] void init_libc_lwip(): init_libc_lwip() >>>> [init -> test-timer] --- timer test --- >>>> [init -> test-lwip_loop] int server(): Create new socket ... >>>> [init -> test-lwip_loop] virtual void Client::entry(): Create new >>>> socket ... >>>> >>>> And then it just stops there. >>>> >>>> What do you mean exactly about the signaling framework? Are these >>>> examples supposed to not work yet? >>>> >>>> Thanks, >>>> Amadeo >>>> >>>> >>>> -----Original Message----- >>>> From: Stefan Kalkowski [mailto:[email protected]] >>>> Sent: Friday, May 06, 2011 1:16 PM >>>> To: [email protected] >>>> Subject: Re: lwip examples >>>> >>>> Hello Amadeo, >>>> >>>> thank you for pointing us out to the build-problem in the >>>> linux_drivers >>>> repository. We immediately fixed that problem. You can checkout the >>>> fix >>>> from our subversion repository. >>>> >>>> With respect to your problems related to lwip. I assume that you >>>> compiled lwip and libc as static libraries, as ldso and shared >>>> libraries >>>> aren't supported for Genode/Fiasco.OC yet? >>>> >>>> Without knowing much details I would guess it's a configuration issue. >>>> Could you please provide some information with respect to your >>>> test-environment, like what hardware or VM you use, especially >>>> which NIC >>>> you've enabled? Moreover, the init-configuration and the complete >>>> serial >>>> output would be helpful. >>>> >>>> But even when we fix your (probably configuration-)issues it's >>>> unlikely >>>> that the NIC service will work out of the box now, because it's >>>> based on >>>> the signalling framework, which isn't supported yet. But we work on >>>> that, and it will be supported at the latest by the upcoming release. >>>> Nevertheless, the mentioned problems have nothing to do with a >>>> non-functional signalling framework. >>>> >>>> Regards >>>> Stefan >>>> >>>> On 05/06/2011 01:56 AM, Amadeo Cuadrado wrote: >>>>> Hello, >>>>> >>>>> >>>>> >>>>> I have not been able to run any of the lwip examples (I am using 32 >>>>> bits): loopback hangs in socket() call, and http_srv hangs in the >>>>> lwip_nic_init() call. I am using the Nic driver from dde_gpxe, >>>>> since I >>>>> got compilation errors when building the linux_drivers: >>>>> >>>>> >>>>> >>>>> .../genode/linux_drivers/src/linux26/arch/i386/lib/bitops.c: In >>>>> function >>>>> 'find_next_zero_bit': >>>>> >>>>> .../genode/linux_drivers/include/linux26-x86/asm/bitops.h:283: error: >>>>> can't find a register in class 'BREG' while reloading 'asm' >>>>> >>>>> .../genode/linux_drivers/include/linux26-x86/asm/bitops.h:283: error: >>>>> 'asm' operand has impossible constraints >>>>> >>>>> >>>>> >>>>> Any clue what I could be missing here to make these examples work? >>>>> Let >>>>> me know if you need more info about my environment. >>>>> >>>>> >>>>> >>>>> Thanks. >>>>> >>>>> >>>>> >>>>> Amadeo >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> >>>>> >>>>> WhatsUp Gold - Download Free Network Management Software >>>>> The most intuitive, comprehensive, and cost-effective network >>>>> management toolset available today. Delivers lowest initial >>>>> acquisition cost and overall TCO of any competing solution. >>>>> http://p.sf.net/sfu/whatsupgold-sd >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Genode-main mailing list >>>>> [email protected] >>>>> https://lists.sourceforge.net/lists/listinfo/genode-main >> ------------------------------------------------------------------------------ Achieve unprecedented app performance and reliability What every C/C++ and Fortran developer should know. Learn how Intel has extended the reach of its next-generation tools to help boost performance applications - inlcuding clusters. http://p.sf.net/sfu/intel-dev2devmay _______________________________________________ Genode-main mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/genode-main
