[Barrelfish-users] netd and howto get files into BF/Qemu
andrewb at inf.ethz.ch
Wed Dec 14 16:42:01 CET 2011
AFAIK it's in the public tree, but it doesn't seem to work (maybe it doesn't actually link the library) unless you explicitly call something else in the VFS library, which rather defeats the purpose of automatically calling vfs_init(): if you call vfs_init() manually it breaks, because it is called twice, but if you don't call vfs_init(), fopen() etc. doesn't work.
Last time I encountered this problem, I added a call to vfs_remove("non-existent-file"), but that's hardly a clean solution!
From: Simon Peter [mailto:speter at inf.ethz.ch]
Sent: Wednesday, 14 December, 2011 7:37
To: Georgios Varisteas
Cc: barrelfish-users at lists.inf.ethz.ch
Subject: Re: [Barrelfish-users] netd and howto get files into BF/Qemu
It essentially boils down to you calling vfs_init() before you use any
file-related functionality. My version of the tree does this
automatically, by declaring vfs_init() to be a GCC constructor, but that
might not yet be in the public tree.
Hope this helps,
On 14.12.2011 16:10, Georgios Varisteas wrote:
> Thanks Pravin, that worked great.
> However now I have another problem. On fopen() I get:
> Warning: fopen() called with _libc_fopen_func unset
> I saw how vfs_init() handles that but i couldn't figure out exactly how my app should set the whole thing up correctly. Is there a tutorial somewhere I've missed? Thanks in advance.
> Best regards,
> Georgios Varisteas
> From: shindepravin at gmail.com [shindepravin at gmail.com] on behalf of Pravin [pravin at inf.ethz.ch]
> Sent: Wednesday, December 14, 2011 14:28
> To: Georgios Varisteas
> Cc: barrelfish-users at lists.inf.ethz.ch
> Subject: Re: [Barrelfish-users] netd and howto get files into BF/Qemu
> Hi Georgios,
> I have created a page on public wiki about how to use Barrelfish
> inside qemu with networking. I hope this will help in clearing some
> confusion about it's usage.
> In summary, you will have to enable "support_qemu_networking" inside
> <your_build_dir>/hake/Config.hs, and you will have to pass correct
> cardname to netd in menu.lst.
> Coming back to the output you are getting, it seems that either netd
> or your application is waiting for e1000 driver instead of rtl8029
> driver. Currently only rtl8029 driver works with qemu. You can
> specify the cardname for netd with boot time parameter in menu.lst.
> If driver and netd is working for you, then you should be able to get
> IP address for Barrelfish. If you are able to get an IP address then
> it is good enough test to see if networking is up or not. Let me
> know if you have already reached this point.
> Using NFS should work fine if you want to get some files inside
> Barrelfish running on QEMU.
> I hope this helps. Let me know if you still have problems.
> On Wed, Dec 14, 2011 at 13:20, Georgios Varisteas<yorgos at kth.se> wrote:
>> I tried using the network in qemu, but when I try to mount an nfs share BF just freezes on:
>> "chips: client waiting for e1000_CTRL"
>> while I have successfully connected through the rtl8029 card. Nothing related to e1000 is loaded.
>> I only need this in order to have simple files added to the ramfs image. Is there any other way? I only care to input files and not necessarily output. I thought of adding them to the skb archive but I was afraid that it could mess other stuff up. Ideally GRUB would do that, like with binaries, but I do not know how...
>> Best regards,
>> Georgios Varisteas
>> Barrelfish-users mailing list
>> Barrelfish-users at lists.inf.ethz.ch
> Barrelfish-users mailing list
> Barrelfish-users at lists.inf.ethz.ch
Barrelfish-users mailing list
Barrelfish-users at lists.inf.ethz.ch
More information about the Barrelfish-users