linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* Device Tree Corrupted after unflatten_device_tree()
@ 2009-10-20 16:10 Lixin Yao
  2009-10-20 23:01 ` Michael Ellerman
  0 siblings, 1 reply; 5+ messages in thread
From: Lixin Yao @ 2009-10-20 16:10 UTC (permalink / raw)
  To: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 848 bytes --]

I use a board with MPC866T and 2.6.28 Linux Kernel.  Occasionally, the
unflattened device is corrupted after "unflatten_device_tree()" which
causes crash of kernel when device tree is traversed later on.

I looked at the fixes in lib/lmb.c, arch/powerpc/mm, arch/powerpc/kernel
etc since 2.6.28 to 2.6.32-r4 (the most recent version) and could not
fix my problem.

I have had a hard time trying to determine the cause. 

arch/powerpc/kernel/setup_32.c
void __init setup_arch(char **cmdline_p)
{
	*cmdline_p = cmd_line;

	/* so udelay does something sensible, assume <= 1000 bogomips */
	loops_per_jiffy = 500000000 / HZ;

	unflatten_device_tree();
	/* UNFLATTENED DEVICE TREE IS CORRUPTED SOMETIMES HERE */
	check_for_initrd();

   	......
}

Any ideas?

Thanks.

Lixin Yao
Harris Startex Networks Inc.
RTP, NC, USA

[-- Attachment #2: Type: text/html, Size: 4135 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Device Tree Corrupted after unflatten_device_tree()
  2009-10-20 16:10 Device Tree Corrupted after unflatten_device_tree() Lixin Yao
@ 2009-10-20 23:01 ` Michael Ellerman
  2009-10-21 17:43   ` Lixin Yao
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Ellerman @ 2009-10-20 23:01 UTC (permalink / raw)
  To: Lixin Yao; +Cc: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 986 bytes --]

On Tue, 2009-10-20 at 09:10 -0700, Lixin Yao wrote:
> I use a board with MPC866T and 2.6.28 Linux Kernel.  Occasionally, the
> unflattened device is corrupted after “unflatten_device_tree()” which
> causes crash of kernel when device tree is traversed later on.
> 
> I looked at the fixes in lib/lmb.c, arch/powerpc/mm,
> arch/powerpc/kernel etc since 2.6.28 to 2.6.32-r4 (the most recent
> version) and could not fix my problem.
> 
> I have had a hard time trying to determine the cause. 
> 
> arch/powerpc/kernel/setup_32.c
> 
> void __init setup_arch(char **cmdline_p)
> 
> {
> 
>         *cmdline_p = cmd_line;
> 
>         /* so udelay does something sensible, assume <= 1000 bogomips
> */
> 
>         loops_per_jiffy = 500000000 / HZ;
> 
>         unflatten_device_tree();
> 
>         /* UNFLATTENED DEVICE TREE IS CORRUPTED SOMETIMES HERE */

_In what way_ is it corrupted? Bad tree structure? Bogus node/property
values, names etc.

cheers

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: Device Tree Corrupted after unflatten_device_tree()
  2009-10-20 23:01 ` Michael Ellerman
@ 2009-10-21 17:43   ` Lixin Yao
  2009-10-21 22:10     ` David Gibson
  0 siblings, 1 reply; 5+ messages in thread
From: Lixin Yao @ 2009-10-21 17:43 UTC (permalink / raw)
  To: michael; +Cc: linuxppc-dev

