Jump to content
XPEnology Community

RedPill - the new loader for 6.2.4 - Discussion


Recommended Posts

Since moving to the latest redpill code (3474d9b) I'm finding my system less stable than it was before with respect to docker containers. My influxdb container would crash the system every time I started it, but the others I had were typically stable and non-problematic. I'm now seeing immediate kernel panics when starting a mysql container that previously didn't cause any problems.

 

I've gone back to a slightly older build (021ed51), and mysqld (operating as a database backend for librenms) starts and runs without problems.

Edited by WiteWulf
Link to comment
Share on other sites

I started playing around with the redpill on two test rigs i have at work the last couple of days.

 

I have a HP AIO PC with a 6th gen I3 on it and two Sata drives.

I tried installing 918 on it on baremetal and everything works without any issues for now.

 

But today i started playing with ESXI 7.0 for the first time ever and i followed a tutorial posted a couple pages back.

 

It boots and i can find it on find.synology.com and it even detects two drives because it tells me it will erase the two drives connected.

But when i start the installation with the selected PAT file, it always stops at 56% and tells me the file is corrupt.

 

I tried creating the image with 0.9 and 0.10 and i tried DSM 7.0 & 7.0.1. I always get the same error.

 

Am i missing something? I never really worked with ESXI, i'm trying to learn as much as possible

 

The only thing i changed on the image is the Mac Address (i use a random mac adress like 123456abcdef) and i put the same address in the VM settings where you can select the network adapter. If i leave it on auto, it won't show up on the network.

PID and VID shouldn't matter right?

 

The other rig is an old fujitsu server which can only run 3615 but it won't detect any drives at all because of the LSI controller which is a known issue afaik.

 

 

Link to comment
Share on other sites

il y a 14 minutes, xPalito93 a dit :

The only thing i changed on the image is the Mac Address (i use a random mac adress like 123456abcdef) and i put the same address in the VM settings where you can select the network adapter. If i leave it on auto, it won't show up on the network.

PID and VID shouldn't matter right?

 

You might check :

  • Loader is using sata0:0
  • HDD is using sata1:x
  • Your grub has correct configuration (DiskIdxMap=1000 & SataPortMap=1 in my case)
  • Sata boot is selected on 1st boot using your console access
Link to comment
Share on other sites

50 minutes ago, sebg35 said:

 

You might check :

  • Loader is using sata0:0
  • HDD is using sata1:x
  • Your grub has correct configuration (DiskIdxMap=1000 & SataPortMap=1 in my case)
  • Sata boot is selected on 1st boot using your console access

Thanks for you Input.

 

The first mistake i made, was that i selected USB boot on 1st boot. So I've got to give that a go tomorrow at work.

 

How do you make sure loader is using sata 0:0 and HDD is using sata1:x?

In the VM settings, i have two HDDs and they're configured as Sata0:0 and Sata0:1 if i recall correctly.

Are those settings done in the grub aswell?

Edited by xPalito93
Link to comment
Share on other sites

4 hours ago, man275 said:

Is bromolow with linux-4.4.x.txz? Shouldnt it be 3.x kernel?

Technical correct, but won't make much of a difference in this case bacause "compile_with": "toolkit_dev" will use toolkit-dev and not the kernel to build redpill-lkm.

Once the new kernel sources for dsm7 are available the url has to change to the new url and "compile_with" needs to be set to "kernel" to build redpill-lkm using the kernel.

  • Like 1
Link to comment
Share on other sites

il y a 26 minutes, xPalito93 a dit :

How do you make sure loader is using sata 0:0 and HDD is using sata1:x?

In the VM settings, i have two HDDs and they're configured as Sata0:0 and Sata0:1 if i recall correctly.

Are those settings done in the grub aswell?

You have to add a new sata controller, and set HDD to use the new sata controller (1:0, 1:1, ...)

 

Sata controller usage are defined under your disks settings, under VM confgiuration.

  • Thanks 1
Link to comment
Share on other sites

11 minutes ago, Aigor said:

A question, when "official release" will be available, we should  to make a new bootloader every time when a update will be available? 

 

Every time there will be a zImage / rd.gz in new package yes.

I must admit I don't know how we can handle small patches like 6.2.4 update 2 as it must be patched but can't be simply used to build a new loader if I'm not wrong

  • Like 1
Link to comment
Share on other sites

28 minutes ago, Aigor said:

A question, when "official release" will be available, we should  to make a new bootloader every time when a update will be available? 

 

