* [U-Boot] Regression with ubifs initialization
@ 2014-10-27 14:02 Andrew Ruder
2014-10-27 14:33 ` Wolfgang Denk
0 siblings, 1 reply; 4+ messages in thread
From: Andrew Ruder @ 2014-10-27 14:02 UTC (permalink / raw)
To: u-boot
Hey all,
It appears that 2014.10 has some issues with UBIFS initialization
(details at bottom). git-bisect results in one of the following commits
being broken. Surely it is the mtd one, but its parent commit
(compat.h) does not compile.
[ff94bc40af3] mtd, ubi, ubifs: resync with Linux-3.14
[0c06db59836] lib, linux: move linux specific defines to linux/compat.h
A little background for the errors below. My MTD table:
device nor0 <0.flash>, # parts = 5
#: name size offset mask_flags
0: uboot 0x00080000 0x00000000 0
1: env 0x00020000 0x00080000 0
2: env_redund 0x00020000 0x000a0000 0
3: env_factory 0x00020000 0x000c0000 0
4: data 0x00400000 0x000e0000 0
=========================================================
Older (2014.07) U-Boot, I can do something like this:
$ erase nor0,4
Erase Flash Partition nor0,4, bank 0, 0x000e0000 - 0x004dffff
................................ done
Erased 32 sectors
$ ubi part data
UBI: attaching mtd1 to ubi0
UBI: physical eraseblock size: 131072 bytes (128 KiB)
UBI: logical eraseblock size: 130944 bytes
UBI: smallest flash I/O unit: 1
UBI: VID header offset: 64 (aligned 64)
UBI: data offset: 128
UBI: empty MTD device detected
UBI: create volume table (copy #1)
UBI: create volume table (copy #2)
UBI: attached mtd1 to ubi0
UBI: MTD device name: "mtd=4"
UBI: MTD device size: 4 MiB
UBI: number of good PEBs: 32
UBI: number of bad PEBs: 0
UBI: max. allowed volumes: 128
UBI: wear-leveling threshold: 4096
UBI: number of internal volumes: 1
UBI: number of user volumes: 0
UBI: available PEBs: 28
UBI: total number of reserved PEBs: 4
UBI: number of PEBs reserved for bad PEB handling: 0
UBI: max/mean erase counter: 1/0
$
=========================================================
Newer (2014.10) U-Boot, I get the following
$ erase nor0,4
Erase Flash Partition nor0,4, bank 0, 0x000e0000 - 0x004dffff
................................ done
Erased 32 sectors
$ ubi part data
UBI: attaching mtd1 to ubi0
$ ubi info
UBI: MTD device name: "(a"
UBI: MTD device size: 18446742253448744536 MiB
UBI: physical eraseblock size: -443412400 bytes (-433020 KiB)
UBI: logical eraseblock size: -442945536 bytes
UBI: number of good PEBs: -494718944
UBI: number of bad PEBs: -444399596
UBI: smallest flash I/O unit: -452780024
UBI: VID header offset: -444391424 (aligned -390234000)
UBI: data offset: -443207680
UBI: max. allowed volumes: -509550577
UBI: wear-leveling threshold: 4096
UBI: number of internal volumes: 1
UBI: number of user volumes: 479
UBI: available PEBs: -443686912
UBI: total number of reserved PEBs: -450899448
UBI: number of PEBs reserved for bad PEB handling: -514859008
UBI: max/mean erase counter: -450944464/-393084916
- Andy
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] Regression with ubifs initialization
2014-10-27 14:02 [U-Boot] Regression with ubifs initialization Andrew Ruder
@ 2014-10-27 14:33 ` Wolfgang Denk
2014-10-27 14:45 ` Andrew Ruder
0 siblings, 1 reply; 4+ messages in thread
From: Wolfgang Denk @ 2014-10-27 14:33 UTC (permalink / raw)
To: u-boot
Dear Andrew,
In message <20141027140241.GA7726@og3k> you wrote:
>
> It appears that 2014.10 has some issues with UBIFS initialization
> (details at bottom). git-bisect results in one of the following commits
> being broken. Surely it is the mtd one, but its parent commit
> (compat.h) does not compile.
Which board are you talking about?
And which toolchain(s) are/have you been using to build U-Boot?
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"Most people would like to be delivered from temptation but would
like it to keep in touch." - Robert Orben
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] Regression with ubifs initialization
2014-10-27 14:33 ` Wolfgang Denk
@ 2014-10-27 14:45 ` Andrew Ruder
2014-10-27 18:56 ` Andrew Ruder
0 siblings, 1 reply; 4+ messages in thread
From: Andrew Ruder @ 2014-10-27 14:45 UTC (permalink / raw)
To: u-boot
On Mon, Oct 27, 2014 at 03:33:00PM +0100, Wolfgang Denk wrote:
> > It appears that 2014.10 has some issues with UBIFS initialization
> > (details at bottom). git-bisect results in one of the following commits
> > being broken. Surely it is the mtd one, but its parent commit
> > (compat.h) does not compile.
>
> Which board are you talking about?
I have a board with a PXA270 and NOR flash. I am happy to submit the
patches which add the board support, but they aren't really ready and
cleaned up for submission.
> And which toolchain(s) are/have you been using to build U-Boot?
A crosstools-ng compiled gcc 4.8.2.
Would be interested to know if this is expected behavior:
a.) erase flash partition
b.) Call out erased partition as a ubi partition
c.) ubi triggers a initialization.
Because if so, that seems to no longer happen and it blindly attempts to
use the erased flash as valid ubi data.
- Andy
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] Regression with ubifs initialization
2014-10-27 14:45 ` Andrew Ruder
@ 2014-10-27 18:56 ` Andrew Ruder
0 siblings, 0 replies; 4+ messages in thread
From: Andrew Ruder @ 2014-10-27 18:56 UTC (permalink / raw)
To: u-boot
On Mon, Oct 27, 2014 at 09:45:16AM -0500, Andrew Ruder wrote:
> On Mon, Oct 27, 2014 at 03:33:00PM +0100, Wolfgang Denk wrote:
> > > It appears that 2014.10 has some issues with UBIFS initialization
> > > (details at bottom). git-bisect results in one of the following commits
> > > being broken. Surely it is the mtd one, but its parent commit
> > > (compat.h) does not compile.
> >
> > Which board are you talking about?
>
> I have a board with a PXA270 and NOR flash. I am happy to submit the
> patches which add the board support, but they aren't really ready and
> cleaned up for submission.
>
> > And which toolchain(s) are/have you been using to build U-Boot?
>
> A crosstools-ng compiled gcc 4.8.2.
Wolfgang and I talked quite a bit on IRC and just catching up anyone
else looking at this with a few additional details that came out of
this.
The problem appears to stem from 'ubi part data' completing with no
errors while also not filling in any of the ubi_devices[] array. This
in turn results in the global 'ubi' variable being NULL (on PXA270 this
is u-boot in flash). At this point display_ubi_info() gets passed NULL
and ends up printing compiler-dependent junk for all the values.
That being said, I tried 4.9.1 and had the same issue
(display_ubi_info() being passed NULL) with different symptoms (complete
lock up because it ends up hitting data alignment issues when it starts
treating opcodes as pointers).
- Andy
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-10-27 18:56 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-27 14:02 [U-Boot] Regression with ubifs initialization Andrew Ruder
2014-10-27 14:33 ` Wolfgang Denk
2014-10-27 14:45 ` Andrew Ruder
2014-10-27 18:56 ` Andrew Ruder
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox