Jump to content
XPEnology Community

TinyCore RedPill Loader (TCRP)


pocopico

Recommended Posts

1 hour ago, VenimK said:

I'm using now Jun's loader 1.4

With latest DSM version 6,1,7-15284-update 3

 

Can I upgrade to DSM 7.1 with the Redpill

and wich pack to choose x3615 ????

 

Schermafbeelding 2022-04-30 om 07.50.28.png

I think you can but you need to remember that this is still in development stage. Please do a backup of your data. 

Please start from here:

 

https://xpenology.com/forum/topic/60130-redpill-tinycore-loader-installation-guide-for-dsm-71-baremetal/

 

 

Link to comment
Share on other sites

3 minutes ago, MajkelP said:

I think you can but you need to remember that this is still in development stage. Please do a backup of your data. 

Please start from here:

 

https://xpenology.com/forum/topic/60130-redpill-tinycore-loader-installation-guide-for-dsm-71-baremetal/

 

 

 

ds3615xs was announced as the last supported version of dsm 7.1.
I recommend migration to ds3622xs+, which is currently the most stable and compatible with ds3615xs.

Link to comment
Share on other sites

m shell (m.sh / my.sh / myv.sh) This is today's version upgrade.

Option processing function has been added as shown in the help below.

 

Please refer to the pre-shared post below for the purpose of each script.

 

 

Usage: ./my.sh <Synology Model Name> <Options>

 

Options: noconfig, noclean, manual

 

- noconfig: SKIP automatic detection change processing such as SN/Mac/Vid/Pid/SataPortMap of user_config.json file.

 

- noclean: SKIP the 💊   RedPill LKM/LOAD directory without clearing it with the Clean now command. 
           However, m shell delete the Cache directory and loader.img.

 

- manual: Options for manual extension processing and manual dtc processing in build action (skipping extension auto detection)

 

Please type Synology Model Name after ./my.sh

 

./my.sh DS918+
./my.sh DS3617xs
./my.sh DS3615xs
./my.sh DS3622xs+
./my.sh DVA3221
./my.sh DS920+
./my.sh DS1621+

Edited by Peter Suh
  • Like 2
Link to comment
Share on other sites

Peter Suh

 

wonder if this warning is normal or how i can get without this warning please

 

[!] Extension is already added (index exists at /home/tc/redpill-load/custom/extensions/pocopico.vmxnet3/pocopico.vmxnet3.json). For more info use "ext-manager.sh info pocopico.vmxnet3"

*** Process will exit ***

 

 

 