Correct, but I believe on the last post by ThorGroup they gave me the impression that they will try to automate the bootloader procedure to make it easier and quicker for everyone, something like Haydibe's toolchain...

Edited by gadreel
Link to comment
Share on other sites

35 minutes ago, Orphée said:

Every time there will be a zImage / rd.gz in new package yes.

I must admit I don't know how we can handle small patches like 6.2.4 update 2 as it must be patched but can't be simply used to build a new loader if I'm not wrong

 

I also struggled with 6.2.4u2 but no luck with my limited knowledge. Replacing rd.gz zImage with ones from 6.2.4update2 pat before building loader is failed.

 

Link to comment
Share on other sites

10 hours ago, man275 said:

 

I also struggled with 6.2.4u2 but no luck with my limited knowledge. Replacing rd.gz zImage with ones from 6.2.4update2 pat before building loader is failed.

 

 

Solution to fix update fail from 6.2.4 to 6.2.4-2

My solution is rollback to 6.2.4

 * Please backup the data if it is important !!
   (I suppose without data loss after rollback)

1. login the console with root (without password)
2. mount /dev/md0 /mnt
3. rm -rf /mnt/.syno
4. http://NAS-IP:5000

Select "Migration: Keep my data and most of the settings"
Install original pat (DSM_DS3615xs_25556.pat) # 271 MB

Edited by datahunter
Link to comment
Share on other sites

On 9/17/2021 at 11:20 AM, kaykkay said:

Hi, Would like to know how did you build the bootloader? 

I tried both redpill-tool-chain_x86_64_v0.8 and redpill-tool-chain_x86_64_v0.7.4, both of them are not working. 

I just followed README.md, there is any modification I didn't any modification except SerialNumber, USB PID/VID, MACADDR on bromolow_user_config.json .

If you no have any Intel NICs on your N54L, additional driver (eg. tg3.ko) needed.
Basically DSM does not support (exactly not included) Broadcom NetXtreme.

But I don't know how add additional driver to boot image, so I added Intel NICs to my N54L.

Edited by Ermite
mistyped contents
Link to comment
Share on other sites

After I updated the latest boot today, the machine can be connected normally a few minutes before startup, but then it can't be connected again, but the IP address of the machine can still be seen on the router

 

 

 

I just changed the rd.gz file in the boot to the original one and it can be used normally. Then I found that he displayed a notice :"the partition 3 of the external device USB disk 2 cannot be loaded."I think this message is related to the inability to use the latest boot normally

Edited by Null
Link to comment
Share on other sites

3 hours ago, Ermite said:

I just followed README.md, there is any modification I didn't any modification except SerialNumber, USB PID/VID, MACADDR on bromolow_user_config.json .

If you no have any Intel NICs on your N54L, additional driver (eg. tg3.ko) needed.
Basically DSM does not support (exactly not included) Broadcom NetXtreme.

But I don't know how add additional driver to boot image, so I added Intel NICs to my N54L.

 

I have an IntelNIC, and that's what I did as well. Following is my bromolow_user_config.json

 

