[Q] TUN module support w/ Bali 3.3 kernel. - Samsung Galaxy S (4G Model)

I have been recently trying to get OpenVPN to work with my Samsung Galaxy S 4G t959v.
One of the problems I ran into was the lack of a tun module (tun.ko?). So I proceeded to install the Bali v3.3 Kernel by Dr. Honk.
http://forum.xda-developers.com/showthread.php?t=1080871
After I flashed my android with this kernel. I double checked to make sure it worked and sure enough the kernel version was the new Bali Kernel. However, I still didn't have the proper TUN Capability that it specifically lists as a feature in the kernel.
I was wondering, did I actually install the Bali Kernel unsuccessfully but it just said it was actually in the system. I checked in lib/modules and tun.ko was not to be found.
(I came to the conclusion I needed this module through the error that I was receiving from OpenVPN and quite a few google searches of it: "FATAL:Cannot allocate TUN/TAP dev dynamically")
Anyway, I did all sorts of stupid crap to try and make it work, but I still can't find a way to do this. I'm under the understanding I can't really take a tun.ko file from another kernel (At least that is what I have read, but I may just be flat out wrong). Does anyone have any ideas?
Apologies for the long post, however I at least used some proper english!

Related

[Info/brainstorming] Compiling modules for the 2.6.32 beta kernel OBSOLETE

