RedPill - the new loader for 6.2.4 - Discussion


Recommended Posts

8 hours ago, ilovepancakes said:

 

Using e1000e and ESXi I can successfully boot redpill-load now. But when I go to install DSM, it errors out with the file is corrupted (13). Here is my serial output: https://pastebin.com/KcEeaJS1

 

Hoping @ThorGroupcan provide some insight. Followed the instructions on the GH repo and used the VID/PID there.

This is just the boot log, see ttyS2 for the console output

Link to post
Share on other sites
12 hours ago, smoojay said:

Tested with both, Fusion and ESXi. On ESXi i wasn't able to grab the console output due to the limitation with the free edition. So, im not sure if it is the same with ESXi.

 

two tips:

1, as @jumkeysaid, need boot from usb, in proxmox ,you can add agrs to  /etc/pve/qemu-server/{VM_ID}.conf:

args: -device 'qemu-xhci,addr=0x18' -drive 'id=synoboot,file=/var/lib/vz/images/{VM_ID}/synoboot.img,if=none,format=raw' -device 'usb-storage,id=synoboot,drive=synoboot,bootindex=5'

But in proxmox, usually the boot image is converted to a boot disk through the qm command, so that the system files can be managed in the virtual machine management interface, and the method of adding args makes the startup of the virtual machine full of risks (for example, the virtual file of the U disk is deleted) , So it is a better way to make the bootloader exist in the virtual machine as a disk, but I don’t know how to solve this problem

 

2, After many attempts, I found that you need to add 3 serial ports, at least in proxmox (as shown below), hope @ThorGroup can answer this strange question.serial.thumb.png.7e64db4b3aef0d12445aca5d1f4b1f0b.png

Edited by yanjun
  • Like 1
Link to post
Share on other sites

i become this on Proxmox:

START /linuxrc.syno
[    5.264284] redpill: module verification failed: signature and/or required key missing - tainting kernel
[    5.265523] module: redpill: Unknown rela relocation: 4
insmod: can't insert '/usr/lib/modules/rp.ko': invalid module format

 

It boots and will find by find.synology but i cant install DSM (error 13)

 

Ok got it working :)

At first i compiled lkm on a debian buster (gcc8) and then Bullseye (gcc10) Machine. Then redpill dont work.

Now i have compiled on a very old Wheezy Machine ( gcc4) and the loader itself on the Bullseye Machine... and it starts up load redpill and i can install DSM :)

 

Edited by loomes
  • Like 1
Link to post
Share on other sites
35 minutes ago, loomes said:

Now i have compiled on a very old Wheezy Machine ( gcc4) and the loader itself on the Bullseye Machine... and it starts up load redpill and i can install DSM

Can you please share the artifact?)) Thanks.

 

Also, it would be great to prepare docker image for Redpill))

Link to post
Share on other sites

OK in the next Step i have used Backups from my two Harddisks from the old Xpenology Install and mountet this backups to the new redpill Xpenology and fired it up.

The old Installation was detected and i selected migrate and installed the new DSM Version, reboot, all is fine, all Data are there :)

  • Like 2
Link to post
Share on other sites
24 minutes ago, loomes said:

OK in the next Step i have used Backups from my two Harddisks from the old Xpenology Install and mountet this backups to the new redpill Xpenology and fired it up.

The old Installation was detected and i selected migrate and installed the new DSM Version, reboot, all is fine, all Data are there :)

What is your HW? Please correct me am I wrong, but right now we do not have an extra drivers from @IG-88 at this loader. Thanks

Link to post
Share on other sites
3 hours ago, loomes said:

i become this on Proxmox:


START /linuxrc.syno
[    5.264284] redpill: module verification failed: signature and/or required key missing - tainting kernel
[    5.265523] module: redpill: Unknown rela relocation: 4
insmod: can't insert '/usr/lib/modules/rp.ko': invalid module format

 

It boots and will find by find.synology but i cant install DSM (error 13)

 

Ok got it working :)

At first i compiled lkm on a debian buster (gcc8) and then Bullseye (gcc10) Machine. Then redpill dont work.