[#] Update URL: https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json
[#] Platforms supported: ds1621p_42218 ds918p_41890 dva3221_42661 ds3617xs_42621 ds3617xs_42218 ds920p_42661 ds918p_42661 ds1621p_42661 ds918p_25556 dva3221_42218 ds3615xs_42661 ds3622xsp_42661 ds3622xsp_42218 dva3221_42621 ds3615xs_41222 ds918p_42621 ds3617xs_42661 ds3615xs_25556 ds920p_42218 ds920p_42621 ds918p_42218 ds1621p_42621 ds3615xs_42621 ds3615xs_42218 ds3622xsp_42621
[#] =======================================================================================

Found Ethernet Interface : pciid 15add000007b0 Required Extension : vmxnet3
Searching for matching extension for vmxnet3
Found matching extension :
"https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json"
[#] Checking runtime for required tools... [OK]
[#] Adding new extension from https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json...
[#] Downloading remote file https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json to /home/tc/redpill-load/custom/extensions/_new_ext_index.tmp_json
######################################################################## 100.0%

[!] Extension is already added (index exists at /home/tc/redpill-load/custom/extensions/pocopico.vmxnet3/pocopico.vmxnet3.json). For more info use "ext-manager.sh info pocopico.vmxnet3"

*** Process will exit ***
Found Ethernet Interface : pciid 15add000007b0 Required Extension : vmxnet3
Searching for matching extension for vmxnet3
Found matching extension :
"https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json"
------------------------------------------------------------------------------------------------
Starting loader creation
Found tinycore cache folder, linking to home/tc/custom-module
Checking user_config.json : Done
Entering redpill-load directory
Removing bundled exts directories
Cache directory OK
Found build request for revision greater than 42218
Getting required extraction tool
------------------------------------------------------------------
Checking tinycore cache folder
Found tinycore cache folder, linking to home/tc/custom-module
Creating temp folder /tmp/synoesp
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  345M  100  345M    0     0  65.5M      0  0:00:05  0:00:05 --:--:-- 66.3M
Entering synoesp
extract rd.gz
finish
42506 blocks
mkdir: cannot create directory '/mnt/sda3/auxfiles': File exists
Copying required files to local cache folder for future use
Copying usr/lib/libcurl.so.4 to /mnt/sda3/auxfiles
Copying usr/lib/libmbedcrypto.so.5 to /mnt/sda3/auxfiles
Copying usr/lib/libmbedtls.so.13 to /mnt/sda3/auxfiles
Copying usr/lib/libmbedx509.so.1 to /mnt/sda3/auxfiles
Copying usr/lib/libmsgpackc.so.2

Capture.PNG

Link to comment
Share on other sites

i tryed  with

 

./myv.sh DS3622xs+  i get a warning

./myv.sh DS3622xs+ noconfig  i get a warning

./myv.sh DS3622xs+ noclean    i get a warning

 

the warning is this 

[!] Extension is already added (index exists at /home/tc/redpill-load/custom/extensions/pocopico.vmxnet3/pocopico.vmxnet3.json). For more info use "ext-manager.sh info pocopico.vmxnet3"

 

and the only command i don t get a warning is when i use

 

./myv.sh DS3622xs+ manual


 

 

shall i use with  this one ./myv.sh DS3622xs+ manual

 

 

 

Link to comment
Share on other sites

On 4/27/2022 at 10:46 PM, Davidov said:

I'm sorry I just got to the server. I took a photo, maybe it will help us better. I need the second on the list of SSD Samsung to be

 

photo_2022-04-27_22-32-30.jpg

photo_2022-04-27_22-32-30 (2).jpg

photo_2022-04-27_22-32-29.jpg

photo_2022-04-27_22-32-28 (2).jpg

 

please while on TC, run 

 

tc@box:~$ udevadm info --query path --name nvmeXn1 | awk -F "\/" '{print $4 ":" $5 }' | awk -F ":" '{print $2 ":" $3 "," $6}' | sed 's/,*$//'
 

 

 

Link to comment
Share on other sites

4 hours ago, pocopico said:

Sure, sorry i was away from my PC for some time. I will update the extension in the next following days and i will keep you posted.

Wouldn't it be interesting to create a github action to generate the drivers?

so it would be very practical for u and for us to try to add more drivers or modules

 

I think it is possible to do this using the github tools

Link to comment
Share on other sites

8 hours ago, carlozo said:

i tryed  with

 

./myv.sh DS3622xs+  i get a warning

./myv.sh DS3622xs+ noconfig  i get a warning

./myv.sh DS3622xs+ noclean    i get a warning

 

the warning is this 

[!] Extension is already added (index exists at /home/tc/redpill-load/custom/extensions/pocopico.vmxnet3/pocopico.vmxnet3.json). For more info use "ext-manager.sh info pocopico.vmxnet3"

 

and the only command i don t get a warning is when i use

 

./myv.sh DS3622xs+ manual


 

 

shall i use with  this one ./myv.sh DS3622xs+ manual

 

 

 

 

 

@carlozo

 

You can ignore that warning message that Ext has already been added.
For some reason, TC only tries to add Ext, which is already normally included once in the build process.
It has no effect on building a normal loader.
Is this correct @pocopico ?

Link to comment
Share on other sites

I was using 7.0.1 in N40L, both Synology assistant and find.synology.com no problem finding the device.

But after Updated to 7.1Find.synology.com and Synology assistant cant find the NAS.

Device working fine, can find via IP address though.

Link to comment
Share on other sites

@pocopico What is the difference between build commands with auto manual and static?

 

./rploader.sh build broadwellnk-7.1.0-42661 auto

./rploader.sh build broadwellnk-7.1.0-42661 manual

./rploader.sh build broadwellnk-7.1.0-42661 static

 

Is build auto the same as ext auto ?             ./rploader.sh ext broadwellnk-7.1.0-42661 auto

 

I do not know what these build commands offer? Can someone explain to me? Pocopico?

 

 

 

Link to comment
Share on other sites

14 hours ago, pocopico said:

Sure, sorry i was away from my PC for some time. I will update the extension in the next following days and i will keep you posted.

if i add both these ext repo https://raw.githubusercontent.com/pocopico/rp-ext/master/v9fs/rpext-index.json and https://raw.githubusercontent.com/pocopico/redpill-load/master/redpill-virtio/rpext-index.json then the network interface is not available. 

if only redpill-virtio ext, the network interface working fine, but virtio 9p mount not available.

why ? seems the drivers for v9fs cannot load completely on this 4.4.180+ #42661 build kernel. tried bromolow-7.1.0-42661, apollolake-7.1.0-42661 & broadwellnk-7.1.0-42661 all same problem. 

 

Edited by hendry
Link to comment
Share on other sites

29 minutes ago, hendry said:

if i add both these ext repo https://raw.githubusercontent.com/pocopico/rp-ext/master/v9fs/rpext-index.json and https://raw.githubusercontent.com/pocopico/redpill-load/master/redpill-virtio/rpext-index.json then the network interface is not available. 

if only redpill-virtio ext, the network interface working fine, but virtio 9p mount not available.

why ? seems the drivers for v9fs cannot load completely on this 4.4.180+ #42661 build kernel. tried bromolow-7.1.0-42661, apollolake-7.1.0-42661 & broadwellnk-7.1.0-42661 all same problem. 

 


The extension loading sequence is random and it will not load the modules in the required sequence. That’s one of the issues with the extensions.

 

I will create a single extension with the combination of all for you. 

Edited by pocopico
Link to comment
Share on other sites

5 hours ago, phone guy said:

@pocopico What is the difference between build commands with auto manual and static?

 

./rploader.sh build broadwellnk-7.1.0-42661 auto

./rploader.sh build broadwellnk-7.1.0-42661 manual

./rploader.sh build broadwellnk-7.1.0-42661 static

 

Is build auto the same as ext auto ?             ./rploader.sh ext broadwellnk-7.1.0-42661 auto

 

I do not know what these build commands offer? Can someone explain to me? Pocopico?

 

 

 

 

The option auto is a mispropagated option that does not actually exist and is equivalent to the effect of using it without any option.

The difference between the three options is the list of each function below.

However, if you look closely, static and auto(none) have the same function.

Only manual excludes listmodules function.


The listmodules() function is the part that automatically detects and processes each device ID and exts.

 

    static)
        echo "Using static compiled redpill extension"
        getstaticmodule
        echo "Got $REDPILL_MOD_NAME "
        listmodules
        echo "Starting loader creation "
        buildloader
        [ $? -eq 0 ] && savesession
        ;;

    manual)

        echo "Using static compiled redpill extension"
        getstaticmodule
        echo "Got $REDPILL_MOD_NAME "
        echo "Manual extension handling,skipping extension auto detection "
        echo "Starting loader creation "
        buildloader
        [ $? -eq 0 ] && savesession
        ;;

    *)
        echo "No extra build option specified, using default <static> "
        echo "Using static compiled redpill extension"
        getstaticmodule
        echo "Got $REDPILL_MOD_NAME "
        listmodules
        echo "Starting loader creation "
        buildloader
        [ $? -eq 0 ] && savesession
        ;;

Edited by Peter Suh
  • Like 1
  • Thanks 1
Link to comment
Share on other sites

 

And if ext action is used with auto , the listmodules() function described above is used again.

 

ext)
    getvars $2
    checkinternet
    gitdownload

    if [ "$3" = "auto" ]; then
        listmodules
    else
        ext_manager $@ # instead of listmodules
    fi
    ;;
 

  • Thanks 1
Link to comment
Share on other sites

@pocopico

 

 

The log below is from ttyd.
Recently, when booting, I sometimes get a message asking me to reinstall DS3622xs+, probably because it can't find the RAID HDD SHR on the HBA DELL H200.
Of course, the assigned IP address can also be changed at will.
If you boot again, the RAID HDD is properly detected.
What causes these symptoms to recur?
please reply.

 

-------------------------------------------------

 

SynologyNAS> cat linuxrc.syno.log

START /linuxrc.syno.impl

Insert Marvell 1475 SATA controller driver

Insert basic USB modules...

:: Loading module usb-common ... [  OK  ]

:: Loading module usbcore ... [  OK  ]

:: Loading module ehci-hcd ... [  OK  ]

:: Loading module ehci-pci ... [  OK  ]

:: Loading module xhci-hcd ... [  OK  ]

:: Loading module xhci-pci ... [  OK  ]

:: Loading module usb-storage ... [  OK  ]

:: Loading kernel modules from extensions ...

Loading kmod #0 "e1000e.ko" for pocopico.e1000e (args: )

Loading kmod #0 "dca.ko" for pocopico.igb (args: )

Loading kmod #1 "igb.ko" for pocopico.igb (args: )

Loading kmod #0 "mpt3sas.ko" for pocopico.mpt3sas (args: )

:: Loading kernel modules from extensions ... [  OK  ]

:: Executing "on_boot" custom scripts ...

Running "check-e1000e.sh" for pocopico.e1000e->on_boot

Loading module e1000e -> Module e1000e loaded succesfully

Ran "check-e1000e.sh" for pocopico.e1000e->on_boot - exit=0

Running "check-igb.sh" for pocopico.igb->on_boot

Loading module igb -> Module igb is not loaded

Ran "check-igb.sh" for pocopico.igb->on_boot - exit=0

Running "check-mpt3sas.sh" for pocopico.mpt3sas->on_boot

Loading module mpt3sas -> Module mpt3sas loaded succesfully

Ran "check-mpt3sas.sh" for pocopico.mpt3sas->on_boot - exit=0

Running "boot-wait.sh" for redpill-boot-wait->on_boot

Still waiting for boot device (waited 1 of 30 seconds)

Confirmed a valid-looking /dev/synoboot device

Ran "boot-wait.sh" for redpill-boot-wait->on_boot - exit=0

Running "install_rd.sh" for redpill-misc->on_boot

Starting ttyd, listening on port: 7681

Ran "install_rd.sh" for redpill-misc->on_boot - exit=0

:: Executing "on_boot" custom scripts ... [  OK  ]

Extensions processed

insmod: can't insert '/lib/modules/etxhci-hcd.ko': No such file or directory

Insert net driver(Mindspeed only)...

Starting /usr/syno/bin/synocfgen...

/usr/syno/bin/synocfgen returns 0

Insert synorbd kernel module

Insert synofsbd kernel module

Insert sha256 kernel module

All disk ready or timeout execeed

Assemble args:

Exit on error [12] No raid status in path /sys/block/md0/md/array_state, go to junior mode...

Sun May  1 01:54:03 UTC 2022

none /sys/kernel/debug debugfs rw,relatime 0 0

Link to comment
Share on other sites

Today, another change has been made to the download link for DSM 7 in the Synology Download Center.
The original 7.1.0-42661 directory has been restored, so TC can download the 42661 pat file according to the original config settings.

And the m shell uses to download the 7.1.0-42661 U1 pat file.
As you can see, the 42661-1 directory shows only patch files.
In reality, it seems to work as a hidden state.
7.1.0-42661 U1 file can be downloaded as before.

 

And as you can see at the bottom, the pat file for the nanopacked version is filled with only things that have nothing to do with the Xpenology supported model.

1837187742_2022-05-019_36_21.thumb.png.dc735c186181cc8cc75e76866cfd5df5.png391638570_2022-05-019_38_39.thumb.png.fa69f42a7c388f0336ad626203b450d0.png1365720917_2022-05-019_39_00.thumb.png.22b8b0f41787d38b71b36d3662c34f59.png882054915_2022-05-019_39_11.thumb.png.bcc994045ab77e83cd09fc916a7428f0.png

Edited by Peter Suh
Link to comment
Share on other sites

On 4/24/2022 at 12:47 AM, staratlas said:

Thank you for your rapid reply.

 

I check failed state services on DSM 7.1 and DS3617xs


root@DiskStation:~# systemctl list-units --state failed

● pgsql-adapter.service          loaded failed failed PostgreSQL adapter
● syno-mount-usbfs.service       loaded failed failed Mount usb fs
● synoindex-checkpackage.service loaded failed failed synoindex check if there are any synoindex-related packages
● SynoInitEth.service            loaded failed failed Adjust NIC sequence
● systemd-modules-load.service   loaded failed failed Load Kernel Modules

 

and DSM 7.1 and DS918+ ( work fine )


root@DiskStation:~# systemctl list-units --state failed

  UNIT                           LOAD   ACTIVE SUB    DESCRIPTION
● syno-mount-usbfs.service       loaded failed failed Mount usb fs
● synoindex-checkpackage.service loaded failed failed synoindex check if there are any synoindex-related packages
● SynoInitEth.service            loaded failed failed Adjust NIC sequence

 

and then I check "systemd-modules-load.service"


root@DiskStation:~# systemctl start systemd-modules-load
[  541.149389] mlx4_en: Unknown symbol mlx4_get_vf_rate (err 0)
[  541.150213] mlx4_en: Unknown symbol mlx4_test_async (err 0)
[  541.151023] mlx4_en: Unknown symbol mlx4_set_vf_vlan_next (err 0)
[  541.151968] mlx4_en: Unknown symbol mlx4_test_interrupt (err 0)
[  541.152877] mlx4_en: Unknown symbol mlx4_get_vport_ethtool_stats (err 0)
[  541.153859] mlx4_en: Unknown symbol mlx4_SET_PORT_disable_mc_loopback (err 0)
[  541.154883] mlx4_en: Unknown symbol mlx4_rename_eq (err 0)
[  541.155626] mlx4_en: Unknown symbol mlx4_reset_vlan_policy (err 0)
[  541.156510] mlx4_en: Unknown symbol mlx4_max_tc (err 0)
[  541.157272] mlx4_en: Unknown symbol mlx4_is_available_mac (err 0)
[  541.158080] mlx4_en: Unknown symbol syno_restart (err 0)
[  541.158834] mlx4_en: Unknown symbol mlx4_get_vf_vlan_set (err 0)
[  541.159718] mlx4_en: Unknown symbol mlx4_get_is_vlan_offload_disabled (err 0)
[  541.160742] mlx4_en: Unknown symbol mlx4_get_vf_vlan_info (err 0)
[  541.161577] mlx4_en: Unknown symbol mlx4_get_vf_stats_netdev (err 0)
[  541.162598] mlx4_en: Unknown symbol mlx4_SET_PORT_user_mtu (err 0)
[  541.163445] mlx4_en: Unknown symbol mlx4_get_vf_link_state (err 0)

 

this problem occurred extension "mlx4_core". Can I fix this problem ?

( I know remove this extension fix this problem, but i want to use mellanox NIC card )

 

 

Anyone can use mlx4_core ( mellanox NIC card ) at DSM 7.1 on DS3622xs ?

I have a problem about Unknown symbol error with mlx4_core.

 

Thank you for your help.

Link to comment
Share on other sites

8 hours ago, Peter Suh said:

@pocopico

 

 

The log below is from ttyd.
Recently, when booting, I sometimes get a message asking me to reinstall DS3622xs+, probably because it can't find the RAID HDD SHR on the HBA DELL H200.
Of course, the assigned IP address can also be changed at will.
If you boot again, the RAID HDD is properly detected.
What causes these symptoms to recur?
please reply.

 

-------------------------------------------------

 

SynologyNAS> cat linuxrc.syno.log

START /linuxrc.syno.impl

Insert Marvell 1475 SATA controller driver

Insert basic USB modules...

:: Loading module usb-common ... [  OK  ]

:: Loading module usbcore ... [  OK  ]

:: Loading module ehci-hcd ... [  OK  ]

:: Loading module ehci-pci ... [  OK  ]

:: Loading module xhci-hcd ... [  OK  ]

:: Loading module xhci-pci ... [  OK  ]

:: Loading module usb-storage ... [  OK  ]

:: Loading kernel modules from extensions ...

Loading kmod #0 "e1000e.ko" for pocopico.e1000e (args: )

Loading kmod #0 "dca.ko" for pocopico.igb (args: )

Loading kmod #1 "igb.ko" for pocopico.igb (args: )

Loading kmod #0 "mpt3sas.ko" for pocopico.mpt3sas (args: )

:: Loading kernel modules from extensions ... [  OK  ]

:: Executing "on_boot" custom scripts ...

Running "check-e1000e.sh" for pocopico.e1000e->on_boot

Loading module e1000e -> Module e1000e loaded succesfully

Ran "check-e1000e.sh" for pocopico.e1000e->on_boot - exit=0

Running "check-igb.sh" for pocopico.igb->on_boot

Loading module igb -> Module igb is not loaded

Ran "check-igb.sh" for pocopico.igb->on_boot - exit=0

Running "check-mpt3sas.sh" for pocopico.mpt3sas->on_boot

Loading module mpt3sas -> Module mpt3sas loaded succesfully

Ran "check-mpt3sas.sh" for pocopico.mpt3sas->on_boot - exit=0

Running "boot-wait.sh" for redpill-boot-wait->on_boot

Still waiting for boot device (waited 1 of 30 seconds)

Confirmed a valid-looking /dev/synoboot device

Ran "boot-wait.sh" for redpill-boot-wait->on_boot - exit=0

Running "install_rd.sh" for redpill-misc->on_boot

Starting ttyd, listening on port: 7681

Ran "install_rd.sh" for redpill-misc->on_boot - exit=0

:: Executing "on_boot" custom scripts ... [  OK  ]

Extensions processed

insmod: can't insert '/lib/modules/etxhci-hcd.ko': No such file or directory

Insert net driver(Mindspeed only)...

Starting /usr/syno/bin/synocfgen...

/usr/syno/bin/synocfgen returns 0

Insert synorbd kernel module

Insert synofsbd kernel module

Insert sha256 kernel module

All disk ready or timeout execeed

Assemble args:

Exit on error [12] No raid status in path /sys/block/md0/md/array_state, go to junior mode...

Sun May  1 01:54:03 UTC 2022

none /sys/kernel/debug debugfs rw,relatime 0 0


The HBA, MPT3SAS is your case, needs some time to spin-up and scan the bus for drives. Your system is most probably, not configured to boot from this HBA or the BIOS is not enabled on the HBA so this disk initialisation process happens during the module load and this runs in parallel with the DSM boot process and there is a race condition. If the initialisation finished on time DSM will identify the disks if not it will fail into junior with the error you see. 
 

So IMHO, enable boot from this HBA and if possible, enable HBA BIOS as well. 

  • Thanks 1
Link to comment
Share on other sites

19 hours ago, pocopico said:


The extension loading sequence is random and it will not load the modules in the required sequence. That’s one of the issues with the extensions.

 

I will create a single extension with the combination of all for you. 

which drivers should be loaded on the 1st, 2nd, etc sequence order ?

i've tried to combine all the drivers into 1 ext on my GH repo, but when building the loader it has errors. 

does the v9fs need to compile ? does all the virtio drivers including v9fs for 7.0.1 compatible to be used in 7.1 ?

would u please give me a clue ?

 

Edited by hendry
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...