This thread is now obsolete.
Kernel sources for build 5.26.0 have been released:
https://opensource.motorola.com/sf/go/projects.milestone/frs.milestone_source_froyo
I've pushed some new pre-compiled modules to github, though beware, I haven't had time to test all of them on device yet:
https://github.com/nadlabak/android...mmit/b300803348705d3fc5ce76d8c88d57186748a370
As the kernel sources are not yet available from the Motorola's open source project, here is an outline how I compiled the overclock and cpufreq governor modules. (Btw., the overclock module needed a substantial adaptation, see the source here: http://android.doshaska.net/2.6.32oc )
I'm using the sources from this AOSP repo:
Code:
git clone git://android.git.kernel.org/kernel/omap.git
git checkout --track -b android-omap-2.6.32 origin/android-omap-2.6.32
Use the sholes config:
Code:
make sholes_defconfig
flags that need to be disabled:
CONFIG_LOCALVERSION_AUTO
CONFIG_MODVERSIONS
CONFIG_DEBUG_MUTEXES
CONFIG_SCHEDSTATS
CONFIG_SCHED_DEBUG
[updated on 17.01.2011, thanks go to Skrilax_CZ]
At least the ext2 will work without panics when compiled using this config.
For tun, cifs and nfs there is still some additional config mismatch that prevents the modules to work without null pointer dereference oops.
Also, even when no custom kernel module is used, you can get the kernel panic very easily, try to enable wifi and do:
Code:
cat /proc/kallsyms
If you're interested in a more detailed android kernel compilation guide, you can e.g. roughly follow this Droid kernel guide: http://www.droidforums.net/forum/rescue-squad-guides/31452-how-compile-your-own-kernel.html
Thanks for starting this thread kabaldan! It is a great starting point in tackling the issue of adding tun support to the new kernel (tun.ko module). I am not as good as many others in this, but trying won't hurt. Meanwhile if someone else is working on tun support - share experience here!
If kernel seems to be ok, sometimes mounting with new version of busybox won't work.
I used to get kernel panic when use newer version of busybox (not Android kernel but my own embedded linux)
Hey Nadlabak can you add DLNA function of CM6?
same problem using droidx kernel sources. insmod ok, mount reboots the phone
yantz
I tried droid2 kernel module - doesn't work either
I noticed OpenVPN included in CM6 also relies on this kernel module. Hence doesn't work. I guess we won't (ever) see kernel sources for that leaked kernel we are now using. I assume Motorola will release the sources sooner or later, but not before official Froyo layout. The waiting is killing me! kabaldan, can't you try to do some magic as you did with the overclock module? The beer is from me!!!
Can you test this attached tun.ko?
Insmod is OK, but I currently don't have time for any further tests...
EDIT: don't bother, kernel panic as usual
Module loads fine, but when attempt to use it, phone reboots, just like with the module compiled from DroidX sources..
leobg said:
Module loads fine, but when attempt to use it, phone reboots, just like with the module compiled from DroidX sources..
Click to expand...
Click to collapse
So, I got it loaded - insmod works just great, just like it did on the 2.1 kernel.
I'm trying to use the CM6 built-in OVPN settings, but I can't find any documentation on the setup. How did you get it set up?
I have
/sdcard/openvpn/
cert.crt
ca.crt
config.conf
config.ovpn
pem.key
I realize that config.conf and config.ovpn are the same file- but I use this VPN on windows and on Mac, and I wasn't sure the requirements on Linux.
If I can't find some documentation I'll try downloading the OpenVPN settings app from the market and playing with that.
Also, I don't know if it's true or not, but I heard the Milestone2 source compiled driver could work.
Are you trying the module kabaldan provided? It doesn't seem to work, at least for me. Loads fine, but phone crashes when setting up tun interface. I couldn't get OpenVPN in CM6 0.3 to work so far. I am testing the tun.ko with the cisco vpn package (which worked great on the old kernel with CM6 0.2) vpnc. When I initiate the connection, phone reboots if the attached here tun.ko is used. I also tried with tun.ko compiled from DroidX sources - same thing - phone reboots. I am not sure where did kabaldan take/compile this module from.
Sent from my Milestone using Tapatalk
I was using the same one, I was thinking maybe he could use the info from more than one phone. I'll try get-a-robot or OpenVPN Installer, but I won't hold my breathe. I was just hoping to use the built-in functionality of the ROM.
*edit* Just saw he removed it because it doesn't work yet, oh well.
the kernel doesnt seem to like any other fs not built into it. i've tried several, ext2, ext3, ext4, cifs, jffs, reiserfs etc. all modules would load without a problem but system will reboot during mount. heck i even tried creating logical volume on the partition. volume created fine, but when time to mount, it reboot
i ended up using a 2nd vfat partition for apps2vfat, on top of native froyo move to sd. moved my debian arm there and manually, yes manually, replace many symlinks in libs to copied files
hopefully next froyo release for other regions would provide a different kernel
yantz
hey kabaldan wondering if you've had another chance to look at an updated tun.ko
Finally some breakthrough. The great Skrilax_CZ has made some hard debugging and one very good guess:
CONFIG_DEBUG_MUTEXES must be disabled in the kernel config.
At least the ext2 module compiled this way is working without panics now.
Congrats to Skrilax!
EDIT: Tun nor nfs not tested yet..., cifs unfortunately still not working.
kabaldan said:
Finally some breakthrough. The great Skrilax_CZ has made some hard debugging and one very good guess:
CONFIG_DEBUG_MUTEXES must be disabled in the kernel config.
At least the ext2 module compiled this way is working without panics now.
Congrats to Skrilax!
EDIT: Tun nor nfs not tested yet..., cifs unfortunately still not working.
Click to expand...
Click to collapse
This means that now the app2ext work?
Where are the modules for we test?!
Thanks for the news!
Modules for testing:
ext2 - http://code.google.com/p/cyanogenmod4milestone/issues/detail?id=197#c19
tun - http://code.google.com/p/cyanogenmod4milestone/issues/detail?id=222#c4
Hi sort of a newbie here... So does this mean that data2ext will work?
Sent from my Milestone using XDA App
Hi Nadlabak...maybe you already know.
For the cifs module, how about slow-work is made available as a module.
as is done at this link
http://forum.xda-developers.com/showpost.php?p=9271775&postcount=4
after further testing:
ext2 mounting now works, reading from ext2 partition too, but writing still causes panic
tun causes panic too
Let's hope for a soon kernel source release, as it looks like we won't get much further without it.
edowar: thanks for the link
@kabaldan
Could it be possible to create a swap module for milestone ?
It seems that running kernels does not have this feature yet and i'm not sure motorola to implement it for next 2.2 release so .... well just wondering !