{
  "extra_cmdline": {
    "pid": "0x019e",
    "vid": "0x054c",
    "sn": "1XXXXXXXXXXXX",
    "mac1": "00XXXXXXXXX1",
    "mac2": "00XXXXXXXXX2",
    "mac3": "00XXXXXXXXX3",
    "mac4": "00XXXXXXXXX4",            
    "netif_num": "4"
  },
  "synoinfo": {},
  "ramdisk_copy": {}


I am able to build the image, burn it to usb, and boot to grub. 

 

However, after booting, the Intel NICs cannot get any IP from the DHCP server, so there is no way I can access the NAS 

 

Edited by kaykkay
typo
Link to comment
Share on other sites

Not all Intel NICs work on DSM. It's not just the chipset that needs to be supported, the PCI ID of the card also has to match a list that linux uses to decide what driver to use.

 

More info here:

 

Now that's obviously from an older version of DSM, but I very much doubt it's changed.

Link to comment
Share on other sites

1 hour ago, kaykkay said:

I have an IntelNIC, and that's what I did as well. Following is my bromolow_user_config.json

 

40 minutes ago, WiteWulf said:

Not all Intel NICs work on DSM. It's not just the chipset that needs to be supported, the PCI ID of the card also has to match a list that linux uses to decide what driver to use.

 

@WiteWulf said, not all Intel NICs work with DSM.
But if you have worked with Jun's Loader 1.0x (DSM 6.2.3 or below) I cannot help with that.
I think you have 4-Port Intel NIC, what chipset you used?
If your NIC chipset included e1000 driver category, it will be work.  

Link to comment
Share on other sites

1 hour ago, kaykkay said:

 

I have an IntelNIC, and that's what I did as well. Following is my bromolow_user_config.json

 


{
  "extra_cmdline": {
    "pid": "0x019e",
    "vid": "0x054c",
    "sn": "1XXXXXXXXXXXX",
    "mac1": "00XXXXXXXXX1",
    "mac2": "00XXXXXXXXX2",
    "mac3": "00XXXXXXXXX3",
    "mac4": "00XXXXXXXXX4",            
    "netif_num": "4"
  },
  "synoinfo": {},
  "ramdisk_copy": {}


I am able to build the image, burn it to usb, and boot to grub. 

 

However, after booting, the Intel NICs cannot get any IP from the DHCP server, so there is no way I can access the NAS 

 

 

Like i said in the past, first try to figure out which module you need, then you can try to find and load it to the loader.

Link to comment
Share on other sites

7 minutes ago, Ermite said:

 

 

@WiteWulf said, not all Intel NICs work with DSM.
But if you have worked with Jun's Loader 1.0x (DSM 6.2.3 or below) I cannot help with that.
I think you have 4-Port Intel NIC, what chipset you used?
If your NIC chipset included e1000 driver category, it will be work.  

No, you're missing my point: just having a compatible chipset does not guarantee that a device will work. This is the same for any device on most operating systems.

 

The device (NIC, bluetooth adapter, wifi adapter, whatever), identifies itself to the OS with a hardware ID. If it's PCIe card as in this instance it will use a PCI ID. The operating system then looks up that PCI ID in all the drivers it has loaded to see if there is anything that matches. It has no idea what chips are in the device up until this point, what the device does, nor what driver is required. If it finds a driver with a matching PCI ID it will then try to access the device using that driver.

 

The problem is that hardware manufacturers sometimes change the hardware ID of their devices over their lifetime, so you could have two NICs that look identical, with the same chipset, but one will match the driver's ID list and one will not. This is particularly prevalent  in hardware that is primarily developed for Windows use, but open source drivers are developed for linux.

 

That is why the list of matching PCI IDs was published in that thread previously, as some Intel NICs work with DSM and some do not, although look identical.

Link to comment
Share on other sites

23 hours ago, WiteWulf said:

I think you're right. This should be a correct bromolow 7.0.1-RC1 stanza:

 


{
            "id": "bromolow-7.0.1-42214",
            "platform_version": "bromolow-7.0.1-42214",
            "user_config_json": "bromolow_user_config.json",
            "docker_base_image": "debian:8-slim",
            "compile_with": "toolkit_dev",
            "redpill_lkm_make_target": "prod-v7",
            "downloads": {
                "kernel": {
                    "url": "https://sourceforge.net/projects/dsgpl/files/Synology%20NAS%20GPL%20Source/25426branch/bromolow-source/linux-3.10.x.txz/download",
                    "sha256": "18aecead760526d652a731121d5b8eae5d6e45087efede0da057413af0b489ed"
                },
                "toolkit_dev": {
                    "url": "https://sourceforge.net/projects/dsgpl/files/toolkit/DSM7.0/ds.bromolow-7.0.dev.txz/download",
                    "sha256": "a5fbc3019ae8787988c2e64191549bfc665a5a9a4cdddb5ee44c10a48ff96cdd"
                }
            },
            "redpill_lkm": {
                "source_url": "https://github.com/RedPill-TTG/redpill-lkm.git",
                "branch": "master"
            },
            "redpill_load": {
                "source_url": "https://github.com/jumkey/redpill-load.git",
                "branch": "develop"
            }
        },

 

AFAIK 2543branch/bromolow-source is 3.10.105, as 3.10.108 was not published yet.

I wonder which parameters for compilation with toolchain you are using to get working .ko modules for DSM 7.0.1 RC. I have always failed - despite the compilation was finished, the bromolow modules were unusable for me. With 2543branch sources the compiled modules have 3.10.105 magic and when the common kernel sources 3.10.108 are used, there're kernel exceptions when I try to load modules. On the other side, there are some working network drivers for bromolow & DSM 7.0.1 shared here earlier by some people. So what's the trick I am missing? 😕

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...