mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Ahmad Fatoum <a.fatoum@pengutronix.de>
To: Sascha Hauer <s.hauer@pengutronix.de>,
	"barebox@lists.infradead.org" <barebox@lists.infradead.org>
Subject: MTD/NAND layer size increase after update
Date: Tue, 28 May 2024 13:55:28 +0200	[thread overview]
Message-ID: <f8ce07a1-af83-4cdd-a6d4-1c800ec5458a@pengutronix.de> (raw)

Hello Sascha,

The recent MTD/NAND layer sync with Linux made barebox a good deal fatter with the result
that the DistroKit configuration[1] for am335x MLO now fails to compile on v2024.05.0:

  images/start_am33xx_afi_gf_sram.pblb size 113544 > maximum size 111616

[1]: https://git.pengutronix.de/cgit/DistroKit/plain/configs/platform-v7a/barebox-am335x-mlo.config?h=next&id=5db984fcb018f57bc19553a7c95be58ab8cc8b5f

I looked at the diff and found that the sync commit inadvertently dropped CONFIG_MTD_WRITE
checks. I added back these checks to save some Kilobytes, but there is still some size increase,
which I think is unreasonable for existing users that didn't need the newly imported
functionality. Can you take a look and perhaps add some IS_ENABLED() checks?

Here is bloaty output that shows some of the symbols responsible for the size increase
(Some may be false positives due to symbol rename or refactoring):

bloaty build/barebox --domain=vm -- barebox.old  -d symbols -n 40 
     VM SIZE    
 -------------- 
  [NEW] +1.12Ki    onfi_nvddr_timings
  [NEW]   +1000    nand_lp_exec_cont_read_page_op
   +34%    +588    nand_scan_tail
  [NEW]    +428    nanddev_mtd_max_bad_blocks
 -98.5%    +396    [163 Others]
  [NEW]    +342    nand_read_page_syndrome
  +1.6%    +332    [section .rodata]
  [NEW]    +324    of_get_nand_ecc_user_config
  [NEW]    +256    onfi_find_closest_nvddr_mode
   +13%    +236    nand_scan_ident
  [NEW]    +192    nand_read_oob_syndrome
  [NEW]    +190    nand_read_page_raw_syndrome
   +22%    +180    nand_read_page_op
  [NEW]    +170    nand_read_page_swecc
   +16%    +168    nand_read_oob
   +77%    +144    nand_read_data_op
  [NEW]    +132    handoff_data_reserve
  [NEW]    +122    nand_choose_best_nvddr_timings
  [NEW]    +108    rawnand_cap_cont_reads
   +28%    +100    nand_get_features
  [NEW]     +92    barebox_hostname_is_valid
   +32%     +88    nand_readid_op
   +55%     +84    onfi_fill_interface_config
  +6.9%     +80    nand_onfi_detect
  [NEW]     +74    nand_ecc_is_strong_enough
  [NEW]     +64    nand_isreserved_bbt
  [NEW]     +60    console_set_stdoutpath
  [NEW]     +56    broken_get_timings.5
  +8.7%     +52    macronix_nand_init
   +12%     +48    nand_read_param_page_op
   +20%     +48    nand_setup_interface
   +13%     +44    nand_set_features
  [NEW]     +40    handoff_data_get
  +8.3%     +40    nand_exec_prog_page_op
  -8.2%     -40    console_register
  [DEL]     -56    broken_get_timings.4
  [DEL]     -60    of_get_nand_ecc_mode
  [DEL]     -96    nand_block_markgood
  [DEL]    -102    nand_mark_bbt
  [DEL]    -104    reparse_partition_table
 -45.5%    -120    barebox_non_pbl_start
  +4.0% +6.69Ki    TOTAL


Thanks,
Ahmad

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



                 reply	other threads:[~2024-05-28 11:56 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=f8ce07a1-af83-4cdd-a6d4-1c800ec5458a@pengutronix.de \
    --to=a.fatoum@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    --cc=s.hauer@pengutronix.de \
    /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