Now i have compiled on a very old Wheezy Machine ( gcc4) and the loader itself on the Bullseye Machine... and it starts up load redpill and i can install DSM :)

 

Yikes, I have the same error we really have to go back that far in build//gcc. Why I wonder. 

Link to post
Share on other sites

Hi everyone! Thx for this amazing job! Little question, have no serial port on my baremetal, and there is no network right now. What's the module name for i219-v from Intel (8086:15bc), to integrate it with the amzing script from Redpill Team?

Currently not working with ESXi, error 13 at installation

Edited by RedwinX
Link to post
Share on other sites

@T-REX-XP I have written that i use a VM under Proxmox. And the virtio drivers for this are in this loader.

 

I now have added my old Variables for Disk rearange in the user_config cmdline ("DiskIdxMap": "0F00", "SataPortMap": "15") and this is also working like before.

 

For a very early Stage this loader works absolut fantastic :)

 

Edit: The redpill only works with CPU "kvm64". When i switch to "Host" (i5-7260U) the redpill will crash.

Then i have compiled the redpill again on the Proxmox7 Host itself... but no luck: invalid module format

 

I think we need more Infos which compiler we must use.

Edited by loomes
  • Like 2
  • Thanks 1
Link to post
Share on other sites
6 hours ago, smoojay said:

see ttyS2 for the console output

 

How do I get to this? I added two more serial ports (3 total) to the VM and #3 gets a different output than the #1 I posted above. #2 gets no output. Not sure if I am looking in right spot. I'm on ESXi.

Link to post
Share on other sites
15 hours ago, ilovepancakes said:

 

Using e1000e and ESXi I can successfully boot redpill-load now. But when I go to install DSM, it errors out with the file is corrupted (13). Here is my serial output: https://pastebin.com/KcEeaJS1

 

Hoping @ThorGroupcan provide some insight. Followed the instructions on the GH repo and used the VID/PID there.

Have the same issue when using ESXI 6.7 . Have yet to try on Proxmox

Link to post
Share on other sites
1 hour ago, loomes said:

@T-REX-XP I have written that i use a VM under Proxmox. And the virtio drivers for this are in this loader.

 

I now have added my old Variables for Disk rearange in the user_config cmdline ("DiskIdxMap": "0F00", "SataPortMap": "15") and this is also working like before.

 

For a very early Stage this loader works absolut fantastic :)

 

Edit: The redpill only works with CPU "kvm64". When i switch to "Host" (i5-7260U) the redpill will crash.

Then i have compiled the redpill again on the Proxmox7 Host itself... but no luck: invalid module format

 

I think we need more Infos which compiler we must use.

I just installed Wheezy to test your method with GCC4 and the Module is Almost half the size (800kb area) of when I used GCC10 (1.36MB area) And redpill is working for me on DS3615xs, I coudlnt get the 918+ to compile.

GCC 10 thros 

 

START /linuxrc.syno
 redpill: module verification failed: signature and/or required key missing - tainting kernel
 module: redpill: Unknown rela relocation: 4
insmod: can't insert '/usr/lib/modules/rp.ko': invalid module format


That still doesn't solve the issue of no network at all in Virtual box, but Im getting further. 

Here is the full ttys0 dump from virtual box if its of any use.

https://pastebin.com/EfZpPe8r

Link to post
Share on other sites
23 minutes ago, loomes said:

my working wheezy redpill (kernel 4.4.x) has: 1.329.816 Bytes

That's in line with my findings then, my GCC10 Kernel 4.4 module is 1,855,488 bytes

Its probably some sort of compile flags enabled by default on newer GCC that GCC 4.8 didnt have I guess

 

Link to post
Share on other sites
16 hours ago, ilovepancakes said:

 

Using e1000e and ESXi I can successfully boot redpill-load now. But when I go to install DSM, it errors out with the file is corrupted (13). Here is my serial output: https://pastebin.com/KcEeaJS1

 

Hoping @ThorGroupcan provide some insight. Followed the instructions on the GH repo and used the VID/PID there.

