Reply
Thread Tools
Posts: 16 | Thanked: 2 times | Joined on Oct 2009
#1
Hi all,

I hope this is the right place to ask this.
I was reading this link and found out that scratchbox does not work when VDSO is enabled.

Currently I'm using Ubuntu Jaunty 9.04 64 bit and the kernel is 2.6.28-11-generic.
It is mentioned that in order to disable it, I need to add vdso32=0 in my boot parameter. Where is this parameter located?
In the next sub title, it also mentioned that I can do that from the sysctl.conf file.

How can I check if currently the VDSO support is enabled in my ubuntu?

Thank you,
Adhika
 
Posts: 163 | Thanked: 175 times | Joined on Dec 2007 @ Alabama
#2
sudo nano /proc/sys/vm/vdso_enabled

if the value is 1, then its enabled
 
tso's Avatar
Posts: 4,783 | Thanked: 1,253 times | Joined on Aug 2007 @ norway
#3
can one do echo 0 > /proc/sys/vm/vdso_enabled to disable it?
__________________
Be warned, posts are often line of thoughts at highway speeds...
 
allnameswereout's Avatar
Posts: 3,397 | Thanked: 1,212 times | Joined on Jul 2008 @ Netherlands
#4
Originally Posted by tso View Post
can one do echo 0 > /proc/sys/vm/vdso_enabled to disable it?
Not on recent kernel.

This is all very well documented at the wiki entry for Maemo 5 SDK... I cannot say it easier than its written there...
__________________
Goosfraba! All text written by allnameswereout is public domain unless stated otherwise. Thank you for sharing your output!
 

The Following 2 Users Say Thank You to allnameswereout For This Useful Post:
Posts: 16 | Thanked: 2 times | Joined on Oct 2009
#5
Thanks a lot Rakia, I forgot that I read that part as well.

I tried looking for /proc/sys/vm/vdso_enabled and /proc/sys/kernel/vdso files but there were no such files.
Is there any particular reason why I cannot see those files?
How can I check if VDSO is enabled now?

Thank you,
Adhika
 
pelago's Avatar
Posts: 2,121 | Thanked: 1,540 times | Joined on Mar 2008 @ Oxford, UK
#6
I don't know about checking the /proc things, but if you're running Ubuntu Jaunty 9.04 64 bit and haven't added the boot parameter, then VDSO is enabled. The instructions on the wiki page mention how to disable it, although personally I used kgrubeditor for point-and-clickiness.

One way to check whether it's enabled is to try and login to scratchbox and see if you get the error message mentioned on the wiki page.
 
Posts: 16 | Thanked: 2 times | Joined on Oct 2009
#7
Thanks Pelago, I'll try it and let you all know.
 
allnameswereout's Avatar
Posts: 3,397 | Thanked: 1,212 times | Joined on Jul 2008 @ Netherlands
#8
Originally Posted by adhika_rexuss View Post
Thanks a lot Rakia, I forgot that I read that part as well.


I tried looking for /proc/sys/vm/vdso_enabled and /proc/sys/kernel/vdso files but there were no such files.
Is there any particular reason why I cannot see those files?
How can I check if VDSO is enabled now?
Yes, doesn't work anymore. You cannot edit the feature via proc anymore.

On recent kernels by default VDSO32 is enabled on x86-64, and cannot be disabled except boot loader command. So the default is vdso32=1

Therefore, if /proc/cmdline contains
  • Nothing or vdso32=1 then vdso32 is enabled.
  • vdso32=0 vdso32 is disabled.
  • vdso32=2 compat mode is on (don't know if the latter works with Scratchbox version 1)

So can just check if grep vdso32=0 /proc/cmdline returns anything. If it does return the boot loader command then that means vdso32 is disabled (good thing for Scratchbox v1).

Keep in mind vdso= is for 32 bit on 32 bit kernel, and 64 bit on 64 bit kernel. Therefore, don't touch vdso= in relation to this problem, it won't help.
__________________
Goosfraba! All text written by allnameswereout is public domain unless stated otherwise. Thank you for sharing your output!

Last edited by allnameswereout; 2009-10-12 at 20:56.
 

The Following User Says Thank You to allnameswereout For This Useful Post:
allnameswereout's Avatar
Posts: 3,397 | Thanked: 1,212 times | Joined on Jul 2008 @ Netherlands
#9
Bah, all this isn't necessary. You don't have to play in your bootloader to disable VDSO32. Its just that the setting has been renamed.

All you have to do is execute

# sysctl abi.vsyscall32=0

or if you prefer to use /proc

# echo 0>/proc/sys/abi/vsyscall32

To make this change permanent type

# echo abi.vsyscall32=0>>/etc/sysctl.conf

It will then be disabled even after reboot.

To check if VDSO32 is enabled execute

# sysctl abi.vsyscall32

or if you prefer to /proc

# cat /proc/sys/abi/vsyscall32

Note this only works on 2.6.25+ x86-64!
__________________
Goosfraba! All text written by allnameswereout is public domain unless stated otherwise. Thank you for sharing your output!

Last edited by allnameswereout; 2009-10-13 at 00:15.
 

The Following 3 Users Say Thank You to allnameswereout For This Useful Post:
Posts: 16 | Thanked: 2 times | Joined on Oct 2009
#10
Thanks Rakia, I'll try that later, now I'm stuck with the installation of maemo SDK.
it seems that I have to specify other user when I did

$ sudo ./maemo-scratchbox-install_5.0.sh -u USER
 
Reply


 
Forum Jump


All times are GMT. The time now is 10:07.