<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX Processors中的主题 Re: uboot ext4load is very slow to read the kernel image into memory</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719267#M111787</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/qiweiwen"&gt;qiweiwen&lt;/A&gt; Did you find a patch that addresses this issue? If so, can you please point me to it? Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 29 Jul 2018 00:03:24 GMT</pubDate>
    <dc:creator>sp_qoriq</dc:creator>
    <dc:date>2018-07-29T00:03:24Z</dc:date>
    <item>
      <title>uboot ext4load is very slow to read the kernel image into memory</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719265#M111785</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We have a custom ARM board based on the imx6 quad processor and have been using modified Boundary Devices Android release, including their&amp;nbsp;uboot 2015.07.&lt;/P&gt;&lt;P&gt;We found a strange problem with the boot process: late in the boot script, uboot tries to pull the Linux kernel image from mmc&amp;nbsp;1:1 to physical memory 10800000. The kernel is 8MB large and this process takes ~27 seconds, at ~300KB/s. I tried reading only the first 1.6MB of the kernel image, and the speed is the same. Compare that with the time to load Android's initial ramdisk:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;=&amp;gt; load mmc 1:1 13800000 zImage 186A00 0&lt;/SPAN&gt;&lt;BR style="color: #333333; background-color: #ffffff; font-size: 14px;" /&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;1600000 bytes read in 5108 ms (305.7 KiB/s)&lt;/SPAN&gt;&lt;BR style="color: #333333; background-color: #ffffff; font-size: 14px;" /&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;=&amp;gt; load mmc 1:1 13800000 uramdisk.img&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR style="color: #333333; background-color: #ffffff; font-size: 14px;" /&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;1643223 bytes read in 91 ms (17.2 MiB/s)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;In desparation, I got rid of everything in the boot partition save for zImage, and even ran e4defrag on it to reduce the number of extents from 13 to 5, and the result is exactly the same:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;=&amp;gt; ext4load mmc 1:1 13800000 zImage&lt;BR /&gt;8615840 bytes read in 27166 ms (309.6 KiB/s)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;What might be the cause of the problem?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #333333; background-color: #ffffff; font-size: 14px;"&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;I haven't yet tried upgrading uboot to Boundary Devices' latest, but I hesitate to do it because it entails migrating all of our modifications to a new code base)&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Mar 2018 03:22:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719265#M111785</guid>
      <dc:creator>qiweiwen</dc:creator>
      <dc:date>2018-03-21T03:22:58Z</dc:date>
    </item>
    <item>
      <title>Re: uboot ext4load is very slow to read the kernel image into memory</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719266#M111786</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Found the cause of the problem. uboot's ext4fs_read_file function will call read_allocated_block function for each logical block in the file to map it to a physical device offset by walking the extent tree. However, the whole point about extents is that they are contiguous both in the file and on the disk, so once an extent block is fetched, it doesn't need to be fetched again. Only files with fewer than 5 extents, in which case all metadata is found in the inode, has acceptable performance.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;The&amp;nbsp;workaround is to add caching to read_allocated_block so that once the first "cache miss" causes the extent block to be read from disk, it's kept around for all logical offsets covered by that extent.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Mar 2018 00:32:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719266#M111786</guid>
      <dc:creator>qiweiwen</dc:creator>
      <dc:date>2018-03-26T00:32:51Z</dc:date>
    </item>
    <item>
      <title>Re: uboot ext4load is very slow to read the kernel image into memory</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719267#M111787</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/qiweiwen"&gt;qiweiwen&lt;/A&gt; Did you find a patch that addresses this issue? If so, can you please point me to it? Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 29 Jul 2018 00:03:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719267#M111787</guid>
      <dc:creator>sp_qoriq</dc:creator>
      <dc:date>2018-07-29T00:03:24Z</dc:date>
    </item>
    <item>
      <title>Re: uboot ext4load is very slow to read the kernel image into memory</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719268#M111788</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There is a commit from 2014 in the U-Boot repository that added the support for ext4 extent caching.&lt;/P&gt;&lt;P&gt;"fc0fc50f38 ext4fs: Add ext4 extent cache for read operations"&lt;/P&gt;&lt;P&gt;But as it broke the ext4 write support, it was quickly reverted.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Sep 2018 09:53:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719268#M111788</guid>
      <dc:creator>romainizard</dc:creator>
      <dc:date>2018-09-07T09:53:41Z</dc:date>
    </item>
    <item>
      <title>Re: uboot ext4load is very slow to read the kernel image into memory</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719269#M111789</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I ran into a similar problem when loading the Kernel from MMC on i.MX8MM. My solution was to change /boot partitions format to FAT. So if ext4 is not indispensable for you, this might help you for now.&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 Apr 2019 12:44:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/719269#M111789</guid>
      <dc:creator>mb1</dc:creator>
      <dc:date>2019-04-23T12:44:42Z</dc:date>
    </item>
    <item>
      <title>Re: uboot ext4load is very slow to read the kernel image into memory</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/1218308#M168107</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I solved applying the following patch:&lt;/P&gt;&lt;P&gt;&lt;A href="https://patchwork.ozlabs.org/project/uboot/patch/20180511180937.7968-1-evan.thompson@flukenetworks.com/" target="_blank"&gt;https://patchwork.ozlabs.org/project/uboot/patch/20180511180937.7968-1-evan.thompson@flukenetworks.com/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards.&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jan 2021 22:55:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/uboot-ext4load-is-very-slow-to-read-the-kernel-image-into-memory/m-p/1218308#M168107</guid>
      <dc:creator>scott3303</dc:creator>
      <dc:date>2021-01-20T22:55:05Z</dc:date>
    </item>
  </channel>
</rss>