OpenVPN

Hello,
Looking for any direction to any installs of OpenVPN on the gtab ? TnT 2.2.0
Brw
From what I know about trying to install it on my Droid 2, we need the tun.ko kernel module, if it isn't already installed. I never actually checked.
If it isn't there, then we'd need the kernel source in order to compile it in. And I think so far Viewsonic is trying to keep it to themselves even though the GPL says they need to spill it to us.

[Q] tun.ko for G2X?

Does anyone know where I can get the tun.ko for the G2X?
Thanks.
I believe Faux has a kernel that has tun.ko in it. Are you working on openvpn?
Does anyone have a link to download the tun.ko driver for G2x? I'd prefer not to flash a ROM atm. Everything is working nice on my stock ROM for now. Going to wait until GB update if it ever gets released.
Need to get OpenVPN or VPNC working for my work's Cisco ASA.
Tun.ko isn't a driver, its a kernel module. The kernel needs to support it, so just copying it over might not help.
Sent from my LG-P999
Ah, I see. Not super linux savy so assumed it was a driver. Is it pretty easy to enable the module? Is there a huge risk in f-ing up your kernel / phone? If there's a guide that's relatively easy, might be worth a try.
Why did Android not support the most common VPN connection type out there? No support for PSK with group user/pass drives me batty.
It's really easy to flash a custom kernel, and it'll probably make things run a little smoother on your phone.
If you're still using the stock rom just flash this kernel as you would a rom: http://forum.xda-developers.com/showthread.php?t=1102720
It'll flash the new kernel but leave your rom intact with no changes.
I may be wrong, but i think you'll need a custom rom with OpenVNP built in to work. I dont think just flashing the kernel with this module will just magically give you new functionality, but it's worth a shot.

[Q] Tun/tap driver for infuse sgh 1997

