Lenovo X1 Yoga 1st gen with OneLink+

  • Attempting to capture an image. I was finally able to get the system to initiate a PXE boot, but it initially said that it couldn’t find an ethernet adapter once the kernel loads. This was an indication that the kernel didn’t have the proper driver for the ethernet adapter on the OneLink+. After I updated to a newer kernel, I now get a kernel panic using 4.16.6 indicating it was unable to process the init file.

    I’m not really a well versed Linux admin (mostly a Windows user) but I was able to get several other systems imaged with no problems. Any help would be appreciated.

  • I didn’t see the option for a hardware compatibility test on the iPXE menu, so I tried the option for “client system information (compatibility)”.

    It was unable to find the NIC as well.

  • Moderator

    @texturtle said in Lenovo X1 Yoga 1st gen with OneLink+:

    Hardware ID in dev mgr: USB\VID_17EF&PID_3504&REV_3001 and USB\VID_17EF&PID_3504

    OK that is good enough, to translate that into a linux vendor code it would be [17EF:3504]

    Just for grins on that system. If its registered with fog. Go to the host configuration for that system and add the following kernel argument. has_usb_nic=1 and then try to pxe boot into the iPXE menu and pick hardware compatibility test.

  • First, thank you for your assistance.

    So I tried this, but it only listed the wireless NIC. So I tried again just using “lspci -nn” and the only thing it lists for a “Realtek” device is the PCI express card reader, it doesn’t seem to list the NIC at all.
    So I went into Windows to check on the device manager. Device manager lists it as “ThinkPad OneLink Plus Dock Ethernet” and it shows up as a USB Ethernet adapter.

    Hardware ID in dev mgr: USB\VID_17EF&PID_3504&REV_3001 and USB\VID_17EF&PID_3504

    It does not list a Vendor ID.
    Manufacturer is Realtek.

    Model: ThinkPad OneLink+
    Model number: DU9047S1

  • Moderator

    @texturtle The kernel panic (as I understand what Tom posted) is the x86 and x64 kernels got mixed up during publishing. (again this is how I understood what was posted) So you were actually attempting to boot a 32bit kernel against a 64bit disk image, which caused the panic.

    So the Onelink adapter is not being detected by FOS…
    OK you can either do this from a running windows system or configure a debug session in FOG.

    Lets collect the vendor ID and hardware ID of this network adapter. In windows its pretty easy via the device manager, In FOS its not too bad either.

    So for FOS,

    1. manually register this system.
    2. Schedule a capture or deploy job, it doesn’t matter. But before you submit the task select the debug checkbox. Then submit the job.
    3. PXE boot the target computer
    4. After a few key presses you should be dropped to a linux command prompt
    5. Key in lspci -nn|grep etw That should list out all of the network adapters. What the developers will need is the vendor ID shown there. It should be in the form of this [8086:4421] (totally made up number). But with that vendor ID the developers can check to see if there are linux kernel drivers available for that system.

    We should probably also capture any model numbers of that network adapter (or dock as it were) for future reference.

  • Interesting. Now, this morning, after downloading the 4.16.6 kernel again it is no longer causing a kernel panic, but it also indicates that it can’t find a network interface.

  • Sorry, when I try kernel 4.15.2 I get to the Fog menu, but when it loads the kernel to start host registration it can’t find a network adapter. If I update to the latest available, 4.16.6, I get a kernel panic.

  • Moderator

    This post may be related to your kernel update error: https://forums.fogproject.org/topic/11863/starting-init-sbin-init-exists-but-couldn-t-execute-it-error-8/5

    When you say “the kernel didn’t have the proper driver for the ethernet adapter on the OneLink”, which kernel do you speak of? Do you get to the FOG iPXE menu? If you don’t then its an iPXE boot loader issue. If you get to the FOG iPXE menu but FOS can’t detect an IP address then its the bzImage kernel.