V2hlbiBjb3JydXB0ZWQsIGN1cnRhaW4gYmxvY2tzIG9mIDY0IGJ5dGVzIGFyZSBtZXNzZWQgdXAu
DQpUaGlzIGlzIGEgc2NyZWVuIGR1bXAgb2YgYSBnb29kIHVuZmxhdHRlbmVkIGRldmljZSBhdCBi
ZWdpbm5pbmc6DQoNCk5DQ3YyPm1kIDB4M2ZmZGQ0MA0KMDNmZmRkNDAgOiBjM2ZmZGRkNCBjMDI1
YThkYyAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4lLi4uLi4uLi4uLg0KMDNmZmRkNTAgOiBjM2Zm
ZGQ4MCBjM2ZmZGQ4NCAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4uLi4uLi4uLi4uLg0KMDNmZmRk
NjAgOiBjM2ZmZGRkOCAwMDAwMDAwMCBjM2ZmZmU5NCBjM2ZmZGRkOCAgLi4uLi4uLi4uLi4uLi4u
Lg0KMDNmZmRkNzAgOiAwMDAwMDAwMCAwMDAwMDAwMSAwMDAwMDAwMCAwMDAwMDAwMCAgLi4uLi4u
Li4uLi4uLi4uLg0KMDNmZmRkODAgOiAyZjAwMDAwMCBjMDczMDZiNCAwMDAwMDAxMCBjMDcyZjM0
YyAgLy4uLi5zLi4uLi4uLnIuTA0KMDNmZmRkOTAgOiBjM2ZmZGQ5NCBjMDczMDZiYSAwMDAwMDAx
MCBjMDcyZjM2OCAgLi4uLi5zLi4uLi4uLnIuaA0KMDNmZmRkYTAgOiBjM2ZmZGRhNCBjMDczMDZj
NSAwMDAwMDAwNCBjMDcyZjM4NCAgLi4uLi5zLi4uLi4uLnIuLg0KMDNmZmRkYjAgOiBjM2ZmZGRi
NCBjMDczMDZkNCAwMDAwMDAwNCBjMDcyZjM5NCAgLi4uLi5zLi4uLi4uLnIuLg0KMDNmZmRkYzAg
OiBjM2ZmZGRjNCBjMDI1ZWQ5OCAwMDAwMDAwMSBjM2ZmZGRkNCAgLi4uLi4lLi4uLi4uLi4uLg0K
MDNmZmRkZDAgOiAwMDAwMDAwMCAwMDAwMDAwMCBjM2ZmZGU1MCBjMDI1YThkYyAgLi4uLi4uLi4u
Li5QLiUuLg0KMDNmZmRkZTAgOiAwMDAwMDAwMCAwMDAwMDAwMCBjM2ZmZGUxOCBjM2ZmZGUyMCAg
Li4uLi4uLi4uLi4uLi4uIA0KMDNmZmRkZjAgOiAwMDAwMDAwMCBjM2ZmZGQ0MCBjM2ZmZGU1OCBj
M2ZmZGY3OCAgLi4uLi4uLkAuLi5YLi4ueA0KMDNmZmRlMDAgOiBjM2ZmZGU1OCBjM2ZmZGU1OCAw
MDAwMDAwMCAwMDAwMDAwMSAgLi4uWC4uLlguLi4uLi4uLg0KMDNmZmRlMTAgOiAwMDAwMDAwMCAw
MDAwMDAwMCAyZjYzNzA3NSA3MzAwMDAwMCAgLi4uLi4uLi4vY3B1cy4uLg0KMDNmZmRlMjAgOiBj
MDczMDZjNSAwMDAwMDAwNCBjMDcyZjNiMCBjM2ZmZGUzMCAgLnMuLi4uLi4uci4uLi4uMA0KMDNm
ZmRlMzAgOiBjMDczMDZkNCAwMDAwMDAwNCBjMDcyZjNjMCBjM2ZmZGU0MCAgLnMuLi4uLi4uci4u
Li4uQA0KTkNDdjI+bWQNCjAzZmZkZTQwIDogYzAyNWVkOTggMDAwMDAwMDUgYzNmZmRlNTAgMDAw
MDAwMDAgIC4lLi4uLi4uLi4uUC4uLi4NCjAzZmZkZTUwIDogNjM3MDc1NzMgMDAwMDAwMDAgYzNm
ZmRmNmMgYzA3MmYzZTQgIGNwdXMuLi4uLi4ubC5yLi4NCjAzZmZkZTYwIDogMDAwMDAwMDAgMDAw
MDAwMDAgYzNmZmRlOTggYzNmZmRlYWMgIC4uLi4uLi4uLi4uLi4uLi4NCjAzZmZkZTcwIDogMDAw
MDAwMDAgYzNmZmRkZDggMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4NCjAzZmZk
ZTgwIDogMDAwMDAwMDAgYzNmZmRmNzggMDAwMDAwMDAgMDAwMDAwMDIgIC4uLi4uLi54Li4uLi4u
Li4NCjAzZmZkZTkwIDogMDAwMDAwMDAgMDAwMDAwMDAgMmY2MzcwNzUgNzMyZjUwNmYgIC4uLi4u
Li4uL2NwdXMvUG8NCjAzZmZkZWEwIDogNzc2NTcyNTAgNDMyYzM4MzYgMzY0MDMwMDAgYzA3MzA2
ZTAgIHdlclBDLDg2NkAwLi5zLi4NCjAzZmZkZWIwIDogMDAwMDAwMDQgYzA3MmYzZTQgYzNmZmRl
YmMgYzA3MzA2ZWMgIC4uLi4uci4uLi4uLi5zLi4NCjAzZmZkZWMwIDogMDAwMDAwMDQgYzA3MmYz
ZjQgYzNmZmRlY2MgYzA3MzA2ZjAgIC4uLi4uci4uLi4uLi5zLi4NCjAzZmZkZWQwIDogMDAwMDAw
MDQgYzA3MmY0MDQgYzNmZmRlZGMgYzA3MzA3MDIgIC4uLi4uci4uLi4uLi5zLi4NCjAzZmZkZWUw
IDogMDAwMDAwMDQgYzA3MmY0MTQgYzNmZmRlZWMgYzA3MzA3MTQgIC4uLi4uci4uLi4uLi5zLi4N
CjAzZmZkZWYwIDogMDAwMDAwMDQgYzA3MmY0MjQgYzNmZmRlZmMgYzA3MzA3MjEgIC4uLi4uci4k
Li4uLi5zLiENCjAzZmZkZjAwIDogMDAwMDAwMDQgYzA3MmY0MzQgYzNmZmRmMGMgYzA3MzA3MmUg
IC4uLi4uci40Li4uLi5zLi4NCjAzZmZkZjEwIDogMDAwMDAwMDQgYzA3MmY0NDQgYzNmZmRmMWMg
YzA3MzA3NDEgIC4uLi4uci5ELi4uLi5zLkENCjAzZmZkZjIwIDogMDAwMDAwMDQgYzA3MmY0NTQg
YzNmZmRmMmMgYzA3MzA3NGYgIC4uLi4uci5ULi4uLC5zLk8NCjAzZmZkZjMwIDogMDAwMDAwMDQg
YzA3MmY0NjQgYzNmZmRmM2MgYzA3MzA3NWYgIC4uLi4uci5kLi4uPC5zLl8NCk5DQ3YyPm1kDQow
M2ZmZGY0MCA6IDAwMDAwMDA4IGMwNzJmNDc0IGMzZmZkZjRjIGMwNzMwNzZhICAuLi4uLnIudC4u
Lkwucy5qDQowM2ZmZGY1MCA6IDAwMDAwMDA0IGMwNzJmNDg4IGMzZmZkZjVjIGMwMjVlZDk4ICAu
Li4uLnIuLi4uLlwuJS4uDQowM2ZmZGY2MCA6IDAwMDAwMDBjIGMzZmZkZjZjIDAwMDAwMDAwIDUw
NmY3NzY1ICAuLi4uLi4ubC4uLi5Qb3dlDQowM2ZmZGY3MCA6IDcyNTA0MzJjIDM4MzYzNjAwIGMz
ZmZlMDFjIGMwNzJmNGQ4ICByUEMsODY2Li4uLi4uci4uDQowM2ZmZGY4MCA6IDAwMDAwMDAwIDAw
MDAwMDAwIGMzZmZkZmI4IGMzZmZkZmNjICAuLi4uLi4uLi4uLi4uLi4uDQowM2ZmZGY5MCA6IDAw
MDAwMDAwIGMzZmZkZDQwIDAwMDAwMDAwIGMzZmZlMDMwICAuLi4uLi4uQC4uLi4uLi4wDQowM2Zm
ZGZhMCA6IDAwMDAwMDAwIGMzZmZlMDMwIDAwMDAwMDAwIDAwMDAwMDAxICAuLi4uLi4uMC4uLi4u
Li4uDQowM2ZmZGZiMCA6IDAwMDAwMDAwIDAwMDAwMDAwIDJmNjU2MzZjIDY5NzA3MzY1ICAuLi4u
Li4uLi9lY2xpcHNlDQowM2ZmZGZjMCA6IDVmNzM3MDY1IDYzNjk2NjY5IDYzMDBiYmUwIGMwNzMw
NmM1ICBfc3BlY2lmaWMuLi4ucy4uDQowM2ZmZGZkMCA6IDAwMDAwMDA0IGMwNzJmNGI4IGMzZmZk
ZmRjIGMwNzMwNmQ0ICAuLi4uLnIuLi4uLi4ucy4uDQowM2ZmZGZlMCA6IDAwMDAwMDA0IGMwNzJm
NGM4IGMzZmZkZmVjIGMwNzMwNmUwICAuLi4uLnIuLi4uLi4ucy4uDQowM2ZmZGZmMCA6IDAwMDAw
MDE1IGMwNzJmNGQ4IGMzZmZkZmZjIGMwNzMwNzdiICAuLi4uLnIuLi4uLi4ucy57DQowM2ZmZTAw
MCA6IDAwMDAwMDA0IGMwNzJmNGZjIGMzZmZlMDBjIGMwMjVlZDk4ICAuLi4uLnIuLi4uLi4uJS4u
DQowM2ZmZTAxMCA6IDAwMDAwMDExIGMzZmZlMDFjIDAwMDAwMDAwIDY1NjM2YzY5ICAuLi4uLi4u
Li4uLi5lY2xpDQowM2ZmZTAyMCA6IDcwNzM2NTVmIDczNzA2NTYzIDY5NjY2OTYzIDAwZWYzOTgw
ICBwc2Vfc3BlY2lmaWMuLjkuDQowM2ZmZTAzMCA6IGMzZmZlMGU0IGMwMjVhOGRjIDAwMDAwMDAw
IDAwMDAwMDAwICAuLi4uLiUuLi4uLi4uLi4uDQoNCldoZW4gY29ycnVwdGVkLCBpdCBiZWNvbWVz
IGZvbGxvd2luZywgbm90ZSB0aGUgNjQgYm9jayBhdCAweDAzZmZkZjAwDQppcyBtZXNzZWQgdXAu
IEFuZCB0aGlzIGtpbmQgb2YgY29ycnVwdGlvbnMgb2NjdXIgc2V2ZXJhbCB0aW1lcw0KaW4gdGhl
IHVuZmxhdHRlbmVkIGRldmljZSB0cmVlLiBUaGV5IGFyZSBwcm9wZXJ0aWVzIG9mIG5vZGVzLg0K
DQpOQ0N2Mj5tZCAweDNmZmRkNDANCjAzZmZkZDQwIDogYzNmZmRkZDQgYzAyNWE4ZGMgMDAwMDAw
MDAgMDAwMDAwMDAgIC4uLi4uJS4uLi4uLi4uLi4NCjAzZmZkZDUwIDogYzNmZmRkODAgYzNmZmRk
ODQgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4NCjAzZmZkZDYwIDogYzNmZmRk
ZDggMDAwMDAwMDAgYzNmZmZlOTQgYzNmZmRkZDggIC4uLi4uLi4uLi4uLi4uLi4NCjAzZmZkZDcw
IDogMDAwMDAwMDAgMDAwMDAwMDEgMDAwMDAwMDAgMDAwMDAwMDAgIC4uLi4uLi4uLi4uLi4uLi4N
CjAzZmZkZDgwIDogMmYwMDAwMDAgYzA3MzA2YjQgMDAwMDAwMTAgYzA3MmYzNGMgIC8uLi4ucy4u
Li4uLi5yLkwNCjAzZmZkZDkwIDogYzNmZmRkOTQgYzA3MzA2YmEgMDAwMDAwMTAgYzA3MmYzNjgg
IC4uLi4ucy4uLi4uLi5yLmgNCjAzZmZkZGEwIDogYzNmZmRkYTQgYzA3MzA2YzUgMDAwMDAwMDQg
YzA3MmYzODQgIC4uLi4ucy4uLi4uLi5yLi4NCjAzZmZkZGIwIDogYzNmZmRkYjQgYzA3MzA2ZDQg
MDAwMDAwMDQgYzA3MmYzOTQgIC4uLi4ucy4uLi4uLi5yLi4NCjAzZmZkZGMwIDogYzNmZmRkYzQg
YzAyNWVkOTggMDAwMDAwMDEgYzNmZmRkZDQgIC4uLi4uJS4uLi4uLi4uLi4NCjAzZmZkZGQwIDog
MDAwMDAwMDAgMDAwMDAwMDAgYzNmZmRlNTAgYzAyNWE4ZGMgIC4uLi4uLi4uLi4uUC4lLi4NCjAz
ZmZkZGUwIDogMDAwMDAwMDAgMDAwMDAwMDAgYzNmZmRlMTggYzNmZmRlMjAgIC4uLi4uLi4uLi4u
Li4uLiANCjAzZmZkZGYwIDogMDAwMDAwMDAgYzNmZmRkNDAgYzNmZmRlNTggYzNmZmRmNzggIC4u
Li4uLi5ALi4uWC4uLngNCjAzZmZkZTAwIDogYzNmZmRlNTggYzNmZmRlNTggMDAwMDAwMDAgMDAw
MDAwMDEgIC4uLlguLi5YLi4uLi4uLi4NCjAzZmZkZTEwIDogMDAwMDAwMDAgMDAwMDAwMDAgMmY2
MzcwNzUgNzMwMDAwMDAgIC4uLi4uLi4uL2NwdXMuLi4NCjAzZmZkZTIwIDogYzA3MzA2YzUgMDAw
MDAwMDQgYzA3MmYzYjAgYzNmZmRlMzAgIC5zLi4uLi4uLnIuLi4uLjANCjAzZmZkZTMwIDogYzA3
MzA2ZDQgMDAwMDAwMDQgYzA3MmYzYzAgYzNmZmRlNDAgIC5zLi4uLi4uLnIuLi4uLkANCk5DQ3Yy
Pm1kDQowM2ZmZGU0MCA6IGMwMjVlZDk4IDAwMDAwMDA1IGMzZmZkZTUwIDAwMDAwMDAwICAuJS4u
Li4uLi4uLlAuLi4uDQowM2ZmZGU1MCA6IDYzNzA3NTczIDAwMDAwMDAwIGMzZmZkZjZjIGMwNzJm
M2U0ICBjcHVzLi4uLi4uLmwuci4uDQowM2ZmZGU2MCA6IDAwMDAwMDAwIDAwMDAwMDAwIGMzZmZk
ZTk4IGMzZmZkZWFjICAuLi4uLi4uLi4uLi4uLi4uDQowM2ZmZGU3MCA6IDAwMDAwMDAwIGMzZmZk
ZGQ4IDAwMDAwMDAwIDAwMDAwMDAwICAuLi4uLi4uLi4uLi4uLi4uDQowM2ZmZGU4MCA6IDAwMDAw
MDAwIGMzZmZkZjc4IDAwMDAwMDAwIDAwMDAwMDAxICAuLi4uLi4ueC4uLi4uLi4uDQowM2ZmZGU5
MCA6IDAwMDAwMDAwIDAwMDAwMDAwIDJmNjM3MDc1IDczMmY1MDZmICAuLi4uLi4uLi9jcHVzL1Bv
DQowM2ZmZGVhMCA6IDc3NjU3MjUwIDQzMmMzODM2IDM2NDAzMDAwIGMwNzMwNmUwICB3ZXJQQyw4
NjZAMC4ucy4uDQowM2ZmZGViMCA6IDAwMDAwMDA0IGMwNzJmM2U0IGMzZmZkZWJjIGMwNzMwNmVj
ICAuLi4uLnIuLi4uLi4ucy4uDQowM2ZmZGVjMCA6IDAwMDAwMDA0IGMwNzJmM2Y0IGMzZmZkZWNj
IGMwNzMwNmYwICAuLi4uLnIuLi4uLi4ucy4uDQowM2ZmZGVkMCA6IDAwMDAwMDA0IGMwNzJmNDA0
IGMzZmZkZWRjIGMwNzMwNzAyICAuLi4uLnIuLi4uLi4ucy4uDQowM2ZmZGVlMCA6IDAwMDAwMDA0
IGMwNzJmNDE0IGMzZmZkZWVjIGMwNzMwNzE0ICAuLi4uLnIuLi4uLi4ucy4uDQowM2ZmZGVmMCA6
IDAwMDAwMDA0IGMwNzJmNDI0IGMzZmZkZWZjIGMwNzMwNzIxICAuLi4uLnIuJC4uLi4ucy4hDQow
M2ZmZGYwMCA6IGZmZmZmZmZmIGZmZmYwMDBjIGRiMDU1YmUwIDA4MDYwMDAxICAuLi4uLi4uLi4u
Wy4uLi4uDQowM2ZmZGYxMCA6IDA4MDAwNjA0IDAwMDEwMDBjIGRiMDU1YmUwIGFjMTQxMDAxICAu
Li4uLi4uLi4uWy4uLi4uDQowM2ZmZGYyMCA6IDAwMDAwMDAwIDAwMDBhYzE0IDEwNTMwMDAwIDEw
NTMwMDAwICAuLi4uLi4uLi5TLi4uUy4uDQowM2ZmZGYzMCA6IDA4MDAwNjA0IDAwMDEwMDBjIDM2
NjgxYmZlIGY4NzRjMDFlICAuLi4uLi4uLjZoLi4udC4uDQpOQ0N2Mj5tZA0KMDNmZmRmNDAgOiAw
MDAwMDAwOCBjMDcyZjQ3NCBjM2ZmZGY0YyBjMDczMDc2YSAgLi4uLi5yLnQuLi5MLnMuag0KMDNm
ZmRmNTAgOiAwMDAwMDAwNCBjMDcyZjQ4OCBjM2ZmZGY1YyBjMDI1ZWQ5OCAgLi4uLi5yLi4uLi5c
LiUuLg0KMDNmZmRmNjAgOiAwMDAwMDAwYyBjM2ZmZGY2YyAwMDAwMDAwMCA1MDZmNzc2NSAgLi4u
Li4uLmwuLi4uUG93ZQ0KMDNmZmRmNzAgOiA3MjUwNDMyYyAzODM2MzYwMCBjM2ZmZTAxYyBjMDcy
ZjRkOCAgclBDLDg2Ni4uLi4uLnIuLg0KMDNmZmRmODAgOiAwMDAwMDAwMCAwMDAwMDAwMCBjM2Zm
ZGZiOCBjM2ZmZGZjYyAgLi4uLi4uLi4uLi4uLi4uLg0KMDNmZmRmOTAgOiAwMDAwMDAwMCBjM2Zm
ZGQ0MCAwMDAwMDAwMCBjM2ZmZTAzMCAgLi4uLi4uLkAuLi4uLi4uMA0KMDNmZmRmYTAgOiAwMDAw
MDAwMCBjM2ZmZTAzMCAwMDAwMDAwMCAwMDAwMDAwMSAgLi4uLi4uLjAuLi4uLi4uLg0KMDNmZmRm
YjAgOiAwMDAwMDAwMCAwMDAwMDAwMCAyZjY1NjM2YyA2OTcwNzM2NSAgLi4uLi4uLi4vZWNsaXBz
ZQ0KMDNmZmRmYzAgOiA1ZjczNzA2NSA2MzY5NjY2OSA2MzAwMjg3MCBjMDczMDZjNSAgX3NwZWNp
ZmljLihwLnMuLg0KMDNmZmRmZDAgOiAwMDAwMDAwNCBjMDcyZjRiOCBjM2ZmZGZkYyBjMDczMDZk
NCAgLi4uLi5yLi4uLi4uLnMuLg0KMDNmZmRmZTAgOiAwMDAwMDAwNCBjMDcyZjRjOCBjM2ZmZGZl
YyBjMDczMDZlMCAgLi4uLi5yLi4uLi4uLnMuLg0KMDNmZmRmZjAgOiAwMDAwMDAxNSBjMDcyZjRk
OCBjM2ZmZGZmYyBjMDczMDc3YiAgLi4uLi5yLi4uLi4uLnMuew0KMDNmZmUwMDAgOiAwMDAwMDAw
NCBjMDcyZjRmYyBjM2ZmZTAwYyBjMDI1ZWQ5OCAgLi4uLi5yLi4uLi4uLiUuLg0KMDNmZmUwMTAg
OiAwMDAwMDAxMSBjM2ZmZTAxYyAwMDAwMDAwMCA2NTYzNmM2OSAgLi4uLi4uLi4uLi4uZWNsaQ0K
MDNmZmUwMjAgOiA3MDczNjU1ZiA3MzcwNjU2MyA2OTY2Njk2MyAwMDdiZTRmYSAgcHNlX3NwZWNp
ZmljLnsuLg0KMDNmZmUwMzAgOiBjM2ZmZTBlNCBjMDI1YThkYyAwMDAwMDAwMCAwMDAwMDAwMCAg
Li4uLi4lLi4uLi4uLi4uLg0KDQpBbHNvLCBJIGZvdW5kIA0KbWVtID0gbG1iX2FsbG9jKHNpemUg
KyA0LCBfX2FsaWdub2ZfXyhzdHJ1Y3QgZGV2aWNlX25vZGUpKTsNCmluIHVuZmxhdHRlbl9kZXZp
Y2VfdHJlZSgpIGlzIG5vdCByZWFsbHkgYWxpZ25lZCBhdCA2NCBieXRlIGJvdW5kYXJ5LA0KYWx0
aG91Z2ggc2l6ZW9mKHN0cnVjdCBkZXZpY2Vfbm9kZSkgaXMgNjQgYnl0ZXMuIFRoaXMgYm90aGVy
cyBtZS4gSSBzdXBwb3NlDQp0aGlzIHBhcnQgb2YgY29kZSBpcyB1c2VkIG1hbnkgbWFueSB0aW1l
cyBhbmQgb24gbWFueSBtYW55IGJvYXJkcy4gSXQgc2hvdWxkDQp3b3JrLiBJIGFtIG5vdCBzdXJl
IGlmIHRoaXMgY2F1c2VzIHRoZSBwcm9ibGVtLg0KDQpUaGFua3MhDQoNCkxpeGluDQoNCi0tLS0t
T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBNaWNoYWVsIEVsbGVybWFuIFttYWlsdG86bWlj
aGFlbEBlbGxlcm1hbi5pZC5hdV0gDQpTZW50OiBUdWVzZGF5LCBPY3RvYmVyIDIwLCAyMDA5IDc6
MDIgUE0NClRvOiBMaXhpbiBZYW8NCkNjOiBsaW51eHBwYy1kZXZAbGlzdHMub3psYWJzLm9yZw0K
U3ViamVjdDogUmU6IERldmljZSBUcmVlIENvcnJ1cHRlZCBhZnRlciB1bmZsYXR0ZW5fZGV2aWNl
X3RyZWUoKQ0KDQpPbiBUdWUsIDIwMDktMTAtMjAgYXQgMDk6MTAgLTA3MDAsIExpeGluIFlhbyB3
cm90ZToNCj4gSSB1c2UgYSBib2FyZCB3aXRoIE1QQzg2NlQgYW5kIDIuNi4yOCBMaW51eCBLZXJu
ZWwuICBPY2Nhc2lvbmFsbHksIHRoZQ0KPiB1bmZsYXR0ZW5lZCBkZXZpY2UgaXMgY29ycnVwdGVk
IGFmdGVyIOKAnHVuZmxhdHRlbl9kZXZpY2VfdHJlZSgp4oCdIHdoaWNoDQo+IGNhdXNlcyBjcmFz
aCBvZiBrZXJuZWwgd2hlbiBkZXZpY2UgdHJlZSBpcyB0cmF2ZXJzZWQgbGF0ZXIgb24uDQo+IA0K
PiBJIGxvb2tlZCBhdCB0aGUgZml4ZXMgaW4gbGliL2xtYi5jLCBhcmNoL3Bvd2VycGMvbW0sDQo+
IGFyY2gvcG93ZXJwYy9rZXJuZWwgZXRjIHNpbmNlIDIuNi4yOCB0byAyLjYuMzItcjQgKHRoZSBt
b3N0IHJlY2VudA0KPiB2ZXJzaW9uKSBhbmQgY291bGQgbm90IGZpeCBteSBwcm9ibGVtLg0KPiAN
Cj4gSSBoYXZlIGhhZCBhIGhhcmQgdGltZSB0cnlpbmcgdG8gZGV0ZXJtaW5lIHRoZSBjYXVzZS4g
DQo+IA0KPiBhcmNoL3Bvd2VycGMva2VybmVsL3NldHVwXzMyLmMNCj4gDQo+IHZvaWQgX19pbml0
IHNldHVwX2FyY2goY2hhciAqKmNtZGxpbmVfcCkNCj4gDQo+IHsNCj4gDQo+ICAgICAgICAgKmNt
ZGxpbmVfcCA9IGNtZF9saW5lOw0KPiANCj4gICAgICAgICAvKiBzbyB1ZGVsYXkgZG9lcyBzb21l
dGhpbmcgc2Vuc2libGUsIGFzc3VtZSA8PSAxMDAwIGJvZ29taXBzDQo+ICovDQo+IA0KPiAgICAg
ICAgIGxvb3BzX3Blcl9qaWZmeSA9IDUwMDAwMDAwMCAvIEhaOw0KPiANCj4gICAgICAgICB1bmZs
YXR0ZW5fZGV2aWNlX3RyZWUoKTsNCj4gDQo+ICAgICAgICAgLyogVU5GTEFUVEVORUQgREVWSUNF
IFRSRUUgSVMgQ09SUlVQVEVEIFNPTUVUSU1FUyBIRVJFICovDQoNCl9JbiB3aGF0IHdheV8gaXMg
aXQgY29ycnVwdGVkPyBCYWQgdHJlZSBzdHJ1Y3R1cmU/IEJvZ3VzIG5vZGUvcHJvcGVydHkNCnZh
bHVlcywgbmFtZXMgZXRjLg0KDQpjaGVlcnMNCg==

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Device Tree Corrupted after unflatten_device_tree()
  2009-10-21 17:43   ` Lixin Yao
@ 2009-10-21 22:10     ` David Gibson
  2009-10-22 18:14       ` Lixin Yao
  0 siblings, 1 reply; 5+ messages in thread
From: David Gibson @ 2009-10-21 22:10 UTC (permalink / raw)
  To: Lixin Yao; +Cc: linuxppc-dev

On Wed, Oct 21, 2009 at 10:43:55AM -0700, Lixin Yao wrote:
> When corrupted, curtain blocks of 64 bytes are messed up.
> This is a screen dump of a good unflattened device at beginning:

[snip]
> When corrupted, it becomes following, note the 64 bock at 0x03ffdf00
> is messed up. And this kind of corruptions occur several times

[snip]
> 03ffdf00 : ffffffff ffff000c db055be0 08060001  ..........[.....
> 03ffdf10 : 08000604 0001000c db055be0 ac141001  ..........[.....
> 03ffdf20 : 00000000 0000ac14 10530000 10530000  .........S...S..
> 03ffdf30 : 08000604 0001000c 36681bfe f874c01e  ........6h...t..

Uh, oh.  That looks like a broadcast ethernet packet (ARP,
specifically).  Looks like a network device used by the firmware
hasn't been quiesced properly before booting the kernel and is DMAing
stuff straight on top of kernel memory.  You'll probably need a hook
in the bootwrapper to shut down the ethernet.

There are some examples of this in arch/powerpc/boot already - look
for ibm4xx_quiesce_eth().

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: Device Tree Corrupted after unflatten_device_tree()
  2009-10-21 22:10     ` David Gibson
@ 2009-10-22 18:14       ` Lixin Yao
  0 siblings, 0 replies; 5+ messages in thread
From: Lixin Yao @ 2009-10-22 18:14 UTC (permalink / raw)
  To: David Gibson; +Cc: linuxppc-dev

Hi, David/Michael,

Great great finding! I added halting FEC (the Ethernet controller in
MPC866)=20
in platforms_fixups() and the problem disappears.

Thank you very much!

Lixin

-----Original Message-----
From: David Gibson [mailto:david@gibson.dropbear.id.au]=20
Sent: Wednesday, October 21, 2009 6:11 PM
To: Lixin Yao
Cc: michael@ellerman.id.au; linuxppc-dev@lists.ozlabs.org
Subject: Re: Device Tree Corrupted after unflatten_device_tree()

On Wed, Oct 21, 2009 at 10:43:55AM -0700, Lixin Yao wrote:
> When corrupted, curtain blocks of 64 bytes are messed up.
> This is a screen dump of a good unflattened device at beginning:

[snip]
> When corrupted, it becomes following, note the 64 bock at 0x03ffdf00
> is messed up. And this kind of corruptions occur several times

[snip]
> 03ffdf00 : ffffffff ffff000c db055be0 08060001  ..........[.....
> 03ffdf10 : 08000604 0001000c db055be0 ac141001  ..........[.....
> 03ffdf20 : 00000000 0000ac14 10530000 10530000  .........S...S..
> 03ffdf30 : 08000604 0001000c 36681bfe f874c01e  ........6h...t..

Uh, oh.  That looks like a broadcast ethernet packet (ARP,
specifically).  Looks like a network device used by the firmware
hasn't been quiesced properly before booting the kernel and is DMAing
stuff straight on top of kernel memory.  You'll probably need a hook
in the bootwrapper to shut down the ethernet.

There are some examples of this in arch/powerpc/boot already - look
for ibm4xx_quiesce_eth().

--=20
David Gibson			| I'll have my music baroque, and my
code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_
_other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-10-22 18:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-20 16:10 Device Tree Corrupted after unflatten_device_tree() Lixin Yao
2009-10-20 23:01 ` Michael Ellerman
2009-10-21 17:43   ` Lixin Yao
2009-10-21 22:10     ` David Gibson
2009-10-22 18:14       ` Lixin Yao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).