Jump to content
XPEnology Community

flyride

Moderator
  • Posts

    2,438
  • Joined

  • Last visited

  • Days Won

    127

Posts posted by flyride

  1. 2 minutes ago, alex.god007 said:

    Yeah, I think so. 

     

    tc@box:~$ dmesg | grep "DUMMY"
    [    0.270826] ata1: DUMMY
    [    0.270827] ata2: DUMMY
    tc@box:~$


    I think that is the problem that using M.2 PCI-E SSDs are using ATA1/2 ports and installation cannot be proceeded. I cannot disable SATA on M.2 - there is no option in BIOS.

    I have a really weird plan - maybe it will work? I can rebuild back NAS with old motherboard on Z270 chipset via ASRock mini itx z270 with 6 SATA ports in it and connect to them 4 disks + 2 SATA SSDs (that was used as SSD Cache). Then I'll create a new installation and try to migrate data. If it will be OK - I'll switch back to new motherboard with connected M.2 SSDs in it and loaded to needed platform with m.2 modules in it. Should it work?

     

    The DUMMY responses indicate that the motherboard has dual-use M.2 ports.  They can support SATA SSD's or NVMe.

    Any SATA port that is not configured for "hotplug" is disabled by the kernel. Any disabled port results in a DSM installation failure.

    The dual use ports have no BIOS provision for hotplug.  Thus there is no easy fix.

     

    Your idea of upgrade on another platform will probably work. There are a few other options you might consider that are outlined in the tutorial.

    https://xpenology.com/forum/topic/62221-tutorial-installmigrate-to-dsm-7x-with-tinycore-redpill-tcrp-loader/

     

    However, I strongly suggest you remove the SSD cache prior to ANY upgrade or migration, and then add it back in afterward.

  2. 32 minutes ago, alex.god007 said:

    Thanks for info. I was trying to create a new USB drive with 918+ loader with the same settings (except USB PID/VID + new generated S/N with MAC) but I'm getting only message that there are no disks in system.

    image.thumb.png.5caea992ca8546caf064d43845ec1543.png

    Using sataportmap in installation giving me an error that there is an error with disks 1 and 2.

     

    Really don't want to lose data that was created during DS3615xs installation and don't know what next steps I should do further with detecting disks on new platform 😃

     

    In fresh env of tinycore here is output of devices. Currently there is no ata1 and ata2 (only 4 SATA ports on this motherboard):

     

    lrwxrwxrwx  1 root root 0 Jun  5 16:40 sda -> ../devices/pci0000:00/0000:00:17.0/ata3/host2/target2:0:0/2:0:0:0/block/sda
    lrwxrwxrwx  1 root root 0 Jun  5 16:40 sdb -> ../devices/pci0000:00/0000:00:17.0/ata4/host3/target3:0:0/3:0:0:0/block/sdb
    lrwxrwxrwx  1 root root 0 Jun  5 16:40 sdc -> ../devices/pci0000:00/0000:00:17.0/ata5/host4/target4:0:0/4:0:0:0/block/sdc
    lrwxrwxrwx  1 root root 0 Jun  5 16:40 sdd -> ../devices/pci0000:00/0000:00:17.0/ata6/host5/target5:0:0/5:0:0:0/block/sdd

    lrwxrwxrwx  1 root root 0 Jun  5 16:40 nvme0n1 -> ../devices/pci0000:00/0000:00:1b.4/0000:04:00.0/nvme/nvme0/nvme0n1
    lrwxrwxrwx  1 root root 0 Jun  5 16:40 nvme1n1 -> ../devices/pci0000:00/0000:00:1d.0/0000:07:00.0/nvme/nvme1/nvme1n1
     

     

    I cannot read the Russian image, but I suspect you have a motherboard that is exhibiting a problem we don't fully have a solution for.

     

    From TinyCore, please post the result of

    dmesg | grep "DUMMY"

     

    And we can advise further.

  3. 14 minutes ago, Badger said:

    Ok so you're saying <yourplatform> refers to the current DSM "version" I'm running?  I just want to make sure.  Maybe it'll just error out, but I fear worse if I don't type the correct value here.  Maybe it's just semantic differences, but in other posts "platform" refers to the hardware (e.g. DS3622xs+.).  Then in a previous post on this page Loveburn (member) described a successfull manual update to 7.1 U2... with a postupdate command that specifies 7.0.1 42218.  Can you really make that jump?

     

    Review both links carefully, you should find the answers to your questions.

     

    https://xpenology.com/forum/topic/61634-dsm-7x-loaders-and-platforms/

    https://xpenology.com/forum/topic/62221-tutorial-installmigrate-to-dsm-7x-with-tinycore-redpill-tcrp-loader/

     

    • Like 1
  4. 5 hours ago, pocopico said:

    I understand that people are bored to type commands but there is critical information reported by rploader.sh. You have to always validate how critical is the information to the user before skipping.

     

    This comment really needs to be considered carefully. If we go back and look at Jun's 6.x loaders, the user was required to investigate and compute the values required for it to install successfully.  Now we have scripts to help guide the computations, but that does not absolve the user from evaluating and understanding the results.

     

    I appreciate @pocopico's approach to the problem by breaking the install into understandable components, and keeping the user invested in the technical decision making process.

    • Like 2
  5. identifyusb only sets VID/PID for the loader to know to substitute the usb flash drive as a synoboot device.

    ESXi is supposed to SATABOOT its loader so that is the reason for the message.

     

    You may have solved your problem simply with the passthrough configuration.  I can't see how identifyusb has any impact on a USB device that is not used as a loader.

     

    But glad things are working for you nonetheless.

  6. On 6/4/2022 at 4:01 AM, Deniska said:

     

    Yes, i use M2_2 slot for M2 Nvme disk. I tested Windows 10 early, it work properly.

    I don't have any SATA M2 disks, i have only one M2 NVME disk. But it interesting idea, thanks.

     

    Hm, i have read and tested many DiskIdxMap attribute and got nothing. On 7.0.1 loader satapormap was 60 by default. I thought "0" was about M2 disk or USB.

    But now i think good idea that ATA1 and ATA2 are M2_1 and M2_2 slots. 


    Could you share link with description of old tricks with internalportcfg, esataportcfg and usbportcfg? I will try to test any ideas.

     

     

    I have tested this extensively including "old tricks" and can duplicate the problem. The issue is that the kernel is flagging the port as unusable as a result of hardware initialization. This happens before any SATA initialization occurs (based on dmesg sequence).  The only setting I've found that changes the outcome is if SataPortMap is restricted to exclude the affected ports. This is only possible if the ports are not enumerated first in the controller (which is what you have).

     

    The tutorial now has options listed and cited below.

    https://xpenology.com/forum/topic/62221-tutorial-installmigrate-to-dsm-7x-with-tinycore-redpill-tcrp-loader/

     

    If the DSM installation reports Something went wrong/SATA ports disabled, it is usually because hotplug is not enabled for empty SATA ports that support hotplug. If supported, hotplug MUST be enabled or the port must have a disk attached. If the motherboard has M.2 SATA-capable ports, it can be impossible to configure them as hotplug even though the controller supports it. In that case, consider these workarounds/solutions:

    • install M.2 SATA SSDs in each of the M.2 SATA-capable slots
    • disable the M.2 SATA ports in the BIOS (if the option exists)
    • set SataPortMap to permanently exclude those ports (this only works if M.2 SATA are not the first ports on the controller)
    • set SataPortMap=1 for DSM installation, then rebuild loader with correct value (if M.2 SATA are not the first ports)
    • change the installation to a Device Tree platform
    • virtualize your DSM installation
    • Like 1
    • Thanks 1
  7. I can see what is probably an issue with the device tree.

     

    Port 1:

                    ahci {
                            pcie_root = "00:12.0";
                            ata_port = <0x00>;
                    };

     

    Port 2:

                    ahci {
                            pcie_root = "00:13.3,00.0";
                            ata_port = <0x02>;
                    };

    Port 3:

                    ahci {
                            pcie_root = "00:12.0";
                            ata_port = <0x02>;
                    };

    Port 4:

                    ahci {
                            pcie_root = "00:12.0";
                            ata_port = <0x03>;
                    };

     

    You have two different SATA controllers on that motherboard, each with 2 ports connected.

    The device tree port #1 is valid, but I think the rest of the ports are bad.  If I had to guess, I would configure them like this:

     

    Port 2:

                    ahci {
                            pcie_root = "00:12.0";
                            ata_port = <0x01>;
                    };

    Port 3:

                    ahci {
                            pcie_root = "00:13.3,00.0";
                            ata_port = <0x00>;
                    };

    Port 4:

                    ahci {
                            pcie_root = "00:13.3,00.0";
                            ata_port = <0x01>;

     

    The PCI address of the second controller might be wrong (I think 00:13.3,00.0 is the actual DS920+ second controller address).

    You might want to confirm its PCI address with

    lspci -d::106
    ls -la /sys/class/ata_port

     

    The device tree script is not very sophisticated yet, which is why the 7.x Loaders and Platforms matrix continues to suggest DS918+ as a preferred platform. The script only can provision ports that are populated at the time of the loader build. I'm guessing you only had one disk in the time of loader build, then you put in your second drive on the DSM install boot.

     

    You can fix this by booting into TinyCore, then:

    ./rploader.sh restoresession geminilake-7.x.x-xxxxx
    
    # edit the ds920+.dts file to reflect the port suggestions above
    vi /home/tc/redpill-load/custom/extensions/redpill-dtb/ds920p_xxxxx/model_ds920p.dtb
    
    ./rploader.sh clean
    ./rploader.sh build geminilake-7.x.x-xxxxx

     

    It shouldn't require a DSM reinstallation, just a loader rebuild.  If it worked, you will see the second drive in Storage Manager.  You'll need to add it to the array and resync.

  8. You are saying that you installed DSM to one of your array members, and went forward without a Migration install?

    That means that DSM told you it was going to erase your disk on install.  And if so, it did.

     

    If that's true, you no longer have an array set.  Is your data intact?

     

    Maybe post some screenshots of Storage Manager, and maybe a cat /proc/mdstat if this doesn't make sense.

  9. On 5/22/2022 at 11:47 PM, flyride said:

    Basic Troubleshooting

     

    If the DSM installation reports disabled SATA ports, it is usually because hotplug is not enabled on motherboard ports when hotplug is supportedM.2 SATA ports may not support hotplug while the physical ports do. In that case, consider these workarounds/solutions:

    • disable the M.2 SATA ports in the BIOS (if the option exists)
    • set SataPortMap to permanently exclude those ports (this only works if M.2 SATA are not the first ports on the controller)
    • set SataPortMap=1 for DSM installation, then rebuild loader with correct value (if M.2 SATA are not the first ports)
    • change the installation to a Device Tree platform
    • virtualize your DSM installation

     

    The above advice has been added to the TCRP tutorial.  I'm also adding satamap checks to alert on this before the loader is built.

     

    I was able to force the error on a virtual machine by using proxmox with USB loader plus SATA data drive, then manually setting the SataPortMap port count larger than the supported 6 ports. Kernel then flags ata7/8 as DUMMY, same as hotplug failure.

     

    I checked with boot parameter hddhotplug=1 which doesn't change anything in this case.

     

    47 minutes ago, vbz14216 said:

    H570M-ITX has 4 SATA ports and 2 M.2 slots: 1 M.2 slot is directly routed from the CPU(M2_1) but only available to 11th gen CPUs, another one is from PCH. There are 6 SATA ports available(max) to H570 according to Intel's specsheet and the board seems to route one of the unused port for M2_2(so SATA SSD can be supported) so I assume putting devices into that slot will change the state of those unused ports.

     

    I'm thinking about the old tricks with internalportcfg, esataportcfg and usbportcfg that allows you to convert the SATA ports into eSATA/USB drives(as recognized by DSM), maybe change the first 2 ports into eSATA/USB then DSM won't be complaining about internal disk as broken? But it's a complex conversion(hex/binary numbering involved and potentially DiskIdxMap attribute?).

     

    I am confident at this point that installing a SATA M.2 SSD in each slot will fix the port errors. Whether that is also true with a NVMe M.2 SSD is up to the motherboard implementation, but the issue is only when the SATA port is reported by the BIOS as empty.  The state is set by the Linux kernel interrogating the controller.  If hot plug is not supported on an empty SATA port, the port is permanently disabled for the session, and the DSM installer refuses to run if it sees any ports in this state.

     

    The M.2 SATA ports are not eSATA ports so I don't think twiddling with the bitmasks will help here.

     

    EDIT 1: reread your statement and I get what you are trying for now... will check!

    EDIT 2: sadly, portcfg happens well after the kernel query of the controller ports.  Tried both esata and usb. Good idea though.

  10. On 5/22/2022 at 11:47 PM, flyride said:

    Basic Troubleshooting

     

    If the DSM installation reports disabled SATA ports, it is usually because hotplug is not enabled on motherboard ports when hotplug is supported. If the motherboard has M.2 SATA-capable ports, they may not support hotplug while the physical ports do. In that case, consider these workarounds/solutions:

    • install M.2 SATA SSDs in each of the M.2 SATA-capable slots
    • disable the M.2 SATA ports in the BIOS (if the option exists)
    • set SataPortMap to permanently exclude those ports (this only works if M.2 SATA are not the first ports on the controller)
    • set SataPortMap=1 for DSM installation, then rebuild loader with correct value (if M.2 SATA are not the first ports)
    • change the installation to a Device Tree platform
    • virtualize your DSM installation
×
×
  • Create New...