Hello!
I'm very new to the android os and owner of an infuse (android 2.2.1, kernel version: 2.6.32.9, froyo.uckd5) since a couple of weeks.
Honestly I feel a bit lost because I'm looking for a tun.ko module for this device and as far as I can see there isn't, at least for the production rom. All the tun.ko I found are compiled for kernel different from mine.
I really need openvpn and now I'm wondering if I should:
1) keep looking
2) figure out how to compile a tun.ko on my linux machine for the arm7 architecture
3) look at some modified rom with the module built in
Do you have any suggestion?
Thank you
Cheers
dventurin said:
Hello!
I'm very new to the android os and owner of an infuse (android 2.2.1, kernel version: 2.6.32.9, froyo.uckd5) since a couple of weeks.
Honestly I feel a bit lost because I'm looking for a tun.ko module for this device and as far as I can see there isn't, at least for the production rom. All the tun.ko I found are compiled for kernel different from mine.
I really need openvpn and now I'm wondering if I should:
1) keep looking
2) figure out how to compile a tun.ko on my linux machine for the arm7 architecture
3) look at some modified rom with the module built in
Do you have any suggestion?
Thank you
Cheers
Click to expand...
Click to collapse
3) As far as I can tell, all of the alternative kernels have this module. The Infused ROM contains the Voodoo kernel, but I believe you can run the Voodoo or Infusion kernels on the stock ROM.
ok I see.
Could you suggest to me a starting point to deal with the custom roms?
I'm have a good experience with linux since years but not enough on smart phones and android in general.
For instance, is there an official website for Infused ROM?
Any tip is welcome.
Thank you!
@dventurin - I had the same issue. I have the Infused rom installed and it has the same issue. I installed SL4A and wrote my own scripts, the app is what's broke everything works at the CLI. I then used Tasker but I think you can do it with Gscripts as well build my own shortcuts. As for where to find the Infused ROM look in the Dev section here. There a several ROM's available but I've only used Infused.
@3GBeyotch
were did you get the Infused rom? Is there an official website with documentation? Honestly I don't feel comfortable when I have to use stuff found on a forum: how can I trust them?
dventurin said:
were did you get the Infused rom? Is there an official website with documentation? Honestly I don't feel comfortable when I have to use stuff found on a forum: how can I trust them?
Click to expand...
Click to collapse
If you want the Infused ROM, head over to the "Infuse 4G Android Development" forum....
http://forum.xda-developers.com/forumdisplay.php?f=1161
From there, you will want to look at 2 threads....
1. You need to root your device first. Check out the very first thread (entitled: [How To] Root the Samsung Infuse 4G) shows how to root your device.....
http://forum.xda-developers.com/showthread.php?t=1082247
(the second link under SOURCE: has a video tutorial)
Side note: When downloading Superoneclick, make sure to get the one that has the drivers included. Also, make sure your external SD card is unmounted!
======================
2. Next, you'll need to install the Infused ROM. Look at the thread (entitled: [ROM] Infused v1.5.0 - (06/18/11) - Faster and smoother than ever!), which has the instructions, etc, for installing the Infused ROM.....
http://forum.xda-developers.com/showthread.php?t=1105413
You basically need to root your device first, then install the Infused ROM.
As far as feeling comfortable with using the sources from the forum, you have nothing to worry about. In regards to the Infused ROM, gtg465x is the one who developed it. All you have to do is follow the instructions, and if you feel uncomfortable about doing one of the steps, ask someone here!
I've had the Infused ROM installed now for a few weeks, and I have not been disappointed! Hope this helps.
Open VPN on Infused ROM tun.ko problems?
Greetings! This discussion is about what I am trying to solve, so I decided to post here. I have searched and read other threads, but can not figure out a solution. I am a noob in this.
Anyway, I also would like to make OpenVPN working on my Samsung Infuse.
I have rooted it, installed the Infused ROM Version 1.5.3 (awesme!)
About Phone gives me the following info:
Firmware version 2.2.1
Baseband version i997UCKE3
Kernel version 2.6.32.9
Build number Infused v1.5.3
No the problem. I have openvpn installed with OpenVPN Installer. My config, key, certificate files are in /sdcard/openvpn folder. Everything seems okay.
When I try to connect to my router at home, however, the tun.ko module would not load. It gives an error. I even tried to load it manually from the Terminal Emulator (insmod /system/lib/modules/tun.ko) It gives me an error still. The module file is in the folder.
What am I doing wrong? Has anyone been able to make openvpn work on the Infused ROM?
I had the same problem on the original AT&T ROM, but that one did not have the tun.ko at all, so it was understandable.
I would appreciate any suggestions.
Thank you in advance.
iovchinn said:
Greetings! This discussion is about what I am trying to solve, so I decided to post here. I have searched and read other threads, but can not figure out a solution. I am a noob in this.
Anyway, I also would like to make OpenVPN working on my Samsung Infuse.
I have rooted it, installed the Infused ROM Version 1.5.3 (awesme!)
About Phone gives me the following info:
Firmware version 2.2.1
Baseband version i997UCKE3
Kernel version 2.6.32.9
Build number Infused v1.5.3
No the problem. I have openvpn installed with OpenVPN Installer. My config, key, certificate files are in /sdcard/openvpn folder. Everything seems okay.
When I try to connect to my router at home, however, the tun.ko module would not load. It gives an error. I even tried to load it manually from the Terminal Emulator (insmod /system/lib/modules/tun.ko) It gives me an error still. The module file is in the folder.
What am I doing wrong? Has anyone been able to make openvpn work on the Infused ROM?
I had the same problem on the original AT&T ROM, but that one did not have the tun.ko at all, so it was understandable.
I would appreciate any suggestions.
Thank you in advance.
Click to expand...
Click to collapse
What's the error?
Entropy512 said:
What's the error?
Click to expand...
Click to collapse
OpenVPN Settings gives the following error: "FATAL: Cannot allocate tun/tap dev dynamically".
When I run "insmod /system/lib/modules/tun.ko" it gives me: "Failed (Exec format error)
Again, thank you for your response.
iovchinn said:
OpenVPN Settings gives the following error: "FATAL: Cannot allocate tun/tap dev dynamically".
When I run "insmod /system/lib/modules/tun.ko" it gives me: "Failed (Exec format error)
Again, thank you for your response.
Click to expand...
Click to collapse
out of curiosity, is there also a tun.ko in /lib/modules in addition to /system/lib/modules?
Entropy512 said:
out of curiosity, is there also a tun.ko in /lib/modules in addition to /system/lib/modules?
Click to expand...
Click to collapse
Man, my hat is off!
Indeed, there is one in /lib/modules and it did work when I tried to load it, instead of the one in /system/lib/modules/. Any idea, why the other one did not work? Not that it matters now.
Also, your signature says that you run Cyanogen Mod with Infuse. My understanding was that Infuse was not yet supported. Is it easy to install it? Any published instructions?
Again, thanks a bunch for the tip.
iovchinn said:
Man, my hat is off!
Indeed, there is one in /lib/modules and it did work when I tried to load it, instead of the one in /system/lib/modules/. Any idea, why the other one did not work? Not that it matters now.
Also, your signature says that you run Cyanogen Mod with Infuse. My understanding was that Infuse was not yet supported. Is it easy to install it? Any published instructions?
Again, thanks a bunch for the tip.
Click to expand...
Click to collapse
My guess is in your previous attempts to add a tun.ko module, you stuck one in /system/lib, or maybe gtg accidentally included some "cruft" in /system/lib that shouldn't be there.
As to CM7 - Right now it's a source-only unofficial build, links to the git repo are in the Development section. There are occasionally binary releases floating around, however not anywhere on these forums. Good things come to those who expand their horizons and do research.
Entropy512 said:
My guess is in your previous attempts to add a tun.ko module, you stuck one in /system/lib, or maybe gtg accidentally included some "cruft" in /system/lib that shouldn't be there.
As to CM7 - Right now it's a source-only unofficial build, links to the git repo are in the Development section. There are occasionally binary releases floating around, however not anywhere on these forums. Good things come to those who expand their horizons and do research.
Click to expand...
Click to collapse
It seems, you are right. /system/lib/modules/ has only one file in it and it is tun.ko. That one did not load. Must be some left-overs from previous reincarnation. The one in /lib/modules/ has lots of different *.ko files and tun.ko among them. This one loads just fine.
Again, thank you very much for your help.
Entropy512 said:
My guess is in your previous attempts to add a tun.ko module, you stuck one in /system/lib, or maybe gtg accidentally included some "cruft" in /system/lib that shouldn't be there.
As to CM7 - Right now it's a source-only unofficial build, links to the git repo are in the Development section. There are occasionally binary releases floating around, however not anywhere on these forums. Good things come to those who expand their horizons and do research.
Click to expand...
Click to collapse
By the way. Perhaps, I can get a bit more help with this. My joy was short-lived. My Infuse connects to my Tomato - no problem. However, it does not force traffic to the VPN tunnel. It is still using whatever service I connect: Wi-Fi, or Cell Provider's.
Any hints on how to fix it? I tried the "Fix HTC Routes" option in "OpenVPN Settings." No luck.
I would appreciate some help.
iovchinn said:
By the way. Perhaps, I can get a bit more help with this. My joy was short-lived. My Infuse connects to my Tomato - no problem. However, it does not force traffic to the VPN tunnel. It is still using whatever service I connect: Wi-Fi, or Cell Provider's.
Any hints on how to fix it? I tried the "Fix HTC Routes" option in "OpenVPN Settings." No luck.
I would appreciate some help.
Click to expand...
Click to collapse
Unfortunately someone else will have to help you there - I haven't used VPN functions on my phone.
iovchinn said:
By the way. Perhaps, I can get a bit more help with this. My joy was short-lived. My Infuse connects to my Tomato - no problem. However, it does not force traffic to the VPN tunnel. It is still using whatever service I connect: Wi-Fi, or Cell Provider's.
Any hints on how to fix it? I tried the "Fix HTC Routes" option in "OpenVPN Settings." No luck.
I would appreciate some help.
Click to expand...
Click to collapse
Having the same problem, am able to connect to openVPN running on ddwrt but the phone isn't directing traffic through it. Anyone have any ideas?

[Q] Q: Cifs.ko module for tf101 ICS kernel?

I just installed ICS and it works fine. I never expected it to work as well as it does, but now I can get down to griping about little things that I use that don't yet work
Normally I use CIFS (Common Internet File System, like Samba was before) to access shares on the net. This worked fine on HoneyComb because I built my own kernel modules.
For ICS, I think the source is not yet released for the kernel. I did see that there was a tun.ko and cifs.ko for ICS over in the transformer prime section of XDA, so I tried those out but it appears the tegra 3 kernel is too different for these to work. (although I think the version is the same).
If anyone has seen or has a working cifs.ko module I'd appreciate getting ahold of it (or especially the ICS kernel source code).
Thanks -
I don't know about cifs.ko as I don't use it, but I do use OpenVPN and found out that tun is part of ICS now, you no longer need a separate module.
hachamacha said:
I just installed ICS and it works fine. I never expected it to work as well as it does, but now I can get down to griping about little things that I use that don't yet work
Normally I use CIFS (Common Internet File System, like Samba was before) to access shares on the net. This worked fine on HoneyComb because I built my own kernel modules.
For ICS, I think the source is not yet released for the kernel. I did see that there was a tun.ko and cifs.ko for ICS over in the transformer prime section of XDA, so I tried those out but it appears the tegra 3 kernel is too different for these to work. (although I think the version is the same).
If anyone has seen or has a working cifs.ko module I'd appreciate getting ahold of it (or especially the ICS kernel source code).
Thanks -
Click to expand...
Click to collapse
I didn't have much success with tun and cifs for my purpose which was to wirelessly access the sd card of the phone/tablet vice versa until I used the Samba app fom the market. In combination with Ghost commander and after upgrading to ICS everything was intact. Not sure if this is helpful to you or not. Just throwin it out there.
Thanks both of you -
I realized that tun was there but thanks. As for cifs, I suppose the module isn't really needed except to use certain utils that rely on it, like root explorer.
I found a number of samba/cifs compatible file managers that're fine for me like ES explorer etc.
Those will be fine and I'll look forward to getting kernel source for ICS anyway.
hachamacha said:
Thanks both of you -
I realized that tun was there but thanks. As for cifs, I suppose the module isn't really needed except to use certain utils that rely on it, like root explorer.
Click to expand...
Click to collapse
I've just rooted my TF101 (ICS) so that I could get Junos pulse working with its ssl vpn. Doing a bit of reading I found I needed tun.ko (at least with 3.2). That automatic tun.ko installer from the market reports that tun.ko is installed (compiled into the kernel?)
I can see the tun0 created, with an IP address. But it doesn't work, not a single bit travels the tunnel interface.
I'm officially confused...
Still too few posts under this account name to be able to post links, but have you seen this thread in Dev?
xpad / cifs modules for stock kernel ICS v9.2.1.11
Thanks for that... that confirms tun.ko is built in, which doesn't help me find/fix my problem.
Will keep at it!

Categories

Resources