Mailinglist Archive: opensuse-kernel (59 mails)

< Previous Next >
Re: [opensuse-kernel] Moblin kernel merged to FACTORY
  • From: Hannes Reinecke <hare@xxxxxxx>
  • Date: Mon, 22 Jun 2009 09:12:14 +0200
  • Message-id: <4A3F2ECE.3090402@xxxxxxx>
Hi all,

Jeff Mahoney wrote:
Greg KH wrote:
Hi all,

I just now got the Moblin (2.6.29) kernel merged into the FACTORY
kernel, so it should start showing up in the next few builds.

Cool. The majority of it looks like small fixes and adding the /dev stuff.

It really wasn't that many changes, the real work is in the
configurations.

So, here's what I plan on doing, and it would be great to get some
feedback.

For Moblin, we used a PAE kernel as "kernel-default". For FACTORY, I
can't do that, and as we moved away from the -legacy to -default naming
scheme, I'll change the Moblin images to use kernel-pae.

In the kernel-pae config, I'd like to start changing stuff to reflect
the fastboot things we did for Moblin. In the end, we were booting the
kernel in less than a second on a tiny netbook, and I see no reason why
we can't do the same for FACTORY and all future releases.

To achieve this, I'll start to change the i386/pae and x86-64/default
configurations to build a whole raft of drivers into the kernel, which
speeds up booting a _lot_ due to the async probing that it allows the
kernel to do.

I'm still not a fan of this, but in the absence of the ability to link
in modules at install time, I guess the gains outweigh the drawbacks.

Why don't we do something about it?

I've already spent some thoughts about it, and come up with two
possibilities:

- Link in modules during initrd run. Shouldn't be too hard, after all
that's what the kernel does nowadays during building anyway. So just
some linker magic and you're done.
Drawback is that you'd need an uncompressed kernel to start with, so
I'm not sure it's the right way to go
- Implement something like the 'kexec-cache' from Max OS-X.
OS-X has a 'kexec-cache', which allow to preload some kernel modules
during boot. Implementing a similar thing on Linux we could just
stuff the preloaded modules into a blob and load this as an additional
initrd image. Then we could just call the ->init calls and everything
would be dandy. Or that's the hope.

Seeing the amount of trouble we've been running with built in modules I'd
rather avoid this exercise again.
Building in infrastructure modules is okay in general, and also driver modules
which are not expected to change a lot (like loopback interface or stuff like
that). But everything else is bound to cause trouble.

Cheers,

Hannes
--
Dr. Hannes Reinecke zSeries & Storage
hare@xxxxxxx +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)
--
To unsubscribe, e-mail: opensuse-kernel+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-kernel+help@xxxxxxxxxxxx

< Previous Next >
References