gebing
-
Posts
16 -
Joined
-
Last visited
Posts posted by gebing
-
-
actually, i think the physical button should use "poweroff" or "shutdown -h now"
normally we can shutdown in the web interface, which regard as the safest shutdown
however when something happen and the web service and ssh/telnet service is closed, you 'll finded no way to shutdown properly (unless you plug a keyboard and blindtype your login password poweroff
The shutdown script should be a follow:
syno_poweroff_task -r
poweroff
If you directly call poweroff, after reboot it will a notification for improper shutdown.
-
I tested gnoBoot alpha 10.2 and DSM 4.3-3827, it can corretly handle acpi event and acpid v1.0/v2.0 both work fine.
-
Can you build a snd-hda-intel.ko, sound card driver for intel ALC662/882.
-
Today i looked into boot message of dmesg, and found there is some error output:
[sat Mar 1 22:44:58 2014] fan: Unknown symbol thermal_cooling_device_register (err 0)
[sat Mar 1 22:44:58 2014] fan: Unknown symbol thermal_cooling_device_unregister (err 0)
It seems fan.ko is not load, and "lsmod |grep fan" output nothing. I studied module in /lib/modules and gnoboot's modules.conf in /.gnoboot/, and found maybe you missed load thermal_sys.ko depended by fan.ko, so may be you should change line in modules.conf to this:
HD_ACPI="button container thermal_sys fan processor thermal video"
-
i was not using insmod in shell to load button.ko, i was using insmod in gnoBoot's boot options, such as like:
kernel /zImage ihd_num=0 netif_num=2 syno_hw_version=DS3612xs sn=xxxxx vga=0x318 insmod=button <- It's the same thing as loading from shell.
and after DSM boot up, i used cmd 'lsmod | grep button' in SSH shell, and it returns nothing. and I looked in dmsg of /var/log/, it has the following error output:
[Thu Feb 27 20:23:42 2014] button: exports duplicate symbol acpi_lid_notifier_register (owned by kernel) <- Again, it's built-in!
So, it seems button.ko has tried to load on booting, but failed by duplicate symbol acpi_lid_notifier_register. <- Because you told it so...
Ok, i see. But i try to install acpid v2.0 on DSM, it seems acpid does not get any event after press power button. I looked into source of acpid, it use two method to detect event.
First method is watching the content of file /proc/acpi/event, but on your build of boot kernel, there is not such file in /proc/acpi. When i tried to make a empty file, it failed with "can't create /proc/acpi/event: nonexistent directory"
Second method is using netlink and the input layer instead of deprecated /proc/acpi/event interface, but it also failed becuase acpid will lookup files of /dev/input//event*, they are also missing, and acpid will output:
acpid: cannot open input layer
acpid: inotify_add_watch() failed: No such file or directory (2)
So, can you fixed it?
-
I'm working on beta5, restart from scratch with config file from v1.0 and enable just the ACPI_PROC_EVENT. Boot, and insmod button.ko.
I got nothing (tail -f /proc/acpi/event nor cat /proc/acpi/event) when pressing power button while DSM is started
Until this is not working we don't need to take care about the usermode program acpid (or busybox-acpid).
In DSM 4.3 v1.0 I've seen, that CONFIG_ACPI_PROCFS is not configured. So, could please enable the follwing parameters:
CONFIG_ACPI_PROCFS=y
CONFIG_ACPI_PROC_EVENT=y
CONFIG_ACPI_PROCFS_POWER=y
Respectively please set the CONFIG_ACPI_* parameters to the same values as in the working DSM 4.2 Kernel.
Thank you very much.
CONFIG_ACPI_PROCFS and CONFIG_ACPI_PROCFS_POWER are not enabled in 4.2.
Just rebuild kernel with these options enabled but still nothing...
What about the new implementation of acpi in /sys/ ? (CONFIG_ACPI_PROC_EVENT is deprecated)
I build a acpid v2.0 from source for using new implementation of acpi, and it can start on DSM 4.3 but with logout as below:
#acpid -l -d -f
acpid: cannot open input layer
inotify fd: 4
acpid: inotify_add_watch() failed: No such file or directory (2)
netlink opened successfully
acpid: starting up with netlink and the input layer
parsing conf file /etc/acpi/events/anything
acpid: 1 rule loaded
acpid: waiting for events: event logging is on
It seems acpid can not open netlink input layer when using netlink and the input layer instead of deprecated /proc/acpi/event interface. I look into source code, acpid will try to open /dev/input/event*, and it seems missing from synology DSM. acpid also try to read event from /proc/acpi/event, but as mentioned previously, when press power button, there was no output in /proc/acpi/event. So power button can not work.
-
i was not using insmod in shell to load button.ko, i was using insmod in gnoBoot's boot options, such as like:
kernel /zImage ihd_num=0 netif_num=2 syno_hw_version=DS3612xs sn=xxxxx vga=0x318 insmod=button
and after DSM boot up, i used cmd 'lsmod | grep button' in SSH shell, and it returns nothing. and I looked in dmsg of /var/log/, it has the following error output:
[Thu Feb 27 20:23:42 2014] button: exports duplicate symbol acpi_lid_notifier_register (owned by kernel)
So, it seems button.ko has tried to load on booting, but failed by duplicate symbol acpi_lid_notifier_register.
-
I used gnoBoot-alpha8 and with booting parameter of insmod=button, in but it failed with same error:
[Thu Feb 27 20:23:42 2014] button: exports duplicate symbol acpi_lid_notifier_register (owned by kernel)
maybe you need rebuild button.ko bundled in zImage. thx
-
I used gnoBoot to boot DSM 4.3-3810, and try to load button.ko by adding button to /etc/rc in KERNEL_MODULES, but after reboot, the button.ko seems not load. I checked by lsmod|grep button and return nothing. I checked boot log of /var/log/dmes, and there is some output like below:
[Thu Feb 20 14:30:08 2014] thermal_sys: exports duplicate symbol generate_netlink_event (owned by kernel)
[Thu Feb 20 14:30:08 2014] button: exports duplicate symbol acpi_lid_notifier_register (owned by kernel)
It seems button.ko has duplicate export symbol (acpi_lid_notifier_register, which is exported by kernel) to prevent load button module. When i use Trantor's synoboot img and it works ok, what's problem and difference between gnoboot and Trantor's synoboot ?
By the way, it seems thermal_sys.ko also did not load because of duplicate export symbol.
-
Maybe should compile kernel with ACPI_PROC_EVENT flag according to https://github.com/andy928/xpenology/bl ... pi/Kconfig
That is also my understanding: The kernel doesn't triggers the ACPI events. The busybox-acpid provided by me seems not to be the problem.
So, we need to recompile the kernel with ACPI_PROC_EVENT enabled.
I can confirm you that CONFIG_ACPI_PROC_EVENT=y is build in beta v3 et v4
I seems wired. IS there any other method to test whether APCI is work properlu ?
-
Maybe darkest_star is right.
I try to build a special version acpid2 to use specific libc.so.6 and ld-linux-x86-64.so.2 of the lastest version, and successfully run on my DSM 4.3 build 3810 pre V1.1 V4, and it can not get any ACPI events.
-
I download toolchain and source for acpid2, but it failed. Because acpid2 require glibc 2.5 and include some function in glibc 2.5, such as inotify_init in inotify.h.
Can anyone give some advisement? Can I install new version glibc to DSM without replace old glibc 2.3.6?
-
Maybe should compile kernel with ACPI_PROC_EVENT flag according to https://github.com/andy928/xpenology/bl ... pi/Kconfig
Or use acpid2 instead of acpid? According to website of acpid2 (http://sourceforge.net/projects/acpid2/), it use netlink and the input layer instead of deprecated /proc/acpi/event interface. But how can i build a binary package of acpid2?
-
I tried in Xpenology DS3612xs DSM 4.3 build 3810 pre V1.1 V4, and it seems build with ACPI enabled, but when i pressed the power button, nothing happened.
I checked whether button.ko is loaded by "lsmod | grep button", and it returns "button 4107 0" and it seems button.ko is loaded.
I checked by "cat /proc/acpi/event", it is empty and has no content even after i press power button, so acpid can not be triggered when power button is pressed.
So, what's the problem? Can anyone give some advise?
Boot to Harddisk
in Archives
Posted
8. Extract zImage from NanoBoot and copy to /mnt/local
How to extract zImage ?