with the release of the source code for the bravo kernel this has become redundant
to be able to directly access my stuff on samba shares i made a _patch_ for the cifs code in 2.6.32.15 and built cifs.ko and nls_utf8.ko with arm-eabi-4.4.0
i thought i'd share them here in case it was of use to anyone else
this is how i installed them:
Code:
(boot into recovery mode)
$ adb shell mount /system
$ adb push cifs.ko /system/lib/modules
$ adb push nls_utf8.ko /system/lib/modules
$ adb shell chmod 644 /system/lib/modules/*.ko
$ adb shell "cd /system/lib/modules; ln -s . 2.6.32.15-gf9c0527"
$ adb shell umount /system
(reboot)
this is how i tested them:
Code:
sh-3.2$ su
sh-3.2# modprobe nls_utf8
sh-3.2# modprobe cifs
sh-3.2# busybox mount -t cifs -o user=<username>,password=<password>,uid=1000,gid=1015,file_mode=0775,dir_mode=0775,iocharset=utf8,nodfs //10.0.1.2/public2 /sdcard/smb/public2
(1015 is the gid of 'sdcard_rw')
--
cifs_bravo_2.6.32.15-gf9c0527.zip
cifs_bravo_2.6.32.15-gd96f2c0.zip
Hey cheers for this will try it out
Sent from my C64
just tried
init_module 'cifs.ko' failed (Exec format error)
epyon1873 said:
init_module 'cifs.ko' failed (Exec format error)
Click to expand...
Click to collapse
as stated above it works with the stock htc kernel, which is 2.6.32.15-gf9c0527
check the output of uname -r
snq- said:
as stated above it works with the stock htc kernel, which is 2.6.32.15-gf9c0527
check the output of uname -r
Click to expand...
Click to collapse
Thx find htc kernel is 2.6.32.15-g1fc4045 @ NexTSense Rom orz
epyon1873 said:
Thx find htc kernel is 2.6.32.15-g1fc4045 @ NexTSense Rom
Click to expand...
Click to collapse
afaik the current nextsense comes with Myshkinbob's cifs module (although not with the latest one) - it's module version id was simply patched to suppress the version mismatch error message you got
here is mine if still interested:
(be sure to type "ln -s . 2.6.32.15-g1fc4045" instead of "ln -s . 2.6.32.15-gf9c0527" when installing)
--
cifs_bravo_2.6.32.15-g1fc4045.zip
Thx~! go to try it.
Greetings,
I tried using your patch on the source for the supersonic (evo) and it went in and compiled perfectly, i was able to do an insmod and loaded the driver fine, but when i go to do a mount the phone crashes.
any ideas?
(i have tried both the arm-eabi-4.4.0 and the arm-2010q1 toolchains)
Thanks!!
adambot said:
I tried using your patch on the source for the supersonic (evo) and it went in and compiled perfectly, i was able to do an insmod and loaded the driver fine, but when i go to do a mount the phone crashes.
any ideas?
(i have tried both the arm-eabi-4.4.0 and the arm-2010q1 toolchains)
Click to expand...
Click to collapse
the patch does not cleanly apply to supersonic-2.6.32.15-g746f4f0, as it is for vanilla 2.6.32.15
please overwrite fs/cifs with the vanilla sources before you apply it
just tried and was able to build the very same .ko published in the first post (except for the buildstamp of course):
pulled the supersonic kernel source from developer.htc.com
overwrote fs/cifs/* with vanilla
pulled & applied the patch from pastebin
pulled .config from my phone
in menuconfig
set the localversion (general setup)
selected cifs + nls_utf8 to be built as module
did _not_ touch the debug options already set
did 'make modules'
stripped the modules with arm-eabi-strip --strip-debug
insmod worked, mount worked, browsing the share worked
if you get crashes, check /proc/last_kmsg after reboot
snq- said:
the patch does not cleanly apply to supersonic-2.6.32.15-g746f4f0, as it is for vanilla 2.6.32.15
please overwrite fs/cifs with the vanilla sources before you apply it
Click to expand...
Click to collapse
What is considered "vanilla sources"?
I used git and pulled the whole android repo but am not finding the vanilla sources there...
do you mean the vanilla linux sources??
[edit]
i tried the cifs files from the vanilla linux source (same version) but the phone still crashes (even after the debug strip)
Should i try to use a different config (rather than the one from the supersonic templates?)
Do you have an evo that you tested this on?
Thanks again!!!
[/edit]
adambot said:
do you mean the vanilla linux sources??
Click to expand...
Click to collapse
sorry if i wasn't clear enough. linux-2.6.32.15.tar.bz2 (kernel.org)
adambot said:
Should i try to use a different config
Click to expand...
Click to collapse
i pulled the config from the device ($adb shell zcat /proc/config.gz > .config)
i do not own an evo, the only reason for me to use evo/incredible sources is that htc haven't released bravo-froyo kernel sources yet
adambot, please let me know if this works for you
--
cifs_supersonic_2.6.32.15-g746f4f0.zip
snq- said:
adambot, please let me know if this works for you
Click to expand...
Click to collapse
WOW!!! That worked PERFECTLY!!!!!
Thanks SO MUCH!!!
(now i just have to figure out why mine wasn't working... I'll try again with your steps and compare the good one to mine with diff)
if you don't mind just to recap:
get linux vanilla kernel source
get supersonic kernel source
replace supersonic fs/cifs with vanilla
edit Makefile with extra EXTRAVERSION info
get .config from running device
make CROSS_COMPILE=CROSS_COMPILE=arm-eabi-4.4.0/bin/arm-eabi- oldconfig (accept defaults)
edit .config and make cifs and nls_utf8 modules
make CROSS_COMPILE=arm-eabi-4.4.0/bin/arm-eabi- modules
arm-eabi-4.4.0/bin/arm-eabi-strip fs/cifs/cifs.ko and fs/nls/nls_utf8.ko
adambot said:
WOW!!! That worked PERFECTLY!!!!! Thanks SO MUCH!!!
Click to expand...
Click to collapse
no problem, glad it worked out
adambot said:
if you don't mind just to recap: ...
Click to expand...
Click to collapse
- i don't see the step where you applied the patch
- i didn't edit the makefile per hand
- i didn't edit .config per hand
- as i don't own an evo, instead of pulling the config from the device i did a 'make supersonic_defconfig' before 'make menuconfig'
snq- said:
no problem, glad it worked out
- i don't see the step where you applied the patch
- i didn't edit the makefile per hand
- i didn't edit .config per hand
- as i don't own an evo, instead of pulling the config from the device i did a 'make supersonic_defconfig' before 'make menuconfig'
Click to expand...
Click to collapse
I got it to work FINALLY!!! I will be posting the step by step (copy/paste) directions in the evo section. Do you mind if i post the patch here as an attachment? also -- how do you want credit -- do snq- or do a different name?
thanks again!!
Adam
adambot said:
Do you mind if i post the patch here as an attachment?
Click to expand...
Click to collapse
feel free to use it for whatever you want
you might however want to post the patch directly applicable to the supersonic source (attached)
thanks for crediting me, using the nick is fine
--
supersonic-2.6.32.15-g746f4f0_cifs.patch
snq- said:
feel free to use it for whatever you want
you might however want to post the patch directly applicable to the supersonic source (attached)
thanks for crediting me, using the nick is fine
Click to expand...
Click to collapse
What did you do differently? (or what is the difference between cifs-supersonic and cifs-vanilla) -- I would look myself, but i'm not the best at coding... (that's what i get for being a sysadmin and not a dev -- but i can script until the cows come home )
Help me
I need nls_utf8.ko for 2.6.34 kernel
I would like cifs module for 2.6.32.15-g6a358a9 kernel, is it posible?
Thanks!
any for 2.6.32.15-ge2fb08e?
Hi so I'm trying to pull my kernel off of my nook simple touch but I can't figure this out
Apparently /proc/config.gz does not exist. I guess it's output is not enabled in the current kernel.
When I try to "cat /boot/config-$(uname -r) | grep -i ikconfig" I get "cat: can't open '/boot/config-2.6.29-omap1: No such file or directory"
How do I get my current kernel??
Even I am looking for the same. Did you got the solution?
If yes, please let me know. :good:
Hey all,
I wish to try some modifications I made to the CM7 kernel and I need help building the kernel.
I followed this guide: http://wiki.cyanogenmod.com/wiki/Building_Kernel_from_source
I had to use the code sourcery cross compiler since kernel.org is down.
I have 3 questions:
1. When I build the kernel, the wifi drivers fail to build with an array out of bound exception. I didn't change that code, do I need to do something special to build the wifi drivers? I managed to built the kernel by disabling wifi in the config file.
2. Where can I get CM .config file for crespo kernel? I tried getting it from the latest nightly but /proc/config.gz wasn't there!?!
3. How can I created an cwm flashable zip? I downloaded Anykernel from koush but when trying to flash I get an error saying mount need 4 args. Which branch of anykernel works with Nexus S?
Thx a lot for your help,
Steve
Sent from my Nexus S using Tapatalk
It might be worth sending a PM to mathkid95
Sent from the future to put right what once went wrong.
How to compile a kernel
First, Download the following cross compiler and extract it into your working directory http://minus.com/l0zydfa4ncuQP
Then, cd to your kernel's directory in terminal and then type the following in terminal to compile:
Code:
export PATH=$PATH:/home/your-username/your-working-directory/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/
make ARCH=arm clean
make ARCH=arm herring_defconfig
make -j4 ARCH=arm CROSS_COMPILE=arm-eabi-
The herring_defconfig is the default config file for the nexus s and it in the kernel repo. Also if you are using CM kernel source, the herring_defconfig has been modified.
As for the cwr zip, download one of my any rom kernels extract it. Put the zimage and bcm.ko module in the appropriate folder and zip it.
Sent from my Nexus S
Redd has it haha
Sent from my HTC Sensation 4G using XDA App
This is great. I'll try it out tomorrow. Now that I have all those infos I'm sure everything will go smoothly.
Thanks again!
Sent from my Nexus S using Tapatalk
That worked beautifully!
This is the result: http://forum.xda-developers.com/showthread.php?t=1276278
Hi guys,
I'd like to tinker around a bit with the tiamat or other kernels for the Xoom
are the following steps enough to get it working ?
- clone the repo
- adjust toolchain paths (or create an external script that does it)
- make stingray_defconfig
- make -j2
- test-boot the zImage via fastboot
- if it's successful copy over the kernel-modules & flash the kernel via fastboot
how about an initramfs ?
have I forgotten anything ?
Many thanks in advance for your help !
edit:
slowly understanding how all this works,
still might need some help
I think that will get you started. I'm not an expert, but when I'm tinkering with kernels I pull the proc config strait from the device after flashing the kernel I want to modify. That way I know that the default config is correct. For example, if I wanted to modify the kernel running on an EOS nightly, after cloning the repo I would flash the EOS nightly ROM containing the kernel I want to modify. Then run the following commands to pull the kernel config from the kernel running on my device:
Code:
adb pull /proc/config.gz .
gunzip config.gz
mv config .config
The .config then goes in the root of the kernel source directory. That may do exactly the same thing as the "make defconfig" you mentioned but I just prefer to trust the defaults from the ROM and not the repo.