Problem with amd lance driver on virtual box - Minix

This is a discussion on Problem with amd lance driver on virtual box - Minix ; Hello... maybe you have already talk about this, but i didn't find it.... I began some experiment on Minix 3.1.3a, but I have some problems with Lance driver. I use Virtualbox (virtual machine), that use the amd lance (PCnet) like ...

+ Reply to Thread
Results 1 to 17 of 17

Thread: Problem with amd lance driver on virtual box

  1. Problem with amd lance driver on virtual box

    Hello... maybe you have already talk about this, but i didn't find
    it.... I began some experiment on Minix 3.1.3a, but I have some
    problems with Lance driver. I use Virtualbox (virtual machine), that
    use the amd lance (PCnet) like network card. Now the problem is that
    whe the system start give me some errors like this

    Starting services: random lance inetLANCE: DMA deneid beacause addres
    out of range
    osdep_eth_init:no ethernet device on task=35594,port=0
    rth_set_ret_conf: waiting for device to appear
    eth_ioctl: suspending NWIOGETHSTAT ioctl


    I try start with pci debug, but give me a lot of ripetitive debug,
    that tell more less the same thing.
    I try to contact ktakahagi@jcom.home.ne.jp but gmail tell me that is a
    wrong address. Please, help me if you can.

    Thank you
    Alex
    http://www.fsugitalia.org/ (only Italy)
    http://www.fsugitalia.org/minix3 (only Italy)

  2. Re: Problem with amd lance driver on virtual box

    All,

    On 2008-02-11, axjslack@gmail.com wrote:
    > Starting services: random lance inetLANCE: DMA deneid beacause addres
    > out of range
    > osdep_eth_init:no ethernet device on task=35594,port=0
    > rth_set_ret_conf: waiting for device to appear
    > eth_ioctl: suspending NWIOGETHSTAT ioctl


    Because loading processes into memory currently happens in the first
    memory hole that's large enough, if processes that are loaded in an
    early stage are large enough, the lance driver gets loaded above 16MB
    (in physical memory). It can't do DMA above 16MB. The "solution"
    (workaround until a real solution is implemented) is to recompile the
    system with less filesystem buffers, so MFS (the largest processes) is
    smaller; these lines in :

    #if (MACHINE == IBM_PC && _WORD_SIZE == 4)
    #define NR_BUFS 1200 /* # blocks in the buffer cache */
    #define NR_BUF_HASH 2048 /* size of buf hash table; MUST BE POWER OF 2*/
    #endif

    Make that NR_BUFS smaller (and HASH too), recompile, and restart..

    =Ben



  3. Re: Problem with amd lance driver on virtual box


    wrote in message
    news:1a4a27c4-6b67-4090-a9b4-5817b501b2f2@h11g2000prf.googlegroups.com...
    > Hello... maybe you have already talk about this, but i didn't find
    > it.... I began some experiment on Minix 3.1.3a, but I have some
    > problems with Lance driver. I use Virtualbox (virtual machine), that
    > use the amd lance (PCnet) like network card. Now the problem is that
    > whe the system start give me some errors like this
    >
    > Starting services: random lance inetLANCE: DMA deneid beacause addres
    > out of range
    > osdep_eth_init:no ethernet device on task=35594,port=0
    > rth_set_ret_conf: waiting for device to appear
    > eth_ioctl: suspending NWIOGETHSTAT ioctl
    >


    Look at the Release Notes page under Known Bugs and Caveats:

    http://www.minix3.org/download/releasenotes-3.1.3.html

    You have to boot the "small" minix image to get the Lance driver to work
    (selection 2). With the small image, everything should work fine.

    (I have the same problem, because I use VMware, and Lance is the only
    supported NIC emulated by VMware.)

    - Bob




  4. Re: Problem with amd lance driver on virtual box

    On Feb 11, 3:57 pm, "Bob Woodside" wrote:
    > wrote in message
    >
    > news:1a4a27c4-6b67-4090-a9b4-5817b501b2f2@h11g2000prf.googlegroups.com...
    >
    > > Hello... maybe you have already talk about this, but i didn't find
    > > it.... I began some experiment on Minix 3.1.3a, but I have some
    > > problems with Lance driver. I use Virtualbox (virtual machine), that
    > > use the amd lance (PCnet) like network card. Now the problem is that
    > > whe the system start give me some errors like this

    >
    > > Starting services: random lance inetLANCE: DMA deneid beacause addres
    > > out of range
    > > osdep_eth_init:no ethernet device on task=35594,port=0
    > > rth_set_ret_conf: waiting for device to appear
    > > eth_ioctl: suspending NWIOGETHSTAT ioctl

    >
    > Look at the Release Notes page under Known Bugs and Caveats:
    >
    > http://www.minix3.org/download/releasenotes-3.1.3.html
    >
    > You have to boot the "small" minix image to get the Lance driver to work
    > (selection 2). With the small image, everything should work fine.
    >
    > (I have the same problem, because I use VMware, and Lance is the only
    > supported NIC emulated by VMware.)
    >
    > - Bob


    Sorry, but is not true.... so the system tell me :

    Assertion "0" failed, file lance.c, line 634
    eth_restart: sendrec to ethernet task XXXXX : -108

    XXXXX it's a number that every time that give me message grow up.
    And give me this message continosly... thak you for the advice, but
    it doesn't work

  5. Re: Problem with amd lance driver on virtual box


    wrote in message
    news:c6d9426d-5fb8-47d0-b720-50c2a6311681@f10g2000hsf.googlegroups.com...
    > On Feb 11, 3:57 pm, "Bob Woodside" wrote:
    >> wrote in message
    >>
    >> news:1a4a27c4-6b67-4090-a9b4-5817b501b2f2@h11g2000prf.googlegroups.com...
    >>
    >> > ...problems with Lance driver. I use Virtualbox (virtual machine), that
    >> > use the amd lance (PCnet) like network card. Now the problem is that
    >> > whe the system start give me some errors like this

    >>
    >> > Starting services: random lance inetLANCE: DMA deneid beacause addres
    >> > out of range
    >> > osdep_eth_init:no ethernet device on task=35594,port=0
    >> > rth_set_ret_conf: waiting for device to appear
    >> > eth_ioctl: suspending NWIOGETHSTAT ioctl

    >>
    >> Look at the Release Notes page under Known Bugs and Caveats:
    >>
    >> http://www.minix3.org/download/releasenotes-3.1.3.html
    >>
    >> You have to boot the "small" minix image to get the Lance driver to work
    >> (selection 2). With the small image, everything should work fine.
    >>
    >> (I have the same problem, because I use VMware, and Lance is the only
    >> supported NIC emulated by VMware.)
    >>
    >> - Bob

    >
    > Sorry, but is not true.... so the system tell me :
    >
    > Assertion "0" failed, file lance.c, line 634
    > eth_restart: sendrec to ethernet task XXXXX : -108
    >
    > XXXXX it's a number that every time that give me message grow up.
    > And give me this message continosly... thak you for the advice, but
    > it doesn't work


    Sorry. Your original symptoms were the same as I had with VMware, and
    booting the small image as documented on the Minix3 website worked just
    fine. I've never tried VirtualBox.

    This new error message (lance.c commints suicide with a hard-coded assert
    (0) at line 634) looks like either a) Virtual Box's Lance emulation is
    buggy, b) there may be some VirtualBox configuration settings you need to
    make for the Lance emulation, or c) there's a bug in the Minix driver --
    I've no idea which.

    (The "XXXXX" messages are just Minix continuously trying to restart the
    failed driver -- fairly useless in this situation, I think.)

    I don't suppose you'd care to give VMware Server a try (it's free)?

    - Bob



  6. Re: Problem with amd lance driver on virtual box


    wrote in message
    news:c6d9426d-5fb8-47d0-b720-50c2a6311681@f10g2000hsf.googlegroups.com...
    > On Feb 11, 3:57 pm, "Bob Woodside" wrote:
    >> wrote in message
    >>
    >> news:1a4a27c4-6b67-4090-a9b4-5817b501b2f2@h11g2000prf.googlegroups.com...
    >>
    >> > ...problems with Lance driver. I use Virtualbox (virtual machine), that
    >> > use the amd lance (PCnet) like network card. Now the problem is that
    >> > whe the system start give me some errors like this

    >>
    >> > Starting services: random lance inetLANCE: DMA deneid beacause addres
    >> > out of range
    >> > osdep_eth_init:no ethernet device on task=35594,port=0
    >> > rth_set_ret_conf: waiting for device to appear
    >> > eth_ioctl: suspending NWIOGETHSTAT ioctl

    >>
    >> Look at the Release Notes page under Known Bugs and Caveats:
    >>
    >> http://www.minix3.org/download/releasenotes-3.1.3.html
    >>
    >> You have to boot the "small" minix image to get the Lance driver to work
    >> (selection 2). With the small image, everything should work fine.
    >>
    >> (I have the same problem, because I use VMware, and Lance is the only
    >> supported NIC emulated by VMware.)
    >>
    >> - Bob

    >
    > Sorry, but is not true.... so the system tell me :
    >
    > Assertion "0" failed, file lance.c, line 634
    > eth_restart: sendrec to ethernet task XXXXX : -108
    >
    > XXXXX it's a number that every time that give me message grow up.
    > And give me this message continosly... thak you for the advice, but
    > it doesn't work


    Sorry. Your original symptoms were the same as I had with VMware, and
    booting the small image as documented on the Minix3 website worked just
    fine. I've never tried VirtualBox.

    This new error message (lance.c commits suicide with a hard-coded assert
    (0) at line 634) looks like either a) Virtual Box's Lance emulation is
    buggy, b) there may be some VirtualBox configuration settings you need to
    make for the Lance emulation, or c) there's a bug in the Minix driver --
    I've no idea which.

    (The "XXXXX" messages are just Minix continuously trying to restart the
    failed driver -- fairly useless in this situation, I think.)

    I don't suppose you'd care to give VMware Server a try (it's free)?

    - Bob




  7. Re: Problem with amd lance driver on virtual box

    Yes.... for two good reason....

    1) It's only free use, not "Free", and is in contrast with my ideas
    about software.....

    2) I'm running VirtualBox on Slackware GNU/ Linux with 2.6.24... and
    now have a lot of problem with VMWARE

    3) VirtulBox apperar to be more semply, and we are tryng to realize
    immage standard to begin a project of development for some people on
    minix, and have to be unified..... , so VMWARE is non the perfect
    choise...


    I'm tryng kqemu (the version with kvm), but it compile in qemu-system-
    ia64.... (I have a core 2 duo), and minix don't start on 64bit system
    (I'm not sure about this, but, It doesent go after the boot select of
    installation disc)

  8. Re: Problem with amd lance driver on virtual box

    On Feb 11, 3:03 pm, Ben Gras wrote:
    > All,
    >
    > On 2008-02-11, axjsl...@gmail.com wrote:
    >
    > > Starting services: random lance inetLANCE: DMA deneid beacause addres
    > > out of range
    > > osdep_eth_init:no ethernet device on task=35594,port=0
    > > rth_set_ret_conf: waiting for device to appear
    > > eth_ioctl: suspending NWIOGETHSTAT ioctl

    >
    > Because loading processes into memory currently happens in the first
    > memory hole that's large enough, if processes that are loaded in an
    > early stage are large enough, the lance driver gets loaded above 16MB
    > (in physical memory). It can't do DMA above 16MB. The "solution"
    > (workaround until a real solution is implemented) is to recompile the
    > system with less filesystem buffers, so MFS (the largest processes) is
    > smaller; these lines in :
    >
    > #if (MACHINE == IBM_PC && _WORD_SIZE == 4)
    > #define NR_BUFS 1200 /* # blocks in the buffer cache */
    > #define NR_BUF_HASH 2048 /* size of buf hash table; MUST BE POWER OF 2*/
    > #endif
    >
    > Make that NR_BUFS smaller (and HASH too), recompile, and restart..
    >
    > =Ben


    but it's already 32... you think that have to be smaller again

  9. Re: Problem with amd lance driver on virtual box


    >
    > but it's already 32... you think that have to be smaller again


    sorry.... i read in the wrong place.... now i think that i have to do
    make world (I'doing)
    I use 1024 instead of 2048.... I'm tryng

  10. Re: Problem with amd lance driver on virtual box

    On Feb 12, 10:17 pm, axjsl...@gmail.com wrote:
    > > but it's already 32... you think that have to be smaller again

    >
    > sorry.... i read in the wrong place.... now i think that i have to do
    > make world (I'doing)
    > I use 1024 instead of 2048.... I'm tryng


    But... how can I boot the new kernel?

  11. Re: Problem with amd lance driver on virtual box

    On Feb 12, 11:43 pm, axjsl...@gmail.com wrote:
    > On Feb 12, 10:17 pm, axjsl...@gmail.com wrote:
    >
    > > > but it's already 32... you think that have to be smaller again

    >
    > > sorry.... i read in the wrong place.... now i think that i have to do
    > > make world (I'doing)
    > > I use 1024 instead of 2048.... I'm tryng

    >
    > But... how can I boot the new kernel?


    Ok, I make boot my modified kernel version, but there was the same
    problem that give me the SmallMinix .....

    Assertion "0" failed, file lance.c, line 634
    eth_restart: sendrec to ethernet task XXXXX : -108


    So, now I think that the problem regarding expecially the driver
    Lance. Probably, the virtualbox staff use a diffrent version of amd-
    lance, instead of the version that use VMWARE. Know, I think there's
    no solution for the moment.... the only Idea was to contact the autor
    of the driver, but is unfindable.

  12. Re: Problem with amd lance driver on virtual box

    axjslack@gmail.com wrote:


    > I'm tryng kqemu (the version with kvm), but it compile in qemu-system-
    > ia64.... (I have a core 2 duo), and minix don't start on 64bit system
    > (I'm not sure about this, but, It doesent go after the boot select of
    > installation disc)


    QEmu and Minix do not agree on their interpretation of the PCI
    specification, causing trouble when booting Minix on QEmu. Try escaping ot
    the boot monitor by pressing "Esc" when asked what to boot, type
    "qemu_pci=1" and continue with "boot". If this works, you'll have to
    repeat this step when hard disk installation is complete, but you'll also
    have to type "save" in between "qemu_pci=1" and "boot" to make the changes
    permanent. See also elsewhere in this group.

    Another thing you might try is actually disabling the kqemu acceleration:
    I did not get Minix to boot with kqemu enabled, but it runs perfectly
    without it.

    Regards,

    Jens

    --
    Jens de Smit
    Student Computer Science | Vrije Universiteit Amsterdam
    jfdsmit@few.vu.nl | http://www.few.vu.nl/~jfdsmit
    "[In the end, people] get furious at IT that the goddamn magic isn't working"
    -- Stewart Dean

  13. Re: Problem with amd lance driver on virtual box

    In article ,
    J.F. de Smit wrote:
    >Another thing you might try is actually disabling the kqemu acceleration:
    >I did not get Minix to boot with kqemu enabled, but it runs perfectly
    >without it.


    That's because there is a bug in the emulation. Remove the halt instruction
    from the boot monitor, and it should work fine.

    (I don't know if anyone ever submitted a bug report to the kvm developers about
    this issue)


    --
    That was it. Done. The faulty Monk was turned out into the desert where it
    could believe what it liked, including the idea that it had been hard done
    by. It was allowed to keep its horse, since horses were so cheap to make.
    -- Douglas Adams in Dirk Gently's Holistic Detective Agency

  14. Re: Problem with amd lance driver on virtual box

    On Feb 13, 11:12 am, "J.F. de Smit" wrote:
    > axjsl...@gmail.com wrote:
    >
    >
    >
    > > I'm tryng kqemu (the version with kvm), but it compile in qemu-system-
    > > ia64.... (I have a core 2 duo), and minix don't start on 64bit system
    > > (I'm not sure about this, but, It doesent go after the boot select of
    > > installation disc)

    >
    > QEmu and Minix do not agree on their interpretation of the PCI
    > specification, causing trouble when booting Minix on QEmu. Try escaping ot
    > the boot monitor by pressing "Esc" when asked what to boot, type
    > "qemu_pci=1" and continue with "boot". If this works, you'll have to
    > repeat this step when hard disk installation is complete, but you'll also
    > have to type "save" in between "qemu_pci=1" and "boot" to make the changes
    > permanent. See also elsewhere in this group.
    >
    > Another thing you might try is actually disabling the kqemu acceleration:
    > I did not get Minix to boot with kqemu enabled, but it runs perfectly
    > without it.
    >
    > Regards,
    >
    > Jens
    >
    > --
    > Jens de Smit
    > Student Computer Science | Vrije Universiteit Amsterdam
    > jfds...@few.vu.nl |http://www.few.vu.nl/~jfdsmit
    > "[In the end, people] get furious at IT that the goddamn magic isn't working"
    > -- Stewart Dean


    I use kvm version of qemu, and if I boot without kvm module, I saw
    only the black screen, or, if I use it, I saw the boot selector, but
    I'm unable to do anything... it's blocked...
    With qemu_pci=1 it's the same.... nothing change..... I think it's a
    problem of cpu

  15. Re: Problem with amd lance driver on virtual box

    On 11 fév, 18:04, axjsl...@gmail.com wrote:
    > On Feb 11, 3:57 pm, "Bob Woodside" wrote:
    >
    >
    >
    > > wrote in message

    >
    > >news:1a4a27c4-6b67-4090-a9b4-5817b501b2f2@h11g2000prf.googlegroups.com...

    >
    > > > Hello... maybe you have already talk about this, but i didn't find
    > > > it.... I began some experiment on Minix 3.1.3a, but I have some
    > > > problems with Lance driver. I use Virtualbox (virtual machine), that
    > > > use the amd lance (PCnet) like network card. Now the problem is that
    > > > whe the system start give me some errors like this

    >
    > > > Starting services: random lance inetLANCE: DMA deneid beacause addres
    > > > out of range
    > > > osdep_eth_init:no ethernet device on task=35594,port=0
    > > > rth_set_ret_conf: waiting for device to appear
    > > > eth_ioctl: suspending NWIOGETHSTAT ioctl

    >
    > > Look at the Release Notes page under Known Bugs and Caveats:

    >
    > >http://www.minix3.org/download/releasenotes-3.1.3.html

    >
    > > You have to boot the "small" minix image to get the Lance driver to work
    > > (selection 2). With the small image, everything should work fine.

    >
    > > (I have the same problem, because I use VMware, and Lance is the only
    > > supported NIC emulated by VMware.)

    >
    > > - Bob

    >
    > Sorry, but is not true.... so the system tell me :
    >
    > Assertion "0" failed, file lance.c, line 634
    > eth_restart: sendrec to ethernet task XXXXX : -108


    I have networking working (sic) using the Lance driver under
    VirtualBox, if you're interested.
    Warning: I haven't really dug into the problem, this is just a dirty
    hack.

    What you need to do is edit lance.c and remove the offending
    assertion, iow change lines 632+ like this:
    - if (ec->ec_linmem != 0)
    - {
    - assert( 0 );
    - /*phys2seg(&ec->ec_memseg, &ec->ec_memoff, ec->ec_linmem);*/
    - }
    -
    -/* XXX */ if (ec->ec_linmem == 0) ec->ec_linmem= 0xFFFF0000;
    + ec->ec_linmem= 0xFFFF0000;

    Then recompile your system and reboot your new image. In order to
    avoid above mentioned DMA issues however, recompile a "small" image:
    # cd /usr/src/tools
    # make image_small
    # cp image_small /boot

    Usually, networking does not work further at boot than DHCP settings
    (no other packet will go in/out). However, killing the lance driver
    process does the trick (with a little help of the reincarnation
    server) and everything should work fine:
    # kill -9 60
    (Lance's pid is always 60 here)

    PS: Keep in mind the default VirtualBox network setting (NAT) does /
    not/ support ICMP pings when you'll want to test your new driver
    connectivity.

  16. Re: Problem with amd lance driver on virtual box

    On 18 Feb, 14:08, Iz wrote:
    > On 11 fév, 18:04, axjsl...@gmail.com wrote:
    >
    >
    >
    > > On Feb 11, 3:57 pm, "Bob Woodside" wrote:

    >
    > > > wrote in message

    >
    > > >news:1a4a27c4-6b67-4090-a9b4-5817b501b2f2@h11g2000prf.googlegroups.com....

    >
    > > > > Hello... maybe you have already talk about this, but i didn't find
    > > > > it.... I began some experiment on Minix 3.1.3a, but I have some
    > > > > problems with Lance driver. I use Virtualbox (virtual machine), that
    > > > > use the amd lance (PCnet) like network card. Now the problem is that
    > > > > whe the system start give me some errors like this

    >
    > > > > Starting services: random lance inetLANCE: DMA deneid beacause addres
    > > > > out of range
    > > > > osdep_eth_init:no ethernet device on task=35594,port=0
    > > > > rth_set_ret_conf: waiting for device to appear
    > > > > eth_ioctl: suspending NWIOGETHSTAT ioctl

    >
    > > > Look at the Release Notes page under Known Bugs and Caveats:

    >
    > > >http://www.minix3.org/download/releasenotes-3.1.3.html

    >
    > > > You have to boot the "small" minix image to get the Lance driver to work
    > > > (selection 2). With the small image, everything should work fine.

    >
    > > > (I have the same problem, because I use VMware, and Lance is the only
    > > > supported NIC emulated by VMware.)

    >
    > > > - Bob

    >
    > > Sorry, but is not true.... so the system tell me :

    >
    > > Assertion "0" failed, file lance.c, line 634
    > > eth_restart: sendrec to ethernet task XXXXX : -108

    >
    > I have networking working (sic) using the Lance driver under
    > VirtualBox, if you're interested.
    > Warning: I haven't really dug into the problem, this is just a dirty
    > hack.
    >
    > What you need to do is edit lance.c and remove the offending
    > assertion, iow change lines 632+ like this:
    > - if (ec->ec_linmem != 0)
    > - {
    > - assert( 0 );
    > - /*phys2seg(&ec->ec_memseg, &ec->ec_memoff, ec->ec_linmem);*/
    > - }
    > -
    > -/* XXX */ if (ec->ec_linmem == 0) ec->ec_linmem= 0xFFFF0000;
    > + ec->ec_linmem= 0xFFFF0000;
    >
    > Then recompile your system and reboot your new image. In order to
    > avoid above mentioned DMA issues however, recompile a "small" image:
    > # cd /usr/src/tools
    > # make image_small
    > # cp image_small /boot
    >
    > Usually, networking does not work further at boot than DHCP settings
    > (no other packet will go in/out). However, killing the lance driver
    > process does the trick (with a little help of the reincarnation
    > server) and everything should work fine:
    > # kill -9 60
    > (Lance's pid is always 60 here)
    >
    > PS: Keep in mind the default VirtualBox network setting (NAT) does /
    > not/ support ICMP pings when you'll want to test your new driver
    > connectivity.


    Is not really clear what I have to do, but I will try..... so...

    i have to remove this

    - if (ec->ec_linmem != 0)
    > - {
    > - assert( 0 );
    > - /*phys2seg(&ec->ec_memseg, &ec->ec_memoff, ec->ec_linmem);*/
    > - }
    > -
    > -/* XXX */ if (ec->ec_linmem == 0) ec->ec_linmem= 0xFFFF0000;


    and insert only this....

    ec->ec_linmem= 0xFFFF0000;

    right?
    Then I have to use minix_small.... but if it works i can try with the
    original image with the BF_HASH reduced.... isn't so?

  17. Re: Problem with amd lance driver on virtual box

    On 18 fév, 18:42, Axj Fsugitalia wrote:
    >
    > Is not really clear what I have to do, but I will try..... so...
    >
    > i have to remove this
    >
    > - if (ec->ec_linmem != 0)
    >
    > - {
    > - assert( 0 );
    > - /*phys2seg(&ec->ec_memseg, &ec->ec_memoff, ec->ec_linmem);*/
    > - }
    > -
    > -/* XXX */ if (ec->ec_linmem == 0) ec->ec_linmem= 0xFFFF0000;
    >
    > and insert only this....
    >
    > ec->ec_linmem= 0xFFFF0000;
    >
    > right?


    That's the idea.

    > Then I have to use minix_small....


    Yes.

    > but if it works i can try with the
    > original image with the BF_HASH reduced.... isn't so?


    Sure.

+ Reply to Thread