Re: sparc32 git tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 17 Jul 2006, Bob Breuer wrote:

> Ray,
> 
> I think I've found the core problem with the prom properties, and a
> potential problem with the zilog initialization.  Could you try the
> attached patch and let me know if it works for you?
> 
> Thanks,
> Bob

Your patch caused kobject_add to succeed on all duplicate prom items
during the initial tree traversal (55 duplicate or dependent items).

Thank You  :)

I am not able to check the serial port portion yet, mine blows up on
the sbus initialization.

Since it's probably related I have attached the ksymoops output

sbus0 suceeds along with it's 3 dma channels.
prom item:
/io-unit@f,e0200000/sbi@0,0

sbus1 dies
prom item:
/io-unit@f,e1200000/sbi@0,0

(this is sun4d so "sbi" == sbus)
kobject_add failed for sbi@0,0 with -EEXIST, don't try to register
things with the same name in the same directory.

This is followed by the oops which I believe provides more accurate
address info then the trace following the message.

It's probably a sun4d thing, I'll dig.

Thanx
  Ray

ksymoops 2.4.1 on sparc 2.4.32.  Options used
     -v /sparc.d2/sparc-2.6/arch/sparc/boot/image (specified)
     -K (specified)
     -L (specified)
     -O (specified)
     -M (specified)

Reading Oops report from the terminal
Unable to handle kernel NULL pointer dereference
tsk->{mm,active_mm}->context = ffffffff
tsk->{mm,active_mm}->pgd = fc000000
swapper(1): Oops [#1]
PSR: 408000c1 PC: f00bc8ec NPC: f00bc8f0 Y: 03800000    Not tainted
Using defaults from ksymoops -t elf32-sparc -a sparc
PC: <create_dir+0xc/0x21c>
Caller[f00bcb58]: sysfs_create_dir+0x38/0xa0
Caller[f01041f0]: create_dir+0x24/0x60
Caller[f0104438]: kobject_add+0x5c/0x14c
Caller[f013588c]: device_add+0x84/0x2f8
Caller[f0020688]: of_device_register+0x28/0x80
Caller[f0258b48]: sunzilog_register_serio+0x30/0xc8
Caller[f0259028]: topology_remove_dev+0x4/0x1c
Caller[f0259110]: sparc_lance_probe_one+0x34/0x4e0
Caller[f0242224]: _etext+0x63490/0x64264
Caller[f0014104]: init+0x60/0x19c
Caller[f00195bc]: kernel_thread+0x3c/0x50
Caller[f001401c]: rest_init+0x18/0x34
Caller[f02421b4]: _etext+0x63420/0x64264
Caller[f02417c8]: _etext+0x62a34/0x64264
Caller[00000000]: 0x8
Instruction DUMP: 81c3e008  90102000  9de3bf98 <d006600c> a0100018  40048659  90022074  40014624  9010001a

>>PC;  f00bc8ec <create_dir+4/21c>   <=====
Trace; f00bcb58 <sysfs_create_dir+30/a0>
Trace; f01041f0 <create_dir+1c/60>
Trace; f0104438 <kobject_add+54/14c>
Trace; f013588c <device_add+7c/2f8>
Trace; f0020688 <of_device_register+20/80>
Trace; f0258b48 <fill_sbus_device+114/140>
Trace; f0259028 <build_one_sbus+1a8/204>
Trace; f0259110 <sbus_init+8c/d0>
Trace; f0242224 <do_initcalls+48/168>
Trace; f0014104 <init+58/19c>
Trace; f00195bc <kernel_thread+34/50>
Trace; f001401c <rest_init+10/34>
Trace; f02421b4 <start_kernel+230/244>
Trace; f02417c8 <sun4c_continue_boot+324/334>
Trace; 00000000 Before first symbol
Code;  f00bc8e0 <init_symlink+c/14>
00000000 <_PC>:
Code;  f00bc8e0 <init_symlink+c/14>
   0:   81 c3 e0 08       retl 
Code;  f00bc8e4 <init_symlink+10/14>
   4:   90 10 20 00       clr  %o0
Code;  f00bc8e8 <create_dir+0/21c>
   8:   9d e3 bf 98       save  %sp, -104, %sp
Code;  f00bc8ec <create_dir+4/21c>   <=====
   c:   d0 06 60 0c       ld  [ %i1 + 0xc ], %o0   <=====
Code;  f00bc8f0 <create_dir+8/21c>
  10:   a0 10 00 18       mov  %i0, %l0
Code;  f00bc8f4 <create_dir+c/21c>
  14:   40 04 86 59       call  121978 <_PC+0x121978>
Code;  f00bc8f8 <create_dir+10/21c>
  18:   90 02 20 74       add  %o0, 0x74, %o0
Code;  f00bc8fc <create_dir+14/21c>
  1c:   40 01 46 24       call  518ac <_PC+0x518ac>
Code;  f00bc900 <create_dir+18/21c>
  20:   90 10 00 1a       mov  %i2, %o0


[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux