• Register
    • Login
    • Search
    • Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    snp.efi on Acer TravelMate P2 (TMP215-52-36QZ) runs on No buffer space available

    Hardware Compatibility
    2
    11
    286
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • EduardoTSeoane
      EduardoTSeoane last edited by

      @george1421 @Sebastian-Roth @Fernando-Gietz

      On this computer only can start the boot secuence with snp.efi file, but it stucks downloading files like, “refind, refind.conf, bzimage”, I recompile the file using this command and using fog ipxe configuration files and fog ixpe script as you describe on blog:

      make bin-x86_64-efi/snp.efi EMBED=/root/git/ipxe-efi/src/ipxescript DEBUG=dhcp,device,efi_driver,efi_init, efi_pci, efi_snp,snp,snponly,snpnet,netdevice,http,tftp,nii

      and i get a lot of lines with this error.

      NETDEV net0 transmission 0x0 failed: Error 0x2a086089 (http://ipxe.org/2a086089)
      https://ipxe.org/err/2a0860

      on ipxe.org it tells “Error: No buffer space available”

      Can someone to help to fix it?

      EduardoTSeoane 1 Reply Last reply Reply Quote 0
      • EduardoTSeoane
        EduardoTSeoane @EduardoTSeoane last edited by EduardoTSeoane

        @eduardotseoane @sebastian-roth @george1421 @Fernando-Gietz

        Problem solved with last development ipxe.efi

        https://github.com/FOGProject/fogproject/tree/dev-branch/packages/tftp

        1 Reply Last reply Reply Quote 1
        • EduardoTSeoane
          EduardoTSeoane @Sebastian Roth last edited by

          @sebastian-roth For your knowledge, I submit the information that you provides me to ACER, it seems like they go to help us with this, I continue the post with the solution if we reach it, at the same time if you have time I like to continue with this problem…

          1 Reply Last reply Reply Quote 1
          • EduardoTSeoane
            EduardoTSeoane @Sebastian Roth last edited by

            @sebastian-roth Sugestion tested on production and don’t works, same fail results

            1 Reply Last reply Reply Quote 0
            • EduardoTSeoane
              EduardoTSeoane @Sebastian Roth last edited by EduardoTSeoane

              @sebastian-roth shrinked version compiling removing unnecesary elements on my instalation. Tested on production and dont works. Boot stuck conecting after boot.php or downloading bzImage/refind*/init.xz. I’ll try your suggestion…

              1 Reply Last reply Reply Quote 0
              • S
                Sebastian Roth Moderator last edited by

                @EduardoTSeoane Looking at the packet captures we see a fair amount of TCP Retransmission and TCP Window Full from the FOG server side as well as TCP Dup ACK from the host side. They all point to the receive buffer in iPXE being filled up because it’s not able to process the information fast enough. Very much sounds like an issue in the SNP (Simple Network Protocol) part of the UEFI firmware in this device.

                Ok at this moment I have a temporal solution compiling on rom-o-matic an shrinked version of the snp.efi and snponly.efi, need to do more tests but at this moment this seems to work.

                That sounds really interesting. What do you mean by “shrinked version”? Maybe it’s just the very latest version of iPXE that does not trigger the same behavior on this particular device. You can build iPXE binaries from the latest iPXE source code using the script you find in the fogproject directory utils/FOGiPXE/buildipxe.sh.

                Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                EduardoTSeoane 3 Replies Last reply Reply Quote 0
                • EduardoTSeoane
                  EduardoTSeoane @Sebastian Roth last edited by

                  @sebastian-roth @george1421 @Fernando-Gietz

                  Ok at this moment I have a temporal solution compiling on rom-o-matic an shrinked version of the snp.efi and snponly.efi, need to do more tests but at this moment this seems to work…

                  if it’s possible Iike to see what’s the problem really…

                  Here are the urls to configure and compile the files…

                  iPXE file for ACER Travelmate P2
                  Use this URL to directly retreive your binary for later use:

                  https://rom-o-matic.dev/build.fcgi?BINARY=snp.efi&BINDIR=bin-x86_64-efi&REVISION=master&DEBUG=&EMBED.00script.ipxe=%23!ipxe isset %24{net0/mac} %26%26 ifopen net0 %26%26 dhcp net0 || goto dhcpnet1 echo Received DHCP answer on interface net0 %26%26 goto proxycheck %3Adhcpnet1 isset %24{net1/mac} %26%26 ifopen net1 %26%26 dhcp net1 || goto dhcpnet2 echo Received DHCP answer on interface net1 %26%26 goto proxycheck %3Adhcpnet2 isset %24{net2/mac} %26%26 ifopen net2 %26%26 dhcp net2 || goto dhcpall echo Received DHCP anser on infterface net2 %26%26 goto proxycheck %3Adhcpall dhcp %26%26 goto proxycheck || goto dhcperror %3Adhcperror prompt --key s --timeout 10000 DHCP failed%2C hit 's' for the iPXE shell%3B reboot in 10 seconds %26%26 shell || reboot %3Aproxycheck isset %24{proxydhcp/next-server} %26%26 set next-server %24{proxydhcp/next-server} || goto nextservercheck %3Anextservercheck isset %24{next-server} %26%26 goto netboot || goto setserv %3Asetserv echo -n Please enter tftp server%3A %26%26 read next-server %26%26 goto netboot || goto setserv %3Anetboot chain tftp%3A//%24{next-server}/default.ipxe || prompt --key s --timeout 10000 Chainloading failed%2C hit 's' for the iPXE shell%3B reboot in 10 seconds %26%26 shell || reboot&console.h/CONSOLE_FRAMEBUFFER:=1&general.h/NET_PROTO_STP:=0&general.h/NET_PROTO_LACP:=0&general.h/NET_PROTO_EAPOL:=0&general.h/CRYPTO_80211_WEP:=0&general.h/CRYPTO_80211_WPA:=0&general.h/CRYPTO_80211_WPA2:=0&general.h/DNS_RESOLVER:=0&general.h/IMAGE_EFI:=1&general.h/IMAGE_DER:=0&general.h/IMAGE_PEM:=0&general.h/IWMGMT_CMD:=0&general.h/IBMGMT_CMD:=0&general.h/FCMGMT_CMD:=0&general.h/LOGIN_CMD:=0&general.h/SHELL_CMD:=0&general.h/REBOOT_CMD:=1&general.h/PCI_CMD:=1&general.h/PARAM_CMD:=1&general.h/NEIGHBOUR_CMD:=1&general.h/CONSOLE_CMD:=1&general.h/IPSTAT_CMD:=1&general.h/IMAGE_ARCHIVE_CMD:=0&general.h/VNIC_IPOIB:=0&general.h/TIVOLI_VMM_WORKAROUND:=0&branding.h/PRODUCT_NAME=IKASNOVA PXE BOOT&console.h/KEYBOARD_MAP=es&

                  Editable Configuration URL
                  Use this URL to adjust your binary’s setup:

                  https://rom-o-matic.dev/?BINARY=snp.efi&BINDIR=bin-x86_64-efi&REVISION=master&DEBUG=&EMBED.00script.ipxe=%23!ipxe isset %24{net0/mac} %26%26 ifopen net0 %26%26 dhcp net0 || goto dhcpnet1 echo Received DHCP answer on interface net0 %26%26 goto proxycheck %3Adhcpnet1 isset %24{net1/mac} %26%26 ifopen net1 %26%26 dhcp net1 || goto dhcpnet2 echo Received DHCP answer on interface net1 %26%26 goto proxycheck %3Adhcpnet2 isset %24{net2/mac} %26%26 ifopen net2 %26%26 dhcp net2 || goto dhcpall echo Received DHCP anser on infterface net2 %26%26 goto proxycheck %3Adhcpall dhcp %26%26 goto proxycheck || goto dhcperror %3Adhcperror prompt --key s --timeout 10000 DHCP failed%2C hit 's' for the iPXE shell%3B reboot in 10 seconds %26%26 shell || reboot %3Aproxycheck isset %24{proxydhcp/next-server} %26%26 set next-server %24{proxydhcp/next-server} || goto nextservercheck %3Anextservercheck isset %24{next-server} %26%26 goto netboot || goto setserv %3Asetserv echo -n Please enter tftp server%3A %26%26 read next-server %26%26 goto netboot || goto setserv %3Anetboot chain tftp%3A//%24{next-server}/default.ipxe || prompt --key s --timeout 10000 Chainloading failed%2C hit 's' for the iPXE shell%3B reboot in 10 seconds %26%26 shell || reboot&console.h/CONSOLE_FRAMEBUFFER:=1&general.h/NET_PROTO_STP:=0&general.h/NET_PROTO_LACP:=0&general.h/NET_PROTO_EAPOL:=0&general.h/CRYPTO_80211_WEP:=0&general.h/CRYPTO_80211_WPA:=0&general.h/CRYPTO_80211_WPA2:=0&general.h/DNS_RESOLVER:=0&general.h/IMAGE_EFI:=1&general.h/IMAGE_DER:=0&general.h/IMAGE_PEM:=0&general.h/IWMGMT_CMD:=0&general.h/IBMGMT_CMD:=0&general.h/FCMGMT_CMD:=0&general.h/LOGIN_CMD:=0&general.h/SHELL_CMD:=0&general.h/REBOOT_CMD:=1&general.h/PCI_CMD:=1&general.h/PARAM_CMD:=1&general.h/NEIGHBOUR_CMD:=1&general.h/CONSOLE_CMD:=1&general.h/IPSTAT_CMD:=1&general.h/IMAGE_ARCHIVE_CMD:=0&general.h/VNIC_IPOIB:=0&general.h/TIVOLI_VMM_WORKAROUND:=0&branding.h/PRODUCT_NAME=IKASNOVA PXE BOOT&console.h/KEYBOARD_MAP=es&

                  iPXE file for dynabook Satellite pro
                  Use this URL to directly retreive your binary for later use:

                  https://rom-o-matic.dev/build.fcgi?BINARY=snponly.efi&BINDIR=bin-x86_64-efi&REVISION=master&DEBUG=&EMBED.00script.ipxe=%23!ipxe isset %24{net0/mac} %26%26 ifopen net0 %26%26 dhcp net0 || goto dhcpnet1 echo Received DHCP answer on interface net0 %26%26 goto proxycheck %3Adhcpnet1 isset %24{net1/mac} %26%26 ifopen net1 %26%26 dhcp net1 || goto dhcpnet2 echo Received DHCP answer on interface net1 %26%26 goto proxycheck %3Adhcpnet2 isset %24{net2/mac} %26%26 ifopen net2 %26%26 dhcp net2 || goto dhcpall echo Received DHCP anser on infterface net2 %26%26 goto proxycheck %3Adhcpall dhcp %26%26 goto proxycheck || goto dhcperror %3Adhcperror prompt --key s --timeout 10000 DHCP failed%2C hit 's' for the iPXE shell%3B reboot in 10 seconds %26%26 shell || reboot %3Aproxycheck isset %24{proxydhcp/next-server} %26%26 set next-server %24{proxydhcp/next-server} || goto nextservercheck %3Anextservercheck isset %24{next-server} %26%26 goto netboot || goto setserv %3Asetserv echo -n Please enter tftp server%3A %26%26 read next-server %26%26 goto netboot || goto setserv %3Anetboot chain tftp%3A//%24{next-server}/default.ipxe || prompt --key s --timeout 10000 Chainloading failed%2C hit 's' for the iPXE shell%3B reboot in 10 seconds %26%26 shell || reboot&console.h/CONSOLE_FRAMEBUFFER:=1&general.h/NET_PROTO_STP:=0&general.h/NET_PROTO_LACP:=0&general.h/NET_PROTO_EAPOL:=0&general.h/CRYPTO_80211_WEP:=0&general.h/CRYPTO_80211_WPA:=0&general.h/CRYPTO_80211_WPA2:=0&general.h/DNS_RESOLVER:=0&general.h/IMAGE_EFI:=1&general.h/IMAGE_DER:=0&general.h/IMAGE_PEM:=0&general.h/IWMGMT_CMD:=0&general.h/IBMGMT_CMD:=0&general.h/FCMGMT_CMD:=0&general.h/LOGIN_CMD:=0&general.h/SHELL_CMD:=0&general.h/REBOOT_CMD:=1&general.h/PCI_CMD:=1&general.h/PARAM_CMD:=1&general.h/NEIGHBOUR_CMD:=1&general.h/CONSOLE_CMD:=1&general.h/IPSTAT_CMD:=1&general.h/IMAGE_ARCHIVE_CMD:=0&general.h/VNIC_IPOIB:=0&general.h/TIVOLI_VMM_WORKAROUND:=0&branding.h/PRODUCT_NAME=IKASNOVA PXE BOOT&console.h/KEYBOARD_MAP=es&

                  Editable Configuration URL
                  Use this URL to adjust your binary’s setup:

                  https://rom-o-matic.dev/?BINARY=snponly.efi&BINDIR=bin-x86_64-efi&REVISION=master&DEBUG=&EMBED.00script.ipxe=%23!ipxe isset %24{net0/mac} %26%26 ifopen net0 %26%26 dhcp net0 || goto dhcpnet1 echo Received DHCP answer on interface net0 %26%26 goto proxycheck %3Adhcpnet1 isset %24{net1/mac} %26%26 ifopen net1 %26%26 dhcp net1 || goto dhcpnet2 echo Received DHCP answer on interface net1 %26%26 goto proxycheck %3Adhcpnet2 isset %24{net2/mac} %26%26 ifopen net2 %26%26 dhcp net2 || goto dhcpall echo Received DHCP anser on infterface net2 %26%26 goto proxycheck %3Adhcpall dhcp %26%26 goto proxycheck || goto dhcperror %3Adhcperror prompt --key s --timeout 10000 DHCP failed%2C hit 's' for the iPXE shell%3B reboot in 10 seconds %26%26 shell || reboot %3Aproxycheck isset %24{proxydhcp/next-server} %26%26 set next-server %24{proxydhcp/next-server} || goto nextservercheck %3Anextservercheck isset %24{next-server} %26%26 goto netboot || goto setserv %3Asetserv echo -n Please enter tftp server%3A %26%26 read next-server %26%26 goto netboot || goto setserv %3Anetboot chain tftp%3A//%24{next-server}/default.ipxe || prompt --key s --timeout 10000 Chainloading failed%2C hit 's' for the iPXE shell%3B reboot in 10 seconds %26%26 shell || reboot&console.h/CONSOLE_FRAMEBUFFER:=1&general.h/NET_PROTO_STP:=0&general.h/NET_PROTO_LACP:=0&general.h/NET_PROTO_EAPOL:=0&general.h/CRYPTO_80211_WEP:=0&general.h/CRYPTO_80211_WPA:=0&general.h/CRYPTO_80211_WPA2:=0&general.h/DNS_RESOLVER:=0&general.h/IMAGE_EFI:=1&general.h/IMAGE_DER:=0&general.h/IMAGE_PEM:=0&general.h/IWMGMT_CMD:=0&general.h/IBMGMT_CMD:=0&general.h/FCMGMT_CMD:=0&general.h/LOGIN_CMD:=0&general.h/SHELL_CMD:=0&general.h/REBOOT_CMD:=1&general.h/PCI_CMD:=1&general.h/PARAM_CMD:=1&general.h/NEIGHBOUR_CMD:=1&general.h/CONSOLE_CMD:=1&general.h/IPSTAT_CMD:=1&general.h/IMAGE_ARCHIVE_CMD:=0&general.h/VNIC_IPOIB:=0&general.h/TIVOLI_VMM_WORKAROUND:=0&branding.h/PRODUCT_NAME=IKASNOVA PXE BOOT&console.h/KEYBOARD_MAP=es&

                  1 Reply Last reply Reply Quote 0
                  • EduardoTSeoane
                    EduardoTSeoane @Sebastian Roth last edited by

                    @sebastian-roth
                    with out debug enable:
                    error image
                    https://drive.google.com/file/d/1qimuEy1fm0FuWarHYIpMVu_hlVWEegLR/view?usp=sharing
                    pcapfile:
                    https://drive.google.com/file/d/1jp3N9LhPmeZQqQR-rj-Tx2ZfPJW8s3BW/view?usp=sharing

                    with debug enable too big:
                    Video of boot proc…

                    https://drive.google.com/file/d/1BspHvH-nsBWBbhx4uDfofQcSQLj96rWJ/view?usp=sharing

                    tcpdump result:
                    https://drive.google.com/file/d/1c7KyZHbCJTbWcfpKNtXak0qNxBSloxyX/view?usp=sharing

                    With debug always end but it last at more than 15mins downloading files.

                    1 Reply Last reply Reply Quote 0
                    • S
                      Sebastian Roth Moderator last edited by

                      @eduardotseoane I would try those: DEBUG=snp,snponly,snpnet,netdevice

                      Looking at the code on where netdev_tx_defer (code ref) is actually called I would think it happens in the snpnet_transmit call (code ref). So with snpnet in the DEBUG I am wondering if you see messages like SNP net0 could not transmit: ... in the debug output?

                      Are you good with tcpdump/Wireshark packet capturing? I’d suggest you install tcpdump package on your FOG server and run tcpdump -w /tmp/bootissue.pcap port 80 on your FOG server (as root) while you try to PXE boot the machine. Best you make sure there is no one using the FOG web UI and no other machines PXE booting because that would just fill up the file a lot with information we don’t want. Leave that command waiting on the console until you get the iPXE error. Then stop it (ctrl+c). Now copy the bootissue.pcap file to your PC and upload to a file share and post a link here.

                      Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                      Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                      EduardoTSeoane 2 Replies Last reply Reply Quote 0
                      • EduardoTSeoane
                        EduardoTSeoane @Sebastian Roth last edited by

                        @sebastian-roth another notebook with snp.efi, this moel is a Toshiba satellite C40-G-126 same problem stuck downloading bzImage…

                        on the two models same problem with snponly.efi

                        with ipxe.efi on this models i retrieved “no configuration methods”, same with realtek.efi
                        intel.efi not load

                        I do a bad experiment unloading protocols, and i get into load but with a lot of diferent errors and with a delay of minutes…

                        Can you suggestme a DEBUG= line to be more clear?

                        1 Reply Last reply Reply Quote 0
                        • S
                          Sebastian Roth Moderator last edited by

                          @EduardoTSeoane Adding the debugging output is definitely a good start to look into this. Following the links you posted and looking at the iPXE code (function netdev_tx_defer in netdevice.c) it seems like this happens because of packets not being send out properly. The comment above this function says:

                          Drivers may call netdev_tx_defer() if there is insufficient space
                          in the transmit descriptor ring. Any packets deferred in this way
                          will be automatically retransmitted as soon as space becomes
                          available (i.e. as soon as the driver calls netdev_tx_complete()).

                          As snp.efi is known to work on many other devices I can only see this to be a firmware issue on this particular device. What happens if you use ipxe.efi?

                          I might suggest you leave out some parts of the DEBUG= parameter to narrow down why it’s not sending the packets properly. I would think you can leave out all of the efi ones as well as the higher layer protocols like dhcp,http,tftp.

                          In the end you will probably need to post on the iPXE developers list to get further help.

                          Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                          Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                          EduardoTSeoane 1 Reply Last reply Reply Quote 0
                          • 1 / 1
                          • First post
                            Last post

                          111
                          Online

                          10.4k
                          Users

                          16.4k
                          Topics

                          150.6k
                          Posts

                          Copyright © 2012-2023 FOG Project