On Mon, 2017-11-27 at 18:18 -0500, Gene Cumm wrote:> CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe. > > > On Mon, Nov 27, 2017 at 6:07 PM, Joakim Tjernlund > <Joakim.Tjernlund at infinera.com> wrote: > > On Mon, 2017-11-27 at 18:03 -0500, Gene Cumm wrote: > > > On Mon, Nov 27, 2017 at 2:14 PM, Gene Cumm <gene.cumm at gmail.com> wrote: > > > > On Mon, Nov 27, 2017 at 12:07 PM, Joakim Tjernlund > > > > <Joakim.Tjernlund at infinera.com> wrote: > > > > > On Mon, 2017-11-27 at 08:42 -0500, Gene Cumm wrote: > > > > > > Bringing the discussion to the list. > > > > > > > > > > > > You stated you see the following on your Lenovo ThinkPad T470s with > > > > > > UEFI firmware N1WET41W (1.20 date: 10/17/2017): > > > > > > > > > > > > > > > > > > core_udp_sendto: stalling on configure with no mapping > > > > > > > > > > > > > > > > > > OUI 54-E1-AD > > > > > > > > > > > > lspci -s 0:1f.6 -v > > > > > > 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (4) > > > > > > I219-V (rev 21) > > > > > > Subsystem: Lenovo Ethernet Connection (4) I219-V > > > > > > Flags: bus master, fast devsel, latency 0, IRQ 125 > > > > > > Memory at dc200000 (32-bit, non-prefetchable) [size=128K] > > > > > > Capabilities: [c8] Power Management version 3 > > > > > > Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+ > > > > > > Capabilities: [e0] PCI Advanced Features > > > > > > Kernel driver in use: e1000e > > > > > > Kernel modules: e1000e > > > > > > > > > > > > This might be the only wired NIC but there's possibly multiple device > > > > > > handles to it and possibly a device handle to the wrong NIC > > > > > > (wireless). > > > > > > > > > > > > In your EFI shell (hopefully you have such an option): > > > > > > > > > > > > version > fs0:\efi-ver.txt > > > > > > dh -p Net > fs0:\efi-dh-net.txt > > > > > > > > > > > > Feel free to run it without the redirect (">") to see the results > > > > > > yourself. The redirects would help if you can access the files so you > > > > > > don't need to manually transcribe the output. > > > > > > > > > > > > Here's some other UEFI Shell commands that may be of use: > > > > > > > > > > > > guid > fs0:\efi-guid.txt > > > > > > or alias > fs0:\efi-alias.txt > > > > > > dh > fs0:\efi-dh.txt > > > > > > > > > > Managed to install an EFI shell from here: > > > > > https://github.com/tianocore/edk2/blob/master/ShellBinPkg/UefiShell/X64/Shell.efi > > > > > > > > > > and got a dh > dh.txt > > > > > I don't know what to do with this info so attaching it here. > > > > > > > > Ok. Different GUID aliases. Line 1381 says what I see as "Net" you > > > > likely see as "SimpleNetwork". This handle has the necessary > > > > "UDPv4ServiceBinding" (I see as "UDPv4Sb"). > > > > > > > > Thanks for the excellent data. It's been a while since I looked at > > > > the handle search code to debug this. > > > > > > Did you ever see a "disable UseDefaultAddress" message? The code > > > should have printed those original messages dump the new message then > > > try again at doing the network transaction. > > > > Yes, that was the last message I think. Then, after a while, it rebooted. > > I figured the names(Net vs. SimpleNetwork) to search for was standardized? > > That's a partially good thing. This says it tried to bind UDP where > we got PXE, failed, hunted for something that provides UDP on the same > MAC, found it, attempted to use the UseDefaultAddress flag, failed to > configure, and fell back to attempting to manually configure the > entire UDP datagram. At this point, it should have just worked. > > The aliases/names aren't entirely standardized and it's just a > friendly name for the GUID (which is standardized). The aliases could > easily be localized though I believe there's only 2 common groups, the > two we see here. > > Did you happen to peek at the version command? I'm guessing it's > saying 2.0 since the UDPv4Sb is not on the same handle as the PxeBc.Gene, I am curious, do you have an idea how to fix this? Jocke
On Tue, Nov 28, 2017 at 2:38 PM, Joakim Tjernlund <Joakim.Tjernlund at infinera.com> wrote:> On Mon, 2017-11-27 at 18:18 -0500, Gene Cumm wrote:>> On Mon, Nov 27, 2017 at 6:07 PM, Joakim Tjernlund >> <Joakim.Tjernlund at infinera.com> wrote: >> > On Mon, 2017-11-27 at 18:03 -0500, Gene Cumm wrote: >> > > On Mon, Nov 27, 2017 at 2:14 PM, Gene Cumm <gene.cumm at gmail.com> wrote: >> > > > On Mon, Nov 27, 2017 at 12:07 PM, Joakim Tjernlund >> > > > <Joakim.Tjernlund at infinera.com> wrote: >> > > > > On Mon, 2017-11-27 at 08:42 -0500, Gene Cumm wrote: >> > > > > > Bringing the discussion to the list. >> > > > > > >> > > > > > You stated you see the following on your Lenovo ThinkPad T470s with >> > > > > > UEFI firmware N1WET41W (1.20 date: 10/17/2017): >> > > > > > >> > > > > > >> > > > > > core_udp_sendto: stalling on configure with no mapping >> > > > > > >> > > > > > >> > > > > > OUI 54-E1-AD >> > > > > > >> > > > > > lspci -s 0:1f.6 -v >> > > > > > 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (4) >> > > > > > I219-V (rev 21) >> > > > > > Subsystem: Lenovo Ethernet Connection (4) I219-V >> > > > > > Flags: bus master, fast devsel, latency 0, IRQ 125 >> > > > > > Memory at dc200000 (32-bit, non-prefetchable) [size=128K] >> > > > > > Capabilities: [c8] Power Management version 3 >> > > > > > Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+ >> > > > > > Capabilities: [e0] PCI Advanced Features >> > > > > > Kernel driver in use: e1000e >> > > > > > Kernel modules: e1000e >> > > > > > >> > > > > > This might be the only wired NIC but there's possibly multiple device >> > > > > > handles to it and possibly a device handle to the wrong NIC >> > > > > > (wireless). >> > > > > > >> > > > > > In your EFI shell (hopefully you have such an option): >> > > > > > >> > > > > > version > fs0:\efi-ver.txt >> > > > > > dh -p Net > fs0:\efi-dh-net.txt >> > > > > > >> > > > > > Feel free to run it without the redirect (">") to see the results >> > > > > > yourself. The redirects would help if you can access the files so you >> > > > > > don't need to manually transcribe the output. >> > > > > > >> > > > > > Here's some other UEFI Shell commands that may be of use: >> > > > > > >> > > > > > guid > fs0:\efi-guid.txt >> > > > > > or alias > fs0:\efi-alias.txt >> > > > > > dh > fs0:\efi-dh.txt >> > > > > >> > > > > Managed to install an EFI shell from here: >> > > > > https://github.com/tianocore/edk2/blob/master/ShellBinPkg/UefiShell/X64/Shell.efi >> > > > > >> > > > > and got a dh > dh.txt >> > > > > I don't know what to do with this info so attaching it here. >> > > > >> > > > Ok. Different GUID aliases. Line 1381 says what I see as "Net" you >> > > > likely see as "SimpleNetwork". This handle has the necessary >> > > > "UDPv4ServiceBinding" (I see as "UDPv4Sb"). >> > > > >> > > > Thanks for the excellent data. It's been a while since I looked at >> > > > the handle search code to debug this. >> > > >> > > Did you ever see a "disable UseDefaultAddress" message? The code >> > > should have printed those original messages dump the new message then >> > > try again at doing the network transaction. >> > >> > Yes, that was the last message I think. Then, after a while, it rebooted. >> > I figured the names(Net vs. SimpleNetwork) to search for was standardized? >> >> That's a partially good thing. This says it tried to bind UDP where >> we got PXE, failed, hunted for something that provides UDP on the same >> MAC, found it, attempted to use the UseDefaultAddress flag, failed to >> configure, and fell back to attempting to manually configure the >> entire UDP datagram. At this point, it should have just worked. >> >> The aliases/names aren't entirely standardized and it's just a >> friendly name for the GUID (which is standardized). The aliases could >> easily be localized though I believe there's only 2 common groups, the >> two we see here. >> >> Did you happen to peek at the version command? I'm guessing it's >> saying 2.0 since the UDPv4Sb is not on the same handle as the PxeBc. > > Gene, I am curious, do you have an idea how to fix this?Yes, I have an idea but I need to add some debug code so I can understand more how your particular machine is behaving. -- -Gene
On Wed, Nov 29, 2017 at 6:30 AM, Gene Cumm <gene.cumm at gmail.com> wrote:> On Tue, Nov 28, 2017 at 2:38 PM, Joakim Tjernlund > <Joakim.Tjernlund at infinera.com> wrote: >> On Mon, 2017-11-27 at 18:18 -0500, Gene Cumm wrote: > >>> On Mon, Nov 27, 2017 at 6:07 PM, Joakim Tjernlund >>> <Joakim.Tjernlund at infinera.com> wrote: >>> > On Mon, 2017-11-27 at 18:03 -0500, Gene Cumm wrote: >>> > > On Mon, Nov 27, 2017 at 2:14 PM, Gene Cumm <gene.cumm at gmail.com> wrote: >>> > > > On Mon, Nov 27, 2017 at 12:07 PM, Joakim Tjernlund >>> > > > <Joakim.Tjernlund at infinera.com> wrote: >>> > > > > On Mon, 2017-11-27 at 08:42 -0500, Gene Cumm wrote: >>> > > > > > Bringing the discussion to the list. >>> > > > > > >>> > > > > > You stated you see the following on your Lenovo ThinkPad T470s with >>> > > > > > UEFI firmware N1WET41W (1.20 date: 10/17/2017): >>> > > > > > >>> > > > > > >>> > > > > > core_udp_sendto: stalling on configure with no mapping >>> > > > > > >>> > > > > > >>> > > > > > OUI 54-E1-AD >>> > > > > > >>> > > > > > lspci -s 0:1f.6 -v >>> > > > > > 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (4) >>> > > > > > I219-V (rev 21) >>> > > > > > Subsystem: Lenovo Ethernet Connection (4) I219-V >>> > > > > > Flags: bus master, fast devsel, latency 0, IRQ 125 >>> > > > > > Memory at dc200000 (32-bit, non-prefetchable) [size=128K] >>> > > > > > Capabilities: [c8] Power Management version 3 >>> > > > > > Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+ >>> > > > > > Capabilities: [e0] PCI Advanced Features >>> > > > > > Kernel driver in use: e1000e >>> > > > > > Kernel modules: e1000e >>> > > > > > >>> > > > > > This might be the only wired NIC but there's possibly multiple device >>> > > > > > handles to it and possibly a device handle to the wrong NIC >>> > > > > > (wireless). >>> > > > > > >>> > > > > > In your EFI shell (hopefully you have such an option): >>> > > > > > >>> > > > > > version > fs0:\efi-ver.txt >>> > > > > > dh -p Net > fs0:\efi-dh-net.txt >>> > > > > > >>> > > > > > Feel free to run it without the redirect (">") to see the results >>> > > > > > yourself. The redirects would help if you can access the files so you >>> > > > > > don't need to manually transcribe the output. >>> > > > > > >>> > > > > > Here's some other UEFI Shell commands that may be of use: >>> > > > > > >>> > > > > > guid > fs0:\efi-guid.txt >>> > > > > > or alias > fs0:\efi-alias.txt >>> > > > > > dh > fs0:\efi-dh.txt >>> > > > > >>> > > > > Managed to install an EFI shell from here: >>> > > > > https://github.com/tianocore/edk2/blob/master/ShellBinPkg/UefiShell/X64/Shell.efi >>> > > > > >>> > > > > and got a dh > dh.txt >>> > > > > I don't know what to do with this info so attaching it here. >>> > > > >>> > > > Ok. Different GUID aliases. Line 1381 says what I see as "Net" you >>> > > > likely see as "SimpleNetwork". This handle has the necessary >>> > > > "UDPv4ServiceBinding" (I see as "UDPv4Sb"). >>> > > > >>> > > > Thanks for the excellent data. It's been a while since I looked at >>> > > > the handle search code to debug this. >>> > > >>> > > Did you ever see a "disable UseDefaultAddress" message? The code >>> > > should have printed those original messages dump the new message then >>> > > try again at doing the network transaction. >>> > >>> > Yes, that was the last message I think. Then, after a while, it rebooted. >>> > I figured the names(Net vs. SimpleNetwork) to search for was standardized? >>> >>> That's a partially good thing. This says it tried to bind UDP where >>> we got PXE, failed, hunted for something that provides UDP on the same >>> MAC, found it, attempted to use the UseDefaultAddress flag, failed to >>> configure, and fell back to attempting to manually configure the >>> entire UDP datagram. At this point, it should have just worked. >>> >>> The aliases/names aren't entirely standardized and it's just a >>> friendly name for the GUID (which is standardized). The aliases could >>> easily be localized though I believe there's only 2 common groups, the >>> two we see here. >>> >>> Did you happen to peek at the version command? I'm guessing it's >>> saying 2.0 since the UDPv4Sb is not on the same handle as the PxeBc. >> >> Gene, I am curious, do you have an idea how to fix this? > > Yes, I have an idea but I need to add some debug code so I can > understand more how your particular machine is behaving. > > -- > -GeneOn Tue, Nov 28, 2017 at 6:45 AM, Joakim Tjernlund via Syslinux <syslinux at zytor.com> wrote:> But I have tried older versions too. Seems my Lenovo EFI is too "modern" for syslinux > but I think Gene has an idea how to solve it.Too modern? Nope, again, broken. A PxeBc should be atop a MNPSb atop a Net. (EDK shell uses the short names for the GUIDs; EDK2 shell uses longer names). Yours has PxeBc atop a Net with MNPSb on another handle. This is not the first and doubtfully the last we'll encounter. UEFI-2.0 allows this but starting in UEFI-2.1, it MUST live atop an MNPSb. I'm still trying to build something that'll print the paths but strangely having issues. On Mon, Nov 27, 2017 at 6:39 PM, Joakim Tjernlund <Joakim.Tjernlund at infinera.com> wrote:> Fond an old boot logg: > [ 0.000000] efi: EFI v2.50 by Lenovo > [ 0.000000] efi: SMBIOS=0x6f098000 SMBIOS 3.0=0x6f095000 ACPI=0x6fffe000 ACPI 2.0=0x6fffe014 MPS=0x6f468000 ESRT=0x6eb33000 MEMATTR=0x6976d018 > [ 0.000000] ACPI: UEFI 0x000000006FF53000 000042 (v01 LENOVO TP-N1W 00001200 PTEC 00000002) > [ 0.000000] ACPI: UEFI 0x000000006FF39000 00013E (v01 LENOVO TP-N1W 00001200 PTEC 00000002)It sure doesn't look 2.5 compliant to me. Merely adding the new stuff from a new UEFI spec version doesn't mean it's compliant with the current nor previous versions. If I'm wrong, I'd love to hear especially from the author or someone with first-hand knowledge. -- -Gene