As @smoojay mentioned this is the output from ttyS0 and ends up as expected - rest of it will be on ttyS1 for Linux v3 or ttyS2 for Linux v4.

This is an issue with how synobios and DSM kernels are handling serial ports. There's a plan to make it work properly with 2 serial ports attached and "redirect" synobios to ttyS1. The current state is a byproduct of being a pre-alpha ;)

 

8 hours ago, jukito said:

Hi!

I'm trying to compile redpill-lkm

I already  downloaded the syno source (x64 because I want to run on ESXi, is it right?)

Now I'm trying to run the command that de instructions said:



make oldconfig ; make modules_prepare

But:

 



cc1: error: code model kernel does not support PIC mode
make[1]: *** [/home/david/redpill/redpill-lkm/linux-3.10.x/./Kbuild:36: kernel/bounds.s] Error 1
make: *** [Makefile:840: prepare0] Error 2

 

Any hint? Thanks a lot!

You're using GCC which is too new. Kernel v3 (which is 10 years old) has an official list of supported GCC versions and the newest is <sadness approaches> .... v4.9.2.

 

This is why RedPill LKM must be compiled with the GCC supported by the kernel. That being said the recommended way is to use Debian 8 with GCC v4.9

 

We're not really happy to use such an old compiler but even if you manage to compile the module with a newer one you may run into weird issues later on. Kernel code has a lot of workarounds for different GCC versions and bugs in them. That's why even thou you can override checks in the kernel (like add -fno-pie here) the newer GCC will not produce usable code. For example we tried building a vanilla v3 with GCC 7.5 - it did build but it crashed during boot.

 

 

8 hours ago, smoojay said:

Current state on Virtualbox. The message with minissdpd indicates a parameter mismatch. There is no eth interface configured.



..
[   38.551818] <redpill/bios_shim.c:111> apollolake_synobios BIOS shimmed
 ... [  OK  ]
lo        Link e[   38.607768] <redpill/intercept_execve.c:87> Blocked /usr/syno/bin/syno_pstore_collect from running
ncap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

:: Starting syslogd ... [  OK  ]
:: Starting scemd
:: Starting services in backgrou[   45.842834] random: avahi-daemon: uninitialized urandom read (4 bytes read, 27 bits of entropy available)
nd
Starting fin[   46.639133] random: avahi-daemon: uninitialized urandom read (8 bytes read, 29 bits of entropy available)
dhostd in flash_rd...
Starting services in flash_rd...
Running /usr/syno/etc/rc.d/J01httpd.sh...
Starting httpd:80 in flash_rd...
Starting httpd:5000 in flash_rd...
Running /usr/syno/etc/rc.d/J03ssdpd.sh...
/usr/bin/minissdpd
Usage: /usr/bin/minissdpd [-d] [-6] [-s socket] [-p pidfile] -i <interface> [-i <interface2>] ...

  <interface> is either an IPv4 address such as 192.168.1.42, or an
interface name such as eth0.

  By default, socket will be open as /var/run/minissdpd.sock
and pid written to file /var/run/minissdpd.pid
start SSDPD failed
Running /usr/syno/etc/rc.d/J04synoagentregisterd.sh...
Starting synoagentregisterd...
Running /usr/syno/etc/rc.d/J30DisableNCQ.sh...
cat: can't open '/sys/block/sd*/device//model': No such file or directory
Running /usr/syno/etc/rc.d/J80ADTFanControl.sh...
Running /usr/syno/etc/rc.d/J98nbnsd.sh...
Starting nbnsd...
Running /usr/syno/etc/rc.d/J99avahi.sh...
Starting Avahi mDNS/DNS-SD Daemon
cname_load_conf failed:/var/tmp/nginx/avahi-aliases.conf
:: Loading module hid ... [  OK  ]
:: Loading mo[   46.880017] usbcore: registered new interface driver usbhid
dule usbhid[   46.905318] usbhid: USB HID core driver
 ... [  OK  ]
:: Loading module syno_hddmon ... [FAILED]
============ Date ============
Wed Jul 28 15:38
Wed Jul 28 15:38:09 2021

