zoukankan      html  css  js  c++  java
  • 内核启动时在挂载ubi文件系统时提示UBIFS error (ubi0:0 pid 1): ubifs_read_superblock: min. I/O unit mismatch

    一.背景

    1.1 笔者机器的内核错误信息如下:

    UBIFS error (ubi0:0 pid 1): ubifs_read_superblock: min. I/O unit mismatch: 2048 in superblock, 8 real (逻辑块大小与实际大小不符)

    1.2 笔者为ubi文件提供的flash分区大小为32MiB

    二.解决方法

    修改在制作ubi文件系统时的页面大小参数

    mkfs.ubifs的-m是用来指定页面大小参数的,当然其它参数也是需要适当调整的

    如笔者原来的参数为:-m 2048 -e 124KiB -c 4096  (指定页面大小为2048字节,指定擦除块大小为124KiB,指定擦除块数目为4096个,那么整个分区需要的大小为4096*124KiB=496MiB)

    修改后的参数为:-m 1 -e 262016 -c 128 (指定页面大小为1字节,指定擦除块大小为262016字节=262144-128=256KiB-128B,指定擦除块数目为128个,那么整个分区需要的大小为128 * 262016B=31.984375MiB ,注意这个大小是小于笔者提供的flash分区32MiB大小的)

    -c指定的数字是如何得出的:根文件系统分区的大小/物理逻辑块大小=32MiB/256kiB=128

  • 相关阅读:
    Laravel源码解析 — 服务容器
    Java日志框架中需要判断log.isDebugEnabled()吗?
    使用C语言实现线性表
    new-delete
    webrtc-AudioprcessingModule 3A算法demo
    关于iPhone语音备忘录访问
    关于音频通话耗时
    关于Windows上使用OpenAL API声源音效
    c++ 类术语
    二分法查找
  • 原文地址:https://www.cnblogs.com/dakewei/p/9962447.html
Copyright © 2011-2022 走看看