Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Wed 01 Oct 2014, 10:44
All times are UTC - 4
 Forum index » Advanced Topics » Cutting edge
Cutting edge kernel for 2.17
Moderators: Flash, Ian, JohnMurga
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
Page 1 of 3 Posts_count   Goto page: 1, 2, 3 Next
Author Message
tempestuous

Joined: 10 Jun 2005
Posts: 5263
Location: Australia

PostPosted: Tue 10 Jul 2007, 23:38    Post_subject:  Cutting edge kernel for 2.17  

On the News Blog Barry mentioned that there may be an alternative cutting-edge version of the next Puppy kernel.
http://www.puppylinux.net/news/comments.php?y=07&m=07&entry=entry070703-092842

I decided to test some of the kernel changes suggested, especially the RealTime (low-latency) patch by Ingo Molnar from http://people.redhat.com/mingo/realtime-preempt/
This patch, plus the preemptible kernel patch by Con Kolivas, are both highly regarded by musicians using midi production applications in Linux.
A few years ago both of these patches could co-exist, but it appears that the current versions interfere with each other, so I only applied the Ingo Molnar patch.

Then I applied the Software Suspend 2 patch from http://www.tuxonice.net/index.html

Then I went on to enable all those fancy configuration options:

Tickless System (Dynamic Ticks)
High Resolution Timer Support
Symmetric multi-processing support
SMT (Hyperthreading) scheduler support
Multi-core scheduler support
Preemption Mode > Complete Preemption (Real-Time)
Timer frequency 1000 HZ
Support for hot-pluggable CPUs (necessary for Suspend2)

Sounds scary, especially since my development computer is currently a P2-350, but the kernel/modules compilation went without errors, and I'm now running this kernel on the P2-350 with no apparent adverse effects.
This is my interpretation of the ultimate Puppy kernel, but I cannot test the full potential of this "ferocious" Puppy. If anyone wants to try this kernel, I could upload it somewhere, or you could just duplicate my efforts.
The 2 patches I applied are these -
http://people.redhat.com/mingo/realtime-preempt/patch-2.6.21.5-rt20
http://www.tuxonice.net/downloads/all/suspend2-2.2.10.2-for-2.6.21.5.patch.bz2

And I also attach my kernel configuration.

Regarding the Software Suspend 2 patch, the menuconfig options explained on the website are out of date. I contacted the developer, Nigel Cunningham, via the mailing list and he explained that the option is now "Software Suspend", not "Suspend2".

EDIT: kernel config attachment removed. See later post.

Edited_time_total
Back to top
View user's profile Send_private_message 
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 7047
Location: Perth, Western Australia

PostPosted: Wed 11 Jul 2007, 06:59    Post_subject:  

Quote:
but the kernel/modules compilation went without errors, and I'm now running this kernel on the P2-350 with no apparent adverse effects.

Interesting!
Do you mean that you are running Puppy 2.17alpha with this kernel? And the alpha-modules all loaded okay? -- it would be good to examine the various boot logs to see if any modules complained.
Back to top
View user's profile Send_private_message Visit_website 
tempestuous

Joined: 10 Jun 2005
Posts: 5263
Location: Australia

PostPosted: Wed 11 Jul 2007, 09:06    Post_subject:  

BarryK wrote:
Do you mean that you are running Puppy 2.17alpha with this kernel?

Yes.

BarryK wrote:
And the alpha-modules all loaded okay?

No, absolutely not. When I said "I'm now running this kernel" I meant "I'm running this kernel PLUS corresponding modules".
It goes against all logic to imagine that you could do such extreme changes to a kernel, and still have the original modules compatible ...
but OK, for the sake of experimentation I just copied the original 2.17alpha module for my Realtek network card, r8169.ko, into the correct /lib/modules location then tried to load it. Here's the result:
Code:
# modprobe r8169
cat: /lib/modules/modules.dep.2.6.21.5-rt20: No such file or directory
cat: /lib/modules/modules.dep.2.6.21.5-rt20: No such file or directory
FATAL: Error inserting r8169 (/lib/modules/2.6.21.5-rt20/kernel/drivers/net/r8169.ko): Invalid module format


And at the end of /var/log/messages I see this:

Jul 11 22:29:10 (none) user.warn kernel: r8169: disagrees about version of symbol struct_module
Jul 11 22:29:10 (none) user.warn kernel: r8169: disagrees about version of symbol struct_module
Back to top
View user's profile Send_private_message 
cb88


Joined: 28 Jan 2007
Posts: 1169
Location: USA

PostPosted: Wed 11 Jul 2007, 12:24    Post_subject:  

I would like to try it maybe you could post it as Dynamite Puppy in the derivatives area the thread already exists. It could mean a sort of pre testing of new kernels ect....
I would like a copy of your kernel and would also like to compile it myself my previous attempt failed early on and I was a little clueless. I have a sempron 1.8 ghz and 512 ram that should be enough to test it out a little more don't have broadband at home though. I have acess to broadband at college so not a problem. If you upload the files please tell exactly what to do w/ them.

cb88
Back to top
View user's profile Send_private_message Visit_website 
jamesbond

Joined: 26 Feb 2007
Posts: 2187
Location: The Blue Marble

PostPosted: Wed 11 Jul 2007, 16:17    Post_subject:  

I would definitely BEG barry to include this in 2.18 (or is it 2.20) ... Very Happy
_________________
Fatdog64, Slacko and Puppeee user. Puppy user since 2.13.
Contributed Fatdog64 packages thread
Back to top
View user's profile Send_private_message 
John Doe

Joined: 01 Aug 2005
Posts: 1689
Location: Michigan, US

PostPosted: Wed 11 Jul 2007, 17:43    Post_subject: Re: Cutting edge kernel for 2.17  

tempestuous wrote:
The 2 patches I applied are these -


first off, thanks a bunch for this. I'm going to test it out.

just to clarify, none of these are needed anymore for puppy?

ksize.patch
linux-2.6.18.5-e2compr-0.4.50.patch
patch_dpath.diff
squashfs3.1-lzma.patch
squashfs3.1-patch
via-patch-2.6.18
Back to top
View user's profile Send_private_message 
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 7047
Location: Perth, Western Australia

PostPosted: Wed 11 Jul 2007, 22:36    Post_subject: Re: Cutting edge kernel for 2.17  

John Doe wrote:
tempestuous wrote:
The 2 patches I applied are these -


first off, thanks a bunch for this. I'm going to test it out.

just to clarify, none of these are needed anymore for puppy?

ksize.patch
linux-2.6.18.5-e2compr-0.4.50.patch
patch_dpath.diff
squashfs3.1-lzma.patch
squashfs3.1-patch
via-patch-2.6.18

The patches required for Puppy 2.17 are posted on the puptrix.org site, along with the patched kernel source. An advanced experimental kernel would also require those patches. One way to achieve this would be to use my patched source as the starting point for further patches, which is maybe what tempestuous has done.

Note, the squashfs module is not compiled with the kernel, although it is patched in. There are instructions -- very lengthy and complicated -- at the squashfs-lzma site on how to compile it separately. It has to be done this way.
Back to top
View user's profile Send_private_message Visit_website 
tempestuous

Joined: 10 Jun 2005
Posts: 5263
Location: Australia

PostPosted: Wed 11 Jul 2007, 22:45    Post_subject:  

Barry, you beat me to it by just minutes. Yes, I used the pre-patched Puppy kernel source from here -
http://puptrix.org/sources/kernel-2.6.21.5-pup217/

You could probably apply all of those patches to vanilla kernel source, but why bother? Barry has already done the work.
And I'm receiving messages from other forum members suggesting further kernel tweaks. Standby, there could be further changes.

cb88 wrote:
If you upload the files please tell exactly what to do w/ them.

If you don't know what to do with them, then you're unfamiliar with compiling a kernel, and I don't want to get into lengthy HOW-TO's.
When 2.17 final is released I might make a remaster with this kernel, but it will take a certain amount of work; the initial ramdisk will need to be rebuilt with the new modules, and whenever I make a remaster I always replace Seamonkey/Gxine with Firefox/Claws-Mail/MPlayer.
And if Barry decides to run with an official cutting edge kernel then there's no point.

In the meantime, I suggest anyone interested should compile this kernel themselves, in a FULL HD install of Puppy so no initial ramdisk is necessary. And since you will be discarding the original kernel, it doesn't necessarily need to be Puppy 2.17.
Barry provided a kernel compile HOWTO here -
http://www.puppylinux.com/development/compilekernel.htm
Back to top
View user's profile Send_private_message 
John Doe

Joined: 01 Aug 2005
Posts: 1689
Location: Michigan, US

PostPosted: Thu 12 Jul 2007, 01:09    Post_subject:  

BarryK wrote:
The patches required for Puppy 2.17 are posted on the puptrix.org site, along with the patched kernel source.


just a quick note, page not found here (no rush, not going that far for a couple months)
http://puptrix.org/sources/kernel-2.6.21.5-pup217/patches/

BarryK wrote:
Note, the squashfs module is not compiled with the kernel, although it is patched in. There are instructions -- very lengthy and complicated -- at the squashfs-lzma site on how to compile it separately. It has to be done this way.


thanks for the tip. i'll have to do some reading before i tinker.

tempestuous wrote:
Barry, you beat me to it by just minutes. Yes, I used the pre-patched Puppy kernel source from here -
http://puptrix.org/sources/kernel-2.6.21.5-pup217/


ok, thanks for clarifying. i was thinking perhaps they were included now, with the updated kernel (i don't follow the kernel progress that closely). i grabbed the new patched source from puptrix.

tempestuous wrote:
You could probably apply all of those patches to vanilla kernel source, but why bother? Barry has already done the work.


sort of as a mental excercise. it's great to have it done for me and didn't mean to dismiss the effort, but i'd rather know how to swim than just ride in the boat.

tempestuous wrote:
And I'm receiving messages from other forum members suggesting further kernel tweaks. Standby, there could be further changes.


sounds great!

maybe a 2.17alpha2 would be fun for a week of testing?

firmware would be the same wouldn't it? because the kernel api wouldn't change, only the bits in between? is "kernel api" the right term?

i had started reviewing the structure of the kernel modules in the main system and in unleashed, in order to find a method of quickly deploying and testing differently patched kernels and modules.

would a script that went through (with correct kernel version of course):

boot/initrd-tree/modules/2.6.18.1/
kernels/2.6.18.1/all-modules/
kernels/2.6.18.1/modules/final-modules/

and pulled the appropriate file out of:

/lib/modules/2.6.18.1/

be helpful for unleashed?

I was thinking of writting something like that.
Back to top
View user's profile Send_private_message 
BarryK
Puppy Master


Joined: 09 May 2005
Posts: 7047
Location: Perth, Western Australia

PostPosted: Thu 12 Jul 2007, 04:31    Post_subject:  

Okay, the URL works now:
http://puptrix.org/sources/kernel-2.6.21.5-pup217/patches/
Back to top
View user's profile Send_private_message Visit_website 
tempestuous

Joined: 10 Jun 2005
Posts: 5263
Location: Australia

PostPosted: Thu 12 Jul 2007, 22:25    Post_subject:  

For those unable to recompile a kernel themselves, I just created a ready-to-go dotpet of the kernel and modules.
Thanks to Raffy, it's available here - www.bexa.org/pup/tempestuous/cut-edge-kernel+modules-July13.pet

Remember, this new kernel can be used ONLY in a full HD installation of Puppy. It should work with any version of Puppy since v2.10, but it makes sense to use 2.17.
INSTRUCTIONS: After installing the dotpet, open /boot/grub/menu.lst in geany and add these lines -

title Puppy cutting edge
root (hd0,0)
kernel /boot/vmlinuz-2.6.21.5 root=/dev/hda1 ro vga=normal

Now when you reboot you will see a new boot menu entry "Puppy cutting edge".

I also revised the kernel configurations, according to suggestions in this thread -
http://www.murga-linux.com/puppy/viewtopic.php?t=19194
Here is a list of revisions:
Suggested by Dougal -
CONFIG_IP_NF_H323 H.323 protocol support
CONFIG_IP_NF_SIP SIP protocol support
CONFIG_MTD_NAND_ECC_SMC NAND ECC Smart Media byte order
CONFIG_PARPORT_AX88796 AX88796 Parallel Port
CONFIG_I2C_OCORES OpenCores I2C Controller
CONFIG_SENSORS_ABITUGURU Abit uGuru
CONFIG_USB_TOUCHSCREEN USB Touchscreen Driver
CONFIG_USB_APPLEDISPLAY Apple Cinema Display support

suggested by craftybytes -
CONFIG_MTD_PARTITIONS MTD partitioning support
CONFIG_SPI SPI support
CONFIG_W1 Dallas' 1-wire support
CONFIG_W1_SLAVE_THERM Thermal family implementation

suggested by Ted Dog -
CONFIG_VIDEO_BT848_DVB=y
CONFIG_VIDEO_SAA7134_ALSA=m
CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
CONFIG_DVB_USB_DIB0700=m
CONFIG_DVB_CORE_ATTACH=y
CONFIG_VIDEO_BUF=m
CONFIG_VIDEO_TUNER=m
CONFIG_ZISOFS=y

I now attach the new kernel configuration.
I have some more detailed notes on what this all means if anyone is interested. It took almost 2 hours to look through the details of all these options.
I didn't disable "Loopback device support" as suggested by wdef to facilitate loop-aes support. And I'm not sure what John Doe needs for dmcrypt support.
Sorry guys, these options look TOO cutting-edge for my money at this stage.
DOTconfig-k2.6.21.5-cuttingedge13JULY07.gz
Description 
gz

 Download 
Filename  DOTconfig-k2.6.21.5-cuttingedge13JULY07.gz 
Filesize  17.73 KB 
Downloaded  459 Time(s) 
Back to top
View user's profile Send_private_message 
John Doe

Joined: 01 Aug 2005
Posts: 1689
Location: Michigan, US

PostPosted: Thu 12 Jul 2007, 23:24    Post_subject:  

BarryK wrote:
Okay, the URL works now:
http://puptrix.org/sources/kernel-2.6.21.5-pup217/patches/


thanks. i grabbed them and downloaded for a rainy day.

tempestuous wrote:
And I'm not sure what John Doe needs for dmcrypt support.


TrueCrypt and/or LUKS.

I grabbed the july13 test. will test with HD install and if all goes well try to "remaster the alpha CD" to test around on some other machines.
Back to top
View user's profile Send_private_message 
Leachim

Joined: 27 May 2007
Posts: 229

PostPosted: Sat 14 Jul 2007, 21:06    Post_subject: works fine with 2.15CE  

I downloaded the patched kernel sources (2.6.21.5) and enabled the squashfs-option, but got an error (missing header-file). After removing the lzma-option everything compiled well.

(Remark: I'm using Puppy 2.15CE - not 2.17alpha.)

I do not have a harddisk based installation, so I replaced all kernel-modules in the initrd with the newly compiled modules and - voilà - everything booted fine (from my USB-Stick).

Only the X-Server (using the ATI-proprietary driver) hang the machine. After googeling the Internet I replaced the ATI-driver with the newest version from ATI (8.38.6) and now I can start the X-Server manually.

Attempting to start it via xwin still freezes the PC. It's due to xinit which leaves me with an empty screen and a working mouse cursor. When I try to stop the X-Server via ctrl-alt-bs or try to switch to a text mode console the cursor (and I assume the whole PC) freezes.

Under the 2.6.18.1-kernel xwin works fine with the new ATI-driver.

Despite of these small inconveniences I'm now a proud puppy owner with an SMP-kernel and hardware-virtualization support! Smile

Another interesting fact: I do not need the proprietary r1000-driver for my NIC anymore, because under the new kernel the r8169-driver is willing to work with it!

During testing I would have liked a kernel option in the boot-loader to prevent the starting of X (I finally added an exit-command as the first statement to xwin).
Back to top
View user's profile Send_private_message 
John Doe

Joined: 01 Aug 2005
Posts: 1689
Location: Michigan, US

PostPosted: Sun 15 Jul 2007, 03:14    Post_subject:  

wrote:
Timer frequency 1000 HZ


I think this is the main problem and all other changes are ok.

John Doe wrote:
I grabbed the july13 test. will test with HD install...


boot time results with full HD install and GRUB MBR boot using test machine:

2.16 - 1:52
2.17alpha - 1:54
2.17experimental - 5:36

application load times are similarly related.

John Doe wrote:
...and if all goes well try to "remaster the alpha CD" to test around on some other machines.


a bit OVERZEALOUS!! sorry about that. was thinking out script i mentioned and got out of control.

tried the same test on a 3ghz/hyperthreaded machine and found it worked fine.

pretty sure the "sweet spot" to work out between new and old is "Timer frequency".

looking forward to more testing Smile

Edited_time_total
Back to top
View user's profile Send_private_message 
Dougal


Joined: 19 Oct 2005
Posts: 2505
Location: Hell more grotesque than any medieval woodcut

PostPosted: Sun 15 Jul 2007, 06:29    Post_subject: Re: works fine with 2.15CE  

Leachim wrote:
During testing I would have liked a kernel option in the boot-loader to prevent the starting of X (I finally added an exit-command as the first statement to xwin).


There is pfix=nox but it might have only been added in 2.16.

_________________
What's the ugliest part of your body?
Some say your nose
Some say your toes
But I think it's your mind
Back to top
View user's profile Send_private_message 
Display_posts:   Sort by:   
Page 1 of 3 Posts_count   Goto page: 1, 2, 3 Next
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
 Forum index » Advanced Topics » Cutting edge
Jump to:  

Rules_post_cannot
Rules_reply_cannot
Rules_edit_cannot
Rules_delete_cannot
Rules_vote_cannot
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1137s ][ Queries: 12 (0.0046s) ][ GZIP on ]