DiskStation login:

 

Yes, it is not detecting the ethernet card. It is possible the check we added for QEMU (to detect if it's running in VirtIO-supporting env) is not triggered here.

 

7 hours ago, yanjun said:

2, After many attempts, I found that you need to add 3 serial ports, at least in proxmox (as shown below), hope @ThorGroup can answer this strange question.serial.thumb.png.7e64db4b3aef0d12445aca5d1f4b1f0b.png

 

https://github.com/RedPill-TTG/redpill-load/blob/master/FAQ.md#serial0-stops-updating-after-bootconsole-uart0-disabled

This is a temporary peculiarity of dealing with synobios handling of serials. To access any of the serials you can do "qm terminal 123 -iface serial1" in the proxmox shell. The web serial emulator is ok-ish but doesn't allow for accessing anything besides serial0 + is buggy at times.

 

7 hours ago, loomes said:

Ok got it working :)

At first i compiled lkm on a debian buster (gcc8) and then Bullseye (gcc10) Machine. Then redpill dont work.

Now i have compiled on a very old Wheezy Machine ( gcc4) and the loader itself on the Bullseye Machine... and it starts up load redpill and i can install DSM :)

 

Yup, as mentioned above it must be the GCC 4.9 even GCCv7 is way too new for the kernel syno uses.

 

6 hours ago, T-REX-XP said:

Can you please share the artifact?)) Thanks.

 

Also, it would be great to prepare docker image for Redpill))

We're deliberatelly avoiding sharing a binary to make sure people don't start using it on their daily machines as it still lacks couple of things :D That's why we wrote it's for developers only.

Speaking of the docker we surely want to prepare a docker image with the loader builder + environment where you can build LKM. It's nothing special thou - it's Debian 8 + build-essential package + jq from their website (as debian repo ships with v1.4).

 

 

3 hours ago, loomes said:

The redpill only works with CPU "kvm64". When i switch to "Host" (i5-7260U) the redpill will crash.

Then i have compiled the redpill again on the Proxmox7 Host itself... but no luck: invalid module format

 

I think we need more Infos which compiler we must use.

The CPU host should work for i5. Can you post what you're getting, or does the kernel just freeze? I know on newer Xeons the v3 build from syno just freezes. However the difference between kvm64 and host is just the list of CPUID flags, so this can be easily tweaked to remove a problematic flag (Proxmox supports custom CPU definitions no problem).

 

 

1 hour ago, ilovepancakes said:

How do I get to this? I added two more serial ports (3 total) to the VM and #3 gets a different output than the #1 I posted above. #2 gets no output. Not sure if I am looking in right spot. I'm on ESXi.

As we mentioned in the FAQ 1st port gets "earlycon" while 2nd [for v3] or 3rd [for v4] gets the rest of the output. We will sort this out to invert what syno did with serial ports but since it's just a mild annoyance during devlopment we didn't get to that yet.

 

 

1 hour ago, GhostlyCrowd said:

I just installed Wheezy to test your method with GCC4 and the Module is Almost half the size (800kb area) of when I used GCC10 (1.36MB area) And redpill is working for me on DS3615xs, I coudlnt get the 918+ to compile.

GCC 10 thros 

 



START /linuxrc.syno
 redpill: module verification failed: signature and/or required key missing - tainting kernel
 module: redpill: Unknown rela relocation: 4
insmod: can't insert '/usr/lib/modules/rp.ko': invalid module format


That still doesn't solve the issue of no network at all in Virtual box, but Im getting further. 

Here is the full ttys0 dump from virtual box if its of any use.

https://pastebin.com/EfZpPe8r

Can you post ttyS1 or S2 output (depending on the kernel)?

 

GCC 10 will not work, it's way too new for Linux v3. As for the verification failure this is normal and expected - syno kernels have modules verification enabled so the kernel will do so and complain if it's not signed by their keys. It has really no effect on anything besides that message (and a flag displayed on kernel panics).

 

