CONFIG_BCH_CONST_PARAMS should be unset
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Committed
|
Wishlist
|
Seth Forshee | ||
Cosmic |
Won't Fix
|
Wishlist
|
Seth Forshee |
Bug Description
Quoting lib/bch.c:
* Option CONFIG_
* parameters m and t; thus allowing extra compiler optimizations and providing
* better (up to 2x) encoding performance. Using this option makes sense when
* (m,t) are fixed and known in advance, e.g. when using BCH error correction
* on a particular NAND flash device.
Ubuntu's kernel targets generic hardware, so using this option is not a good idea.
As a result of this option being enabled, nandsim's option "bch" is unusable:
[34200.137521] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[34200.137522] [nandsim] using 8-bit/512 bytes BCH ECC
[34200.137524] bch encoder/decoder was configured to support parameters m=14, t=4 only!
---
Ubuntu 18.04.1 LTS, linux-image-
affects: | linux-signed (Ubuntu) → linux (Ubuntu) |
Changed in linux (Ubuntu): | |
importance: | Undecided → Wishlist |
Changed in linux (Ubuntu Cosmic): | |
status: | New → Triaged |
Changed in linux (Ubuntu Cosmic): | |
status: | In Progress → Fix Committed |
This option is selected as a result of having CONFIG_MTD_DOCG3. This seems to be very old hardware which only had experimental support, so I doubt there's any harm in disabling it. I agree that CONFIG_ BCH_CONST_ PARAMS looks to only make sense when the hardware is known. It seems it should be safe to disable these options.