From: Nicolas Pitre <nicolas.pitre@linaro.org>
To: Tom Zanussi <tom.zanussi@linux.intel.com>
Cc: Andy Shevchenko <andy.shevchenko@gmail.com>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Stuart Longland <stuartl@longlandclan.id.au>,
Andi Kleen <andi@firstfloor.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Jiri Slaby <jslaby@suse.com>,
"linux-serial@vger.kernel.org" <linux-serial@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v2 0/5] minitty: a minimal TTY layer alternative for embedded systems
Date: Tue, 4 Apr 2017 16:27:10 -0400 (EDT) [thread overview]
Message-ID: <alpine.LFD.2.20.1704041607130.1847@knanqh.ubzr> (raw)
In-Reply-To: <1491335924.7125.87.camel@tzanussi-mobl.amr.corp.intel.com>
[-- Attachment #1: Type: text/plain, Size: 2105 bytes --]
On Tue, 4 Apr 2017, Tom Zanussi wrote:
> On Tue, 2017-04-04 at 21:04 +0300, Andy Shevchenko wrote:
> > I believe you did some research during time of that project…
> >
>
> Yes, as a matter of fact I did, and just found some notes I took at the
> time. I didn't dive into the code in detail - that level of analysis
> was supposed to come later but I did have these notes mentioning that I
> thought it would show the largest savings for a single item (outside of
> networking) 'if we could do it':
>
> "- Largest is still drivers
>
> - drivers/tty and serial is the biggest obvious win if we can do it
> - break down into granular config options
> - leave simplest possible tty/serial functionality
> - allow tailoring to specific hardware
> - also helps in effort to get rid of char devices
> - 65740/815190"
>
> Basically 65k out of an 800k text size could be partially or mostly
> saved by addressing that one item, which looks like it pretty much
> matches Nicolas' numbers...
One thing on x86 that inflates the size is the 8250 driver itself. I'm
looking at some ARM targets with their own UART whose driver is much
smaller.
> BTW, since I'm quoting my own notes on the subject, I thought I'd just
> include the whole thing, which covers a bunch of other areas possibly
> ripe for tinification, in case anyone might be interested (some of it
> should be taken with a grain of salt though ;-)
>
[...]
>
> - 2nd largest is kernel
>
> - should be able to cut *something* from time and sched
> - we have a handful of processes at most
> - we have very simple time needs
> - say 30000/815190 savings
>
> 150742 6376 8209 165327 285cf ./kernel/built-in.o
>
> 40951 1105 4720 46776 b6b8 ./kernel/time/built-in.o
Commit baa73d9e47 allows for shaving off 25K here. More could probably
be done.
> 21760 1318 112 23190 5a96 ./kernel/sched/built-in.o
I already have an alternative scheduler implementation that weights 9K.
It is on the backburner for now though. But don't let the scheduler
guys know just yet. ;-)
Nicolas
next prev parent reply other threads:[~2017-04-04 20:27 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-01 22:21 [PATCH v2 0/5] minitty: a minimal TTY layer alternative for embedded systems Nicolas Pitre
2017-04-01 22:21 ` [PATCH v2 1/5] console: move console_init() out of tty_io.c Nicolas Pitre
2017-04-01 22:21 ` [PATCH v2 2/5] tty: move baudrate handling code to a file of its own Nicolas Pitre
2017-04-01 22:21 ` [PATCH v2 3/5] serial: small Makefile reordering Nicolas Pitre
2017-04-02 12:55 ` Andy Shevchenko
2017-04-02 15:49 ` Nicolas Pitre
2017-04-01 22:21 ` [PATCH v2 4/5] serial: split generic UART driver helper functions into a separate file Nicolas Pitre
2017-04-02 13:16 ` Andy Shevchenko
2017-04-02 15:44 ` Nicolas Pitre
2017-04-03 7:35 ` kbuild test robot
2017-04-01 22:21 ` [PATCH v2 5/5] minitty: minimal TTY support alternative for serial ports Nicolas Pitre
2017-04-02 13:22 ` [PATCH v2 0/5] minitty: a minimal TTY layer alternative for embedded systems Andy Shevchenko
2017-04-02 15:55 ` Nicolas Pitre
2017-04-03 12:56 ` Alan Cox
2017-04-03 16:06 ` Nicolas Pitre
2017-04-03 18:05 ` Alan Cox
2017-04-03 19:50 ` Nicolas Pitre
2017-04-04 13:40 ` Alan Cox
2017-04-04 19:26 ` Nicolas Pitre
2017-04-02 20:47 ` Andi Kleen
2017-04-02 21:41 ` Nicolas Pitre
2017-04-02 22:44 ` Stuart Longland
2017-04-03 1:01 ` Nicolas Pitre
2017-04-04 0:39 ` Stuart Longland
2017-04-03 18:14 ` Geert Uytterhoeven
2017-04-03 18:57 ` Rob Herring
2017-04-03 19:46 ` Geert Uytterhoeven
2017-04-03 21:05 ` Andy Shevchenko
2017-04-04 16:59 ` Tom Zanussi
2017-04-04 17:08 ` Andy Shevchenko
2017-04-04 17:59 ` Tom Zanussi
2017-04-04 18:04 ` Andy Shevchenko
2017-04-04 18:31 ` Nicolas Pitre
2017-04-04 19:58 ` Tom Zanussi
2017-04-04 20:27 ` Nicolas Pitre [this message]
2017-04-04 18:53 ` Nicolas Pitre
2017-04-03 7:54 ` Andy Shevchenko
2017-04-03 15:31 ` Andi Kleen
2017-04-03 17:27 ` Nicolas Pitre
2017-04-03 19:57 ` Adam Borowski
2017-04-03 20:09 ` Nicolas Pitre
2017-04-03 20:32 ` Adam Borowski
2017-04-03 16:40 ` Nicolas Pitre
2017-04-03 7:44 ` Greg Kroah-Hartman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.LFD.2.20.1704041607130.1847@knanqh.ubzr \
--to=nicolas.pitre@linaro.org \
--cc=andi@firstfloor.org \
--cc=andy.shevchenko@gmail.com \
--cc=geert@linux-m68k.org \
--cc=gregkh@linuxfoundation.org \
--cc=jslaby@suse.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=stuartl@longlandclan.id.au \
--cc=tom.zanussi@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).