The size of final binary is not really a predictor of anything. Probably 90% of it are debug symbols anyway. Normally the code will fit in mere kilobytes. The version built by the default makefile has zero optimization enabled + all debug symbols are included + all debug messages are compiled in - all this to iron-out the bugs. The code will compile and work just fine with optimizations but will give sometimes useless stacktraces (as for example all static functions will likely be inlined by the compiler).

Edited by ThorGroup
  • Like 3
  • Thanks 1
Link to post
Share on other sites

Those who are testing on ESxi , could you explain how you are doing this , I have created the redpill .img file . using the steps provided for DS918+ 

not sure how I then boot this from ESXi ( I have tried using the vmdk for the previous loader , however that was unsuccessful ) 

 

Thanks

Link to post
Share on other sites

@ThorGroup I only seem to have ttys0 output and ttys1 which i paste binned previously for you. Here is ttys0's output. 

 

[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.105 (root@build1) (gcc version 4.9.3 20150311 (prerelease) (crosstool-NG 1.20.0) ) #25556 SMP Thu Mar 18 12:51:03 CST 2021
[    0.000000] Command line: BOOT_IMAGE=/zImage HddHotplug=0 withefi console=ttyS0,115200n8 netif_num=1 syno_hdd_detect=0 syno_port_thaw=1 vender_format_version=2 earlyprintk mac1=0011322CA785 syno_hdd_powerup_seq=0 pid=0x0001 syno_hw_version=DS3615xs vid=0x46f4 earlycon=uart8250,io,0x3f8,115200n8 sn=1780PDN123456 elevator=elevator root=/dev/md0 loglevel=15
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000] e820: BIOS-provided physical RAM map:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable
[    0.000000] BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000dffeffff] usable
[    0.000000] BIOS-e820: [mem 0x00000000dfff0000-0x00000000dfffffff] ACPI data
[    0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000100000000-0x000000011fffffff] usable
[    0.000000] Early serial console at I/O port 0x3f8 (options '115200n')
[    0.000000] bootconsole [uart0] enabled
[    0.000000] NX (Execute Disable) protection: active
[    0.000000] SMBIOS 2.5 present.
[    0.000000] DMI: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006
[    0.000000] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[    0.000000] e820: remove [mem 0x000a0000-0x000fffff] usable
[    0.000000] e820: last_pfn = 0x120000 max_arch_pfn = 0x400000000
[    0.000000] MTRR default type: uncachable
[    0.000000] MTRR variable ranges disabled:
[    0.000000] CPU MTRRs all blank - virtualized system.
[    0.000000] e820: last_pfn = 0xdfff0 max_arch_pfn = 0x400000000
[    0.000000] found SMP MP-table at [mem 0x0009fff0-0x0009ffff] mapped at [ffff88000009fff0]
[    0.000000] Base memory trampoline at [ffff880000099000] 99000 size 24576
[    0.000000] init_memory_mapping: [mem 0x00000000-0x000fffff]
[    0.000000]  [mem 0x00000000-0x000fffff] page 4k
[    0.000000] BRK [0x01ac2000, 0x01ac2fff] PGTABLE
[    0.000000] BRK [0x01ac3000, 0x01ac3fff] PGTABLE
[    0.000000] BRK [0x01ac4000, 0x01ac4fff] PGTABLE
[    0.000000] init_memory_mapping: [mem 0x11fe00000-0x11fffffff]
[    0.000000]  [mem 0x11fe00000-0x11fffffff] page 2M
[    0.000000] BRK [0x01ac5000, 0x01ac5fff] PGTABLE
[    0.000000] init_memory_mapping: [mem 0x11c000000-0x11fdfffff]
[    0.000000]  [mem 0x11c000000-0x11fdfffff] page 2M
[    0.000000] init_memory_mapping: [mem 0x100000000-0x11bffffff]
[    0.000000]  [mem 0x100000000-0x11bffffff] page 2M
[    0.000000] init_memory_mapping: [mem 0x00100000-0xdffeffff]
[    0.000000]  [mem 0x00100000-0x001fffff] page 4k
[    0.000000]  [mem 0x00200000-0xdfdfffff] page 2M
[    0.000000]  [mem 0xdfe00000-0xdffeffff] page 4k
[    0.000000] RAMDISK: [mem 0x3738f000-0x379befff]
[    0.000000] ACPI: RSDP 0x00000000000E0000 00024 (v02 VBOX  )
[    0.000000] ACPI: XSDT 0x00000000DFFF0030 0003C (v01 VBOX   VBOXXSDT 00000001 ASL  00000061)
[    0.000000] ACPI: FACP 0x00000000DFFF00F0 000F4 (v04 VBOX   VBOXFACP 00000001 ASL  00000061)
[    0.000000] ACPI: DSDT 0x00000000DFFF0470 02325 (v02 VBOX   VBOXBIOS 00000002 INTL 20100528)
[    0.000000] ACPI: FACS 0x00000000DFFF0200 00040
[    0.000000] ACPI: APIC 0x00000000DFFF0240 0005C (v02 VBOX   VBOXAPIC 00000001 ASL  00000061)
[    0.000000] ACPI: SSDT 0x00000000DFFF02A0 001CC (v01 VBOX   VBOXCPUT 00000002 INTL 20100528)
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000]  [ffffea0000000000-ffffea0003ffffff] PMD -> [ffff88011b600000-ffff88011effffff] on node 0
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x00001000-0x00ffffff]
[    0.000000]   DMA32    [mem 0x01000000-0xffffffff]
[    0.000000]   Normal   [mem 0x100000000-0x11fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00001000-0x0009efff]
[    0.000000]   node   0: [mem 0x00100000-0xdffeffff]
[    0.000000]   node   0: [mem 0x100000000-0x11fffffff]
[    0.000000] On node 0 totalpages: 1048462
[    0.000000]   DMA zone: 56 pages used for memmap
[    0.000000]   DMA zone: 21 pages reserved
[    0.000000]   DMA zone: 3998 pages, LIFO batch:0
[    0.000000]   DMA32 zone: 12488 pages used for memmap
[    0.000000]   DMA32 zone: 913392 pages, LIFO batch:31
[    0.000000]   Normal zone: 1792 pages used for memmap
[    0.000000]   Normal zone: 131072 pages, LIFO batch:31
[    0.000000] ACPI: PM-Timer IO Port: 0x4008
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
[    0.000000] ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
[    0.000000] IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level)
[    0.000000] ACPI: IRQ0 used by override.
[    0.000000] ACPI: IRQ2 used by override.
[    0.000000] ACPI: IRQ9 used by override.
[    0.000000] Using ACPI (MADT) for SMP configuration information
[    0.000000] smpboot: Allowing 2 CPUs, 0 hotplug CPUs
[    0.000000] nr_irqs_gsi: 40
[    0.000000] PM: Registered nosave memory: 000000000009f000 - 00000000000a0000
[    0.000000] PM: Registered nosave memory: 00000000000a0000 - 00000000000f0000
[    0.000000] PM: Registered nosave memory: 00000000000f0000 - 0000000000100000
[    0.000000] PM: Registered nosave memory: 00000000dfff0000 - 00000000e0000000
[    0.000000] PM: Registered nosave memory: 00000000e0000000 - 00000000fec00000
[    0.000000] PM: Registered nosave memory: 00000000fec00000 - 00000000fec01000
[    0.000000] PM: Registered nosave memory: 00000000fec01000 - 00000000fee00000
[    0.000000] PM: Registered nosave memory: 00000000fee00000 - 00000000fee01000
[    0.000000] PM: Registered nosave memory: 00000000fee01000 - 00000000fffc0000
[    0.000000] PM: Registered nosave memory: 00000000fffc0000 - 0000000100000000
[    0.000000] e820: [mem 0xe0000000-0xfebfffff] available for PCI devices
[    0.000000] setup_percpu: NR_CPUS:8 nr_cpumask_bits:8 nr_cpu_ids:2 nr_node_ids:1
[    0.000000] PERCPU: Embedded 26 pages/cpu @ffff88011fc00000 s76864 r8192 d21440 u1048576
[    0.000000] pcpu-alloc: s76864 r8192 d21440 u1048576 alloc=1*2097152
[    0.000000] pcpu-alloc: [0] 0 1 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 1034105
[    0.000000] Kernel command line: BOOT_IMAGE=/zImage HddHotplug=0 withefi console=ttyS0,115200n8 netif_num=1 syno_hdd_detect=0 syno_port_thaw=1 vender_format_version=2 earlyprintk mac1=0011322CA785 syno_hdd_powerup_seq=0 pid=0x0001 syno_hw_version=DS3615xs vid=0x46f4 earlycon=uart8250,io,0x3f8,115200n8 sn=1780PDN123456 elevator=elevator root=/dev/md0 loglevel=15
[    0.000000] Internal netif num: 1
[    0.000000] Vender format version: 2
[    0.000000] Mac1: 0011322CA785
[    0.000000] Power on seq num: 0
[    0.000000] Synology Hardware Version: DS3615xs-j
[    0.000000] Serial Number: 1780PDN123456
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
[    0.000000] xsave: enabled xstate_bv 0x7, cntxt size 0x340
[    0.000000] Memory: 4044508k/4718592k available (4948k kernel code, 524744k absent, 149340k reserved, 3703k data, 756k init)
[    0.000000] Kernel/User page tables isolation: disabled
[    0.000000] Hierarchical RCU implementation.
[    0.000000] 	CONFIG_RCU_FANOUT set to non-default value of 32
[    0.000000] 	RCU dyntick-idle grace-period acceleration is enabled.
[    0.000000] 	RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=2.
[    0.000000] NR_IRQS:4352 nr_irqs:512 16
[    0.000000] Console: colour dummy device 80x25
[    0.000000] console [ttyS0] enabled, bootconsole disabled



 

Link to post
Share on other sites

Just as a test, i installed GCC 4.9.3 on Ubuntu 20.10. and i still get 

 

START /linuxrc.syno
[    2.503357] redpill: module verification failed: signature and/or required key missing - tainting kernel
[    2.504634] module: redpill: Unknown rela relocation: 4
insmod: can't insert '/usr/lib/modules/rp.ko': invalid module format


So back to Weezy I go

Link to post
Share on other sites

@ThorGroup When i set CPU to Host: (same with ALL flags set to off)

[    7.001987] BUG: unable to handle kernel paging request at 0000000000fcdaa8
[    7.002545] IP: [<ffffffff812c3bd2>] strcmp+0x12/0x30
[    7.002925] PGD 26d58e067 PUD 270fec067 PMD 274f25067 PTE 800000027fbfa067
[    7.002925] Oops: 0001 [#166] PREEMPT SMP
[    7.002925] Modules linked in: redpill(OE)
[    7.002925] CPU: 3 PID: 3565 Comm: ash Tainted: G      D    OE   4.4.59+ #25556
[    7.002925] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.14.0-0-g155821a1990b-prebuilt.qemu.org 04/01/2014
[    7.002925] task: ffff88026ccd6040 ti: ffff880273490000 task.ti: ffff880273490000
[    7.002925] RIP: 0010:[<ffffffff812c3bd2>]  [<ffffffff812c3bd2>] strcmp+0x12/0x30
[    7.002925] RSP: 0018:ffff880273493f18  EFLAGS: 00010282
[    7.002925] RAX: ffffffffa00008e0 RBX: ffffffffa0009aa0 RCX: 000000000000058b
[    7.002925] RDX: 0000000000fcda48 RSI: ffff880274e94641 RDI: 0000000000fcdaa9
[    7.002925] RBP: ffff880273493f18 R08: 0000000000000000 R09: 688c3cb33593c6ff
[    7.002925] R10: 000000000000058b R11: 0000000000000206 R12: 0000000000fcdaa8
[    7.002925] R13: 0000000000fcda28 R14: 0000000000fcda48 R15: 0000000000000000
[    7.002925] FS:  00007feb66f65700(0000) GS:ffff88027fd80000(0000) knlGS:0000000000000000
[    7.002925] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    7.002925] CR2: 0000000000fcdaa8 CR3: 0000000271d8c000 CR4: 00000000003606f0
[    7.002925] Stack:
[    7.002925]  ffff880273493f48 ffffffffa000090c 0000000000fcdaa8 0000000000fcda28
[    7.002925]  0000000000000000 0000000000fcda48 0000000000fcda48 ffffffff81578b8a
[    7.002925]  00000000fc2c9fc5 00007feb6676e070 0000000000000001 00007feb66f679e0
[    7.002925] Call Trace:
[    7.002925]  [<ffffffffa000090c>] shim_sys_execve+0x2c/0x90 [redpill]
[    7.002925]  [<ffffffff81578b8a>] entry_SYSCALL_64_fastpath+0x1e/0x92
[    7.002925] Code: f7 48 8d 76 01 48 8d 52 01 0f b6 4e ff 84 c9 88 4a ff 75 ed 5d c3 0f 1f 00 55 48 89 e5 eb 04 84 c0 74 18 48 8d 7f 01 48 8d 76 01 <0f> b6 47 ff 3a 46 ff 74 eb 19 c0 83 c8 01 5d c3 31 c0 5d c3 66
[    7.002925] RIP  [<ffffffff812c3bd2>] strcmp+0x12/0x30
[    7.002925]  RSP <ffff880273493f18>
[    7.002925] CR2: 0000000000fcdaa8
[    7.002925] ---[ end trace 354c1394de4cdfde ]---

 

Edited by loomes
Link to post
Share on other sites

A person showed a screenshot of his successful installation of 7.0 in the telegram.

 

7_0web.thumb.jpg.5033da5193b35447b2e0538d0073d546.jpg

 

In my further understanding, he used your redpill-lkm, but he used the 7.0 version of the code to make, the specific way is to use https:/ /github.com/SynologyOpenSource/pkgscripts-ng this repo, and built a 7.0 environment, I also tried to use ds.apollolake-7.0 to make redpill.ko, the following is the information obtained using modinfo:

 

redpill7.0.thumb.png.4b3f423898e7fcc9f9fb929158171556.png

 

 

, but I directly put this redpill .ko is packaged into BootLoad using redpill-load and cannot install version 7.0. I don't know if pkgscripts-ng and some of his folder information are helpful.  @ThorGroup

.DSM7.0.thumb.png.7a77e7a1088b9152822fe68fd1980bb5.png

Edited by yanjun
  • Like 2
  • Haha 1
Link to post
Share on other sites
2 hours ago, ThorGroup said:

As @smoojay mentioned this is the output from ttyS0 and ends up as expected - rest of it will be on ttyS1 for Linux v3 or ttyS2 for Linux v4.

This is an issue with how synobios and DSM kernels are handling serial ports. There's a plan to make it work properly with 2 serial ports attached and "redirect" synobios to ttyS1. The current state is a byproduct of being a pre-alpha

 

Ahh okay, here is my serial output from the 3rd serial port I added to ESXi: https://pastebin.com/nvVTtVC2

 

I re-compiled using Debian 8 and GCC-4.9 like recommended to make sure I have a perfect loader and I still get the file corrupted error 13 message when it gets to 56% on "Installing DSM...".

 

1 hour ago, scoobdriver said:

Those who are testing on ESxi , could you explain how you are doing this , I have created the redpill .img file . using the steps provided for DS918+ 

not sure how I then boot this from ESXi ( I have tried using the vmdk for the previous loader , however that was unsuccessful ) 

 

Thanks

 

Convert the .img file to VMDK file using Starwind V2V Converter. It is free download on their site. Choose the options in there for ESXi compatible VMDKs then upload those and boot of that.

Link to post
Share on other sites

 

17 minutes ago, ilovepancakes said:

Convert the .img file to VMDK file using Starwind V2V Converter. It is free download on their site. Choose the options in there for ESXi compatible VMDKs then upload those and boot of that.

 

Thanks. Looks like I may need to find a windows machine. Unless qemu-utils is an option. 

Link to post
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.