VeNoM Posted March 14, 2014 Share #1 Posted March 14, 2014 I have set up a VM for 5.0 testing and I have some issues. - funcSYNODiskRetryReport unknown symbol in synobios - the checksum for pat contents fails for some reason Kernel patch --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c @@ -7414,7 +7414,7 @@ int (*funcSYNODeepSleepEvent)(unsigned int, unsigned int) = NULL; EXPORT_SYMBOL(funcSYNODeepSleepEvent); -#ifdef MY_DEF_HERE +#if (defined(MY_DEF_HERE) || defined(XPENOLOGY)) int (*funcSYNOSendEboxRefreshEvent)(int portIndex) = NULL; EXPORT_SYMBOL(funcSYNOSendEboxRefreshEvent); #endif --- a/drivers/ata/sata_mv.c +++ b/drivers/ata/sata_mv.c @@ -3706,6 +3706,7 @@ /*FIXME - Too brutal and directly, should separate into levels*/ void syno_sata_mv_gpio_write(u8 blFaulty, const unsigned short hostnum) { +#ifndef XPENOLOGY struct Scsi_Host *shost = scsi_host_lookup(hostnum); struct ata_port *ap = NULL; void __iomem *host_mmio = NULL; @@ -3740,6 +3741,8 @@ if (NULL != shost) { scsi_host_put(shost); } +#endif +END: return; } EXPORT_SYMBOL(syno_sata_mv_gpio_write); --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -618,7 +618,9 @@ ( pin < 0 || pin >= 96 ) || NULL == pValue ) { +#ifndef XPENOLOGY printk("parameter error. gpiobase=%08X, pin=%d, pValue=%p\n", gpiobase, pin, pValue); +#endif goto END; } --- a/drivers/tty/vt/vt.c +++ b/drivers/tty/vt/vt.c @@ -2474,7 +2474,7 @@ return kmsg_con; } -#ifndef MY_ABC_HERE +#if (defined(MY_DEF_HERE) || defined(XPENOLOGY)) /* * Console on virtual terminal * @@ -2574,7 +2574,7 @@ } #endif -#ifndef MY_ABC_HERE +#if (!defined(MY_ABC_HERE) || defined(XPENOLOGY)) static struct tty_driver *vt_console_device(struct console *c, int *index) { *index = c->index ? c->index-1 : fg_console; @@ -2942,7 +2942,7 @@ console_unlock(); -#ifndef MY_ABC_HERE +#if (!defined(MY_ABC_HERE) || defined(XPENOLOGY)) #ifdef CONFIG_VT_CONSOLE register_console(&vt_console_driver); #endif --- a/fs/compat_ioctl.c +++ b/fs/compat_ioctl.c @@ -1760,13 +1760,14 @@ sprintf(buf,"'%c'", (cmd>>_IOC_TYPESHIFT) & _IOC_TYPEMASK); if (!isprint(buf[1])) sprintf(buf, "%02x", buf[1]); +#ifndef XPENOLOGY compat_printk("ioctl32(%s:%d): Unknown cmd fd(%d) " "cmd(%08x){t:%s;sz:%u} arg(%08x) on %s\n", current->comm, current->pid, (int)fd, (unsigned int)cmd, buf, (cmd >> _IOC_SIZESHIFT) & _IOC_SIZEMASK, (unsigned int)arg, fn); - +#endif if (path) free_page((unsigned long)path); } --- a/include/linux/syno_user.h +++ b/include/linux/syno_user.h @@ -2,6 +2,11 @@ #ifndef __SYNO_USER_H_ #define __SYNO_USER_H_ + +/** + * XPENOLOGY + */ +#define XPENOLOGY /** * Dsc: Synology multimedia server feature. For indexing video, photo, --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -228,7 +228,7 @@ int (*funcSYNOGetHwCapability)(CAPABILITY *) = NULL; EXPORT_SYMBOL(funcSYNOGetHwCapability); -#ifdef MY_DEF_HERE +#if (defined(MY_DEF_HERE) || defined(XPENOLOGY)) EUNIT_PWRON_TYPE (*funcSynoEunitPowerctlType)(void) = NULL; EXPORT_SYMBOL(funcSynoEunitPowerctlType); #endif Link to comment Share on other sites More sharing options...
GatekeeperZA Posted March 14, 2014 Share #2 Posted March 14, 2014 how..? / What loader did you use to install 4458 .. ? Link to comment Share on other sites More sharing options...
Diverge Posted March 14, 2014 Share #3 Posted March 14, 2014 how..? / What loader did you use to install 4458 .. ? If he's posting a kernel patch, he probably built his own Link to comment Share on other sites More sharing options...
T-REX-XP Posted March 15, 2014 Share #4 Posted March 15, 2014 hi! this is good news. i think, we need to setup server for autobuild (CI - Jenkins, etc) (same with android autobuild custom firmware) and autogenerate new images, and add vote for new futures )) what do you think ?? i can help with server. Link to comment Share on other sites More sharing options...
VeNoM Posted March 17, 2014 Author Share #5 Posted March 17, 2014 Apparently Synology introduced a new checksum in 4458. When loaded, the synobios creates /proc/syno_cpu_arch. Jan 1 00:00:01 syslog: util_fhost.c:1204 Serial number is 0 out of size Jan 1 00:00:02 syslaog: format start, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:02 syslog: ninstaller.c:717 Dev: sda, DiskPath: /dev/sda, Check Partitions: 1 Jan 1 00:00:02 syslog: ninstaller.c:577 failed to get upnpmodelname from [/tmpMnt1234/etc.defaults/synoinfo.conf]. Jan 1 00:00:02 syslog: ninstaller.c:584 failed to get buildnumber from [/tmpMnt1234/etc.defaults/VERSION]. Jan 1 00:00:02 syslog: ../libsynosdk/lib/system/system_platform_get.c:35 failed to get unique from /tmpMnt1234/etc.defaults/synoinfo.conf errno=[0x0900] Jan 1 00:00:02 syslog: ninstaller.c:600 failed to get platform from [/tmpMnt1234/etc.defaults/synoinfo.conf]. Jan 1 00:00:02 syslog: ../libsynosdk/lib/system/system_max_align_get.c:85 [/tmpMnt1234/.system_info/pgsql_alignment] doesn't exist, check model name for alignment Jan 1 00:00:02 syslog: ../libsynosdk/lib/system/system_endian_get.c:61 [/tmpMnt1234/.system_info/endian] doesn't exist, check model name for endian Jan 1 00:00:02 syslog: ../libsynosdk/lib/system/system_bit_get.c:57 [/tmpMnt1234/.system_info/bits] doesn't exist, check model name for bits Jan 1 00:00:02 syslog: ninstaller.c:839(BlCheckSystemStatusRAID): Has Syno Partition = 1, System Status: 2 Jan 1 00:00:02 syslog: ninstaller.c:846(BlCheckSystemStatusRAID): gszUpgradeVolDev = /dev/md0 Jan 1 00:00:02 syslog: ninstaller.c:848(BlCheckSystemStatusRAID): gszUpgradeVolMnt = /tmpData Jan 1 00:00:02 syslog: ninstaller.c:849(BlCheckSystemStatusRAID): we use md0 to upgrade. Jan 1 00:00:02 syslog: ninstaller.c:1504 gblSupportRaid: 1, gSysStatus: 2, gblCreateDataVol: 0, gblSystemRecoverable: 0 Jan 1 00:00:02 syslog: ninstaller.c:2585 CreateDataVol=[0], CheckBadblocks=[0] Jan 1 00:00:02 syslog: ninstaller.c:2651(ErrFHOSTDoFdiskFormat) retv=[0] Jan 1 00:00:02 syslog: ErrFHOSTTcpResponseCmd: cmd=[2], ulErr=[0] Jan 1 00:00:02 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:02 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[3] ret:0 Jan 1 00:00:02 syslog: index=[0], ulRate=[101] Jan 1 00:00:02 kernel: [ 285.784509] md1: detected capacity change from 2147418112 to 0 Jan 1 00:00:02 kernel: [ 285.785248] md: md1: set sda2 to auto_remap [0] Jan 1 00:00:02 kernel: [ 285.785902] md: md1 stopped. Jan 1 00:00:02 kernel: [ 285.786493] md: unbind Jan 1 00:00:02 kernel: [ 285.793025] md: export_rdev(sda2) Jan 1 00:00:02 kernel: [ 285.798581] md0: detected capacity change from 2549940224 to 0 Jan 1 00:00:02 kernel: [ 285.799750] md: md0: set sda1 to auto_remap [0] Jan 1 00:00:02 kernel: [ 285.800802] md: md0 stopped. Jan 1 00:00:02 kernel: [ 285.801735] md: unbind Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 default.hotplug[6143]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 default.hotplug[6146]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6154]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 default.hotplug[6168]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6176]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 kernel: [ 285.807034] md: export_rdev(sda1) Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 default.hotplug[6221]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6234]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6224]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:02 default.hotplug[6246]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6256]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6349]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6348]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6382]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6400]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6405]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:02 default.hotplug[6407]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:04 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:04 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[3] ret:0 Jan 1 00:00:04 syslog: index=[0], ulRate=[102] Jan 1 00:00:05 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:05 default.hotplug[6463]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:05 kernel: [ 289.056405] md: bind Jan 1 00:00:05 kernel: [ 289.057299] bio: create slab at 1 Jan 1 00:00:05 kernel: [ 289.057975] md/raid1:md0: active with 1 out of 12 mirrors Jan 1 00:00:05 kernel: [ 289.058692] md0: detected capacity change from 0 to 2549940224 Jan 1 00:00:05 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:05 default.hotplug[6480]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:06 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:06 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[3] ret:0 Jan 1 00:00:06 syslog: index=[0], ulRate=[103] Jan 1 00:00:08 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:08 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[3] ret:0 Jan 1 00:00:08 syslog: index=[0], ulRate=[104] Jan 1 00:00:08 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:08 default.hotplug[6496]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:08 kernel: [ 292.118088] md: bind Jan 1 00:00:08 kernel: [ 292.118864] md/raid1:md1: active with 1 out of 12 mirrors Jan 1 00:00:08 kernel: [ 292.119565] md1: detected capacity change from 0 to 2147418112 Jan 1 00:00:08 syslog: raidtool.c:419 system inited on [/dev/sda1 ], [/dev/sda2 ] Jan 1 00:00:08 kernel: [ 292.121560] md1: unknown partition table Jan 1 00:00:08 syslog: ../libsynosdk/lib/external/external_disk_port_check.c:87 expected sdx or /dev/sdx, not md, not match any port type Jan 1 00:00:08 default.hotplug[6513]: couldn't exec /usr/syno/hotplug/block.agent Jan 1 00:00:08 kernel: [ 292.137124] md0: unknown partition table Jan 1 00:00:10 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:10 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[3] ret:0 Jan 1 00:00:10 syslog: index=[0], ulRate=[100] Jan 1 00:00:12 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:12 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[3] ret:0 Jan 1 00:00:12 syslog: index=[0], ulRate=[100] Jan 1 00:00:12 kernel: [ 296.111885] EXT4-fs (md0): barriers disabled Jan 1 00:00:12 kernel: [ 296.127975] EXT4-fs (md0): mounted filesystem with ordered data mode. Opts: Jan 1 00:00:12 syslog: ninstaller.c:2605 /bin/mount /dev/md0 /tmpRoot Jan 1 00:00:12 kernel: [ 296.186880] EXT4-fs (md0): barriers disabled Jan 1 00:00:12 kernel: [ 296.197544] EXT4-fs (md0): mounted filesystem with ordered data mode. Opts: Jan 1 00:00:12 syslog: ninstaller.c:2607 mount root partition failed. Jan 1 00:00:12 syslog: ninstaller.c:2646 retv=[0] Jan 1 00:00:14 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:14 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[3] ret:0 Jan 1 00:00:14 syslog: ninstaller.c:2520(ErrFHOSTUpdateMkfsProgress) gInstallStage=[3] , process=[/dev/md0] Jan 1 00:00:14 syslog: ninstaller.c:2524(ErrFHOSTUpdateMkfsProgress) switch to PROG_FORMAT_DATA Jan 1 00:00:14 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[4] ret:0 Jan 1 00:00:14 syslog: ninstaller.c:2558(ErrFHOSTUpdateMkfsProgress) skip format data volume... Jan 1 00:00:14 syslog: index=[1], ulRate=[100] Jan 1 00:00:16 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:16 syslog: ninstaller.c:2483(ErrFHOSTUpdateMkfsProgress) gInstallStage=[4] ret:0 Jan 1 00:00:16 syslog: ninstaller.c:2558(ErrFHOSTUpdateMkfsProgress) skip format data volume... Jan 1 00:00:16 syslog: index=[1], ulRate=[100] Jan 1 00:00:18 syslog: pat start, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:18 kernel: [ 301.805297] EXT4-fs (md0): barriers disabled Jan 1 00:00:18 kernel: [ 301.858438] EXT4-fs (md0): mounted filesystem with ordered data mode. Opts: Jan 1 00:00:18 syslog: ninstaller.c:1709(ErrFHOSTReceiveUpgradeFile): szUpgradeFile = /tmpData//upd@te.pat Jan 1 00:00:23 syslog: ninstaller.c:1740(ErrFHOSTReceiveUpgradeFile) cRead=[4], ulFileSize=[183347200] Jan 1 00:00:24 syslog: Estimated time =[2] Jan 1 00:00:25 syslog: ErrFHOSTTcpResponseCmd: cmd=[5], ulErr=[0] Jan 1 00:00:25 syslog: Starting ErrFHOSTDoUpgrade()... Jan 1 00:00:25 syslog: ErrFHOSTTcpResponseCmd: cmd=[5], ulErr=[0] Jan 1 00:00:25 syslog: ErrFHOSTTcpResponseCmd: cmd=[5], ulErr=[0] Jan 1 00:00:25 syslog: ninstaller.c:2702(ErrFHOSTDoUpgrade) retv=[0] Jan 1 00:00:25 syslog: ErrFHOSTDoUpgrade() Done Jan 1 00:00:25 syslog: Remove /tmpData/upd@te...cmd=[/bin/rm -rf /tmpData/upd@te > /dev/null 2>&1] Jan 1 00:00:25 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:25 syslog: alz=[0], prg=[0], cfg=[0], retv=[0] Jan 1 00:00:25 syslog: Create /tmpData/upd@te...cmd=[/bin/mkdir -p /tmpData/upd@te > /dev/null 2>&1] Jan 1 00:00:25 syslog: Untar /tmpData/upd@te.pat...cmd=[/bin/tar xpf "/tmpData/upd@te.pat" -C /tmpData/upd@te > /dev/null 2>&1] Jan 1 00:00:27 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:27 syslog: alz=[0], prg=[0], cfg=[0], retv=[0] Jan 1 00:00:29 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:29 syslog: alz=[0], prg=[0], cfg=[0], retv=[0] Jan 1 00:00:31 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:31 syslog: alz=[0], prg=[0], cfg=[0], retv=[0] Jan 1 00:00:33 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:33 syslog: alz=[0], prg=[0], cfg=[0], retv=[0] Jan 1 00:00:35 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:35 syslog: alz=[0], prg=[0], cfg=[0], retv=[0] Jan 1 00:00:37 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:37 syslog: alz=[0], prg=[0], cfg=[0], retv=[0] Jan 1 00:00:37 syslog: Verify checksum of [/tmpData/upd@te]... Jan 1 00:00:37 syslog: ErrFHOSTCheckUpgradeFile: Fail to verify checksum of /tmpData/upd@te...(retv=0x3800) Jan 1 00:00:37 syslog: ErrFHOSTCheckUpgradeFile: set error code cmd=[/bin/echo "A:-13:" > /tmp/update.progress] Jan 1 00:00:37 syslog: ninstaller.c:2692(ErrFHOSTDoUpgrade) err=[-1] Jan 1 00:00:39 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:39 syslog: alz=[0], prg=[0], cfg=[0], retv=[-13] Jan 1 00:00:39 syslog: ninstaller.c:2197(ErrFHOSTUpdaterProgress) retv=-13 Jan 1 00:00:41 syslog: query prog, szBuf = ^R4VxSYNONI^A^D^A Jan 1 00:00:41 syslog: alz=[0], prg=[0], cfg=[0], retv=[-13] Jan 1 00:00:41 syslog: ninstaller.c:2197(ErrFHOSTUpdaterProgress) retv=-13 Jan 1 00:00:41 syslog: ninstaller.c:1541(ErrFHOSTNetInstaller) read socket fail, ret=[0], errno=[10] Jan 1 00:00:41 syslog: ninstaller.c:1625(ErrFHOSTNetInstaller) retSel=[1] err=(10)[No child processes] Jan 1 00:00:41 syslog: ninstaller.c:1640(ErrFHOSTNetInstaller) Jan 1 00:00:41 syslog: Return from TcpServer() Jan 1 00:00:01 syslog: util_fhost.c:1204 Serial number is 0 out of size Jan 1 00:00:16 syslog: Return from TcpServer() Jan 1 00:01:19 syslog: util_fhost.c:1204 Serial number is 0 out of size Jan 1 00:01:22 syslog: ninstaller.c:717 Dev: sda, DiskPath: /dev/sda, Check Partitions: 1 Jan 1 00:01:22 syslog: ninstaller.c:577 failed to get upnpmodelname from [/tmpMnt1234/etc.defaults/synoinfo.conf]. Jan 1 00:01:22 syslog: ninstaller.c:584 failed to get buildnumber from [/tmpMnt1234/etc.defaults/VERSION]. Jan 1 00:01:22 syslog: ../libsynosdk/lib/system/system_platform_get.c:35 failed to get unique from /tmpMnt1234/etc.defaults/synoinfo.conf errno=[0x0900] Jan 1 00:01:22 syslog: ninstaller.c:600 failed to get platform from [/tmpMnt1234/etc.defaults/synoinfo.conf]. Jan 1 00:01:22 syslog: ../libsynosdk/lib/system/system_max_align_get.c:85 [/tmpMnt1234/.system_info/pgsql_alignment] doesn't exist, check model name for alignment Jan 1 00:01:22 syslog: ../libsynosdk/lib/system/system_endian_get.c:61 [/tmpMnt1234/.system_info/endian] doesn't exist, check model name for endian Jan 1 00:01:22 syslog: ../libsynosdk/lib/system/system_bit_get.c:57 [/tmpMnt1234/.system_info/bits] doesn't exist, check model name for bits Jan 1 00:01:22 syslog: ninstaller.c:839(BlCheckSystemStatusRAID): Has Syno Partition = 1, System Status: 2 Jan 1 00:01:22 syslog: ninstaller.c:846(BlCheckSystemStatusRAID): gszUpgradeVolDev = /dev/md0 Jan 1 00:01:22 syslog: ninstaller.c:848(BlCheckSystemStatusRAID): gszUpgradeVolMnt = /tmpData Jan 1 00:01:22 syslog: ninstaller.c:849(BlCheckSystemStatusRAID): we use md0 to upgrade. Jan 1 00:01:22 syslog: ninstaller.c:1504 gblSupportRaid: 1, gSysStatus: 2, gblCreateDataVol: 0, gblSystemRecoverable: 0 Jan 1 00:01:26 syslog: /source/libsynosdk/lib/partition/partition_check_layout.c:52 sd: dont contain partition [1] Jan 1 00:01:28 syslog: ninstaller.c:717 Dev: sda, DiskPath: /dev/sda, Check Partitions: 1 Jan 1 00:01:28 syslog: ninstaller.c:577 failed to get upnpmodelname from [/tmpMnt1234/etc.defaults/synoinfo.conf]. Jan 1 00:01:28 syslog: ninstaller.c:584 failed to get buildnumber from [/tmpMnt1234/etc.defaults/VERSION]. Jan 1 00:01:28 syslog: ../libsynosdk/lib/system/system_platform_get.c:35 failed to get unique from /tmpMnt1234/etc.defaults/synoinfo.conf errno=[0x0900] Jan 1 00:01:28 syslog: ninstaller.c:600 failed to get platform from [/tmpMnt1234/etc.defaults/synoinfo.conf]. Jan 1 00:01:28 syslog: ../libsynosdk/lib/system/system_max_align_get.c:85 [/tmpMnt1234/.system_info/pgsql_alignment] doesn't exist, check model name for alignment Jan 1 00:01:28 syslog: ../libsynosdk/lib/system/system_endian_get.c:61 [/tmpMnt1234/.system_info/endian] doesn't exist, check model name for endian Jan 1 00:01:28 syslog: ../libsynosdk/lib/system/system_bit_get.c:57 [/tmpMnt1234/.system_info/bits] doesn't exist, check model name for bits Jan 1 00:01:28 syslog: ninstaller.c:839(BlCheckSystemStatusRAID): Has Syno Partition = 1, System Status: 2 Jan 1 00:01:28 syslog: ninstaller.c:846(BlCheckSystemStatusRAID): gszUpgradeVolDev = /dev/md0 Jan 1 00:01:28 syslog: ninstaller.c:848(BlCheckSystemStatusRAID): gszUpgradeVolMnt = /tmpData Jan 1 00:01:28 syslog: ninstaller.c:849(BlCheckSystemStatusRAID): we use md0 to upgrade. Jan 1 00:01:28 syslog: ninstaller.c:1504 gblSupportRaid: 1, gSysStatus: 2, gblCreateDataVol: 0, gblSystemRecoverable: 0 Jan 1 00:01:32 syslog: /source/libsynosdk/lib/partition/partition_check_layout.c:52 sd: dont contain partition [1] Link to comment Share on other sites More sharing options...
gnoboot Posted March 18, 2014 Share #6 Posted March 18, 2014 linux backports (compat-wireless) doesn't compile, and latest tg3 drivers requires a patch in makeflags.sh (comment UAPI). Link to comment Share on other sites More sharing options...
VeNoM Posted March 18, 2014 Author Share #7 Posted March 18, 2014 I will try to use the default kernel built by synology with modules for my VM to see if it passes the checksum. I do not have the time right now to investigate this. Anyone else ? Link to comment Share on other sites More sharing options...
Trantor Posted August 8, 2014 Share #8 Posted August 8, 2014 Hi all, I find some hours to start working on building a clean kernel with Syno GPL 5.x branch. Of course I run into the same issues as VeNoM ^^ - the checksum for pat contents fails for some reason In my pat I just modify the hda1.tgz file and no problem. - funcSYNODiskRetryReport unknown symbol in synobios I check in the synobios.ko (with a disassembler) and find out that funcSYNODiskRetryReport is very simalar to funcSYNOSataErrorReport. So in drivers/ata/libata-core.c I add: int (*funcSYNODiskRetryReport)(unsigned int, unsigned int, unsigned int, unsigned int, unsigned int) = NULL; EXPORT_SYMBOL(funcSYNODiskRetryReport); I sucessfully installed my modified .pat file and access DSM. But I can't create a volume. In the console I have errors: [ 178.338114] dsmnotify.cgi[9431]: segfault at 0 ip 000000000804ccb8 sp 00000000ff97ade0 error 6 [ 178.387241] storagehandler.[9432]: segfault at 0 ip 000000000809e298 sp 00000000ff8e9fe0 error 6 I don't know how sancome did fix this PS: For now I stay with 4458 build because newer versions have more protections. Link to comment Share on other sites More sharing options...
VeNoM Posted August 8, 2014 Author Share #9 Posted August 8, 2014 Try installing sancome's version and look in /proc/kallsyms for funcSYNODiskRetryReport. If is't there, he has the solution. sancome's version still uses the mount for pcidevices ? cat /proc/kallsyms | grep -i funcSYNODiskRetryReport How did you fixed the pat file to bypass the checksum ? Link to comment Share on other sites More sharing options...
analyser Posted August 9, 2014 Share #10 Posted August 9, 2014 cannot contact with sancome since his website down ... Link to comment Share on other sites More sharing options...
analyser Posted August 9, 2014 Share #11 Posted August 9, 2014 Who can send a msg to sancome, I don't have that privileges. Link to comment Share on other sites More sharing options...
Trantor Posted August 9, 2014 Share #12 Posted August 9, 2014 Try installing sancome's version and look in /proc/kallsyms for funcSYNODiskRetryReport. If is't there, he has the solution.sancome's version still uses the mount for pcidevices ? cat /proc/kallsyms | grep -i funcSYNODiskRetryReport Return nothing I'm not even sure that funcSYNODiskRetryReport is related to my segfault problem. Yes he still uses the pcidevices fix. How did you fixed the pat file to bypass the checksum ? I rename the pat in tar, extract it, modify what you need, regenerate checksum.syno file with synochecksum. Repack it with tar command and finally rename it to .pat Do it with linux to keep files permissions. cannot contact with sancome since his website down ... I send him a PM, hope he will answer. Link to comment Share on other sites More sharing options...
Trantor Posted August 10, 2014 Share #13 Posted August 10, 2014 I found some interesting stuff on GitHub today. A guy named liwei (maybe sancome) have a interesting repo : https://github.com/liwei/xpenology-3.x After some digging, I found why my kernel isn't working : it's lacking synoacl_ext4. This little genius (BIG thumb up ) have backported synoacl_ext4 from 4418 sources (because Synology doesn't release synoacl_ext4 code in 4458). So I patched my sources with his works on synoacl_ext4 (again big big thanks to him). I got a working DSM 5.0-4458 with iscsi (regular/block), nfs working ... but still have the segfault in the console: [spoiler=segfault][ 1414.313564] PkgSynoMan.cgi[24472]: segfault at 0 ip 0000000008060618 sp 00000000ffcca330 error 6 [ 1969.301417] volumehandler.c[27222]: segfault at 0 ip 000000000809dba8 sp 00000000fffe4fb0 error 6 [ 1969.716986] storagehandler.[28669]: segfault at 0 ip 000000000809e298 sp 00000000ffd61110 error 6 [ 1971.865238] dsmnotify.cgi[29710]: segfault at 0 ip 000000000804ccb8 sp 00000000ffa5a8c0 error 6 liwei patch his sources to hide these segfault We need investigate the root cause of those segfault instead of blindly ignore them. If someone have skills for debugging segfault, please let me know Link to comment Share on other sites More sharing options...
Vortex Posted August 10, 2014 Share #14 Posted August 10, 2014 /usr/syno/synoman/webman/modules/PkgManApp/PkgSynoMan.cgi /usr/syno/synoman/webman/modules/StorageManager/volumehandler.cgi /usr/syno/synoman/webman/modules/StorageManager/storagehandler.cgi /usr/syno/synoman/webman/modules/DSMNotify/dsmnotify.cgi all does Sanity check. #define ENXIO 6 /* No such device or address */ Link to comment Share on other sites More sharing options...
Trantor Posted August 10, 2014 Share #15 Posted August 10, 2014 /usr/syno/synoman/webman/modules/PkgManApp/PkgSynoMan.cgi/usr/syno/synoman/webman/modules/StorageManager/volumehandler.cgi /usr/syno/synoman/webman/modules/StorageManager/storagehandler.cgi /usr/syno/synoman/webman/modules/DSMNotify/dsmnotify.cgi all does Sanity check. #define ENXIO 6 /* No such device or address */ Even in the 4458 build ? How to know what device/address are checked ? What can we do in order to get these sanity ckecks happy ? Link to comment Share on other sites More sharing options...
Vortex Posted August 10, 2014 Share #16 Posted August 10, 2014 Even in the 4458 build ? Yes, but less strict. How to know what device/address are checked ?What can we do in order to get these sanity ckecks happy ? idk maybe gdb helps... Link to comment Share on other sites More sharing options...
Trantor Posted August 10, 2014 Share #17 Posted August 10, 2014 I maybe find something with IDA in storagehandler.cgi: [spoiler=]LOAD:00C274F3 cmp eax, [ebx] LOAD:00C274F5 jnz loc_C27491 LOAD:00C274FB xchg eax, edx LOAD:00C274FC xchg eax, ebx LOAD:00C274FD cld LOAD:00C274FE lodsd LOAD:00C274FF push eax LOAD:00C27500 mov ecx, esp LOAD:00C27502 push eax LOAD:00C27503 push ecx LOAD:00C27504 push edx LOAD:00C27505 lodsd LOAD:00C27506 push eax LOAD:00C27507 lodsd LOAD:00C27508 mov [esp+40h+var_34], eax LOAD:00C2750C push esi LOAD:00C2750D call ebp LOAD:00C2750F add esp, 2Ch LOAD:00C27512 retn LOAD:00C27512 sub_C274C6 endp ; sp-analysis failed But I'm unable to understand anything is that sh*t What's idk ? Link to comment Share on other sites More sharing options...
In0cenT Posted August 11, 2014 Share #18 Posted August 11, 2014 What's idk ? Short form for I Dont Know. Link to comment Share on other sites More sharing options...
Trantor Posted August 11, 2014 Share #19 Posted August 11, 2014 What's idk ? Short form for I Dont Know. I'm out... Link to comment Share on other sites More sharing options...
Schnapps Posted August 11, 2014 Share #20 Posted August 11, 2014 )) +1 I thought it's a Linux command or utility ) Link to comment Share on other sites More sharing options...
In0cenT Posted August 12, 2014 Share #21 Posted August 12, 2014 You arent missing anything out, I more get the feeling when reading your "Coding talks". Link to comment Share on other sites More sharing options...
Trantor Posted August 12, 2014 Share #22 Posted August 12, 2014 I'm still try to get rid of the segfault error and find some informations on the forum. I tried what ssiril post here : viewtopic.php?f=2&t=2962&p=17381&hilit=lspci#p17391 Volumes gets unmounted. Even if I just create a dumb script named lspci that call the real lspci command, volumes gets unmounted... this is wierd Link to comment Share on other sites More sharing options...
Trantor Posted August 14, 2014 Share #23 Posted August 14, 2014 Thanks to XPEH and hours of testing I successfully manage to remove segfault errors (related to lspci). For now it's done in a very ugly way. To do it properly I need to build a kernel module. My C skills are a little bit rusty but after some hours/days of hard work I think I can do it ^^ EDIT : My mistake, I can't get rid rid of these segfault errors, nor keep DSM happy with my fake pci devices Link to comment Share on other sites More sharing options...
Recommended Posts