Re: m68k 2.6.26-1 vs 2.4.30 comparison

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, May 3, 2009 at 09:28, Lance Tagliapietra <lancetag@xxxxxxxxxxx> wrote:
b). My custom 2.4.30 kernel size is about 750K uncompressed. With setting the options to
remove support for hardware that I don't have and features that I don't need, I still
came up with a kernel of 2.7M.  The goal is to have the smallest footprint kernel possible.

Yeah, minimum kernel size has increased :-(

c). The 2.6.26 kernel seems to want to keep more memory free and hit the swap much more
than the 2.4.30 kernel according to vmstat.  Under 2.4.30 I see the free memory go as low
as about 200K, and it will remain at that level as long as is necessary.  Under 2.6.26,
the free memory stays at about 800K, and if it drops below that, it will come back to that
level relatively quickly.

As memory consumption is general. I didn't do exact measurements, but
2.6 consumes ca. 1.5 MiB
more on my A4000 (with 12 MiB of fast RAM). Booting and running Debian
is slow, while I used to
have more daemons installed, in a time the machine was actually used
as a mailserver for 70 people,
some of which read their email by logging in and running pine...

d). The real time clock came up on the worng month, going from 2.4.30 to 2.6.26 (or 28),
March vs April, in this case.

That's an interesting one...

In 2.4.30, you have both a2000_gettod() (for boot time setting), which does:

    *monp  = tod_2000.month1      * 10 + tod_2000.month2;

and amiga_hwclk() (for /dev/rtc), which does:

    t->tm_mon  = tod_2000.month1      * 10 + tod_2000.month2 - 1;

In 2.6.29, you only have a2000_hwclk(), which does

    t->tm_mon  = tod_2000.month1      * 10 + tod_2000.month2 - 1;

The data returned by a2000_gettod() is converted to seconds using mktime(),
which assumes months are in the range 1..12.

amiga_hwclk() and a2000_hwclk() both use struct rtc_time. This should
be similar to
struct tm in <time.h>, where the months are in the range 0..11.
Both rtc_proc_output()/gen_rtc_proc_output() (2.4.30) and
rtc_proc_show() (2.6.29) do
print tm.tm_mon + 1 to make them be in the range 1..12.

So at first sight, I don't see where the bug is...

What does `hwlock -ur` say, on both 2.4.30 and 2.6.29?

Questions:

e). Is there an option which tells the kernel the minimum amount of free RAM to maintain
as I describe in (c) above?  RAM is relatively precious in my m68k environment, and having
500k being held in reserve seems a bit much?

Probably one of those swappiness parameters under /sys. Don't ask me
which one...

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux