Re: [Itifg-tech] itifg-8.4.0-0 released
Brought to you by:
mastein1
|
From: Fabien S. <fsp...@ir...> - 2008-03-04 13:48:26
|
I have just added an other printf like:
for (frame = 0; frame < frames; frame++)
{
ITI_PRINT1(brd->i->osp, " frame: %d\n", frame);
iti_printd (brd->i->osp, "D\n");
dmesg gives
itifg8[D0]: > iti_intr: 0x20400 time: 60046us
itifg8[D0]: -> acq_intr: 0x0
itifg8[D0]: opmode: IDLE
itifg8[D0]: -> dma_intr
itifg8[D0]: opmode: IDLE
itifg8[D0]: iti_intr: not all irqs recognized.
itifg8[D0]: (0x400)!
itifg8[D0]: < iti_intr
itifg8[D0]: > iti_fill_info
itifg8[D0]: inf mbuf size 160
itifg8[D0]: inf mbuf k-alloc 0xc6ec8f00
itifg8[D0]: inf sbuf size 160
itifg8[D0]: inf sbuf k-alloc 0xc6ec8c00
itifg8[D0]: inf fbuf size 320
itifg8[D0]: inf fbuf k-alloc 0xdcdbce00
itifg8[D0]: inf obuf size 160
itifg8[D0]: inf obuf k-alloc 0xc3b89b40
itifg8[D0]: inf fpga size 40
itifg8[D0]: inf fpga k-alloc 0xd635f1c0
itifg8[D0]: inf fpga k-free 0xd635f1c0
itifg8[D0]: inf mbuf k-free 0xc6ec8f00
itifg8[D0]: inf sbuf k-free 0xc6ec8c00
itifg8[D0]: inf fbuf k-free 0xdcdbce00
itifg8[D0]: inf obuf k-free 0xc3b89b40
itifg8[D0]: < iti_fill_info
itifg8[D0]: > iti_fill_info
itifg8[D0]: inf mbuf size 160
itifg8[D0]: inf mbuf k-alloc 0xc3b89b40
itifg8[D0]: inf sbuf size 160
itifg8[D0]: inf sbuf k-alloc 0xc6ec8b40
itifg8[D0]: inf fbuf size 320
itifg8[D0]: inf fbuf k-alloc 0xda8da400
itifg8[D0]: inf obuf size 160
itifg8[D0]: inf obuf k-alloc 0xc6ec8240
itifg8[D0]: inf fpga size 40
itifg8[D0]: inf fpga k-alloc 0xd635f1c0
itifg8[D0]: inf fpga k-free 0xd635f1c0
itifg8[D0]: inf mbuf k-free 0xc3b89b40
itifg8[D0]: inf sbuf k-free 0xc6ec8b40
itifg8[D0]: inf fbuf k-free 0xda8da400
itifg8[D0]: inf obuf k-free 0xc6ec8240
itifg8[D0]: < iti_fill_info
itifg8[D0]: > iti_open: flags 0x1402 (RDWR)
itifg8[D0]: -> dma_open
itifg8[D0]: <- dma_open
itifg8[D0]: > iti_irq_enable
itifg8[D0]: irq_enable end (40000)
itifg8[D0]: < iti_irq_enable
itifg8[D0]: op assume: IDLE
itifg8[D0]: op accept: OPEN
itifg8[D0]: opmode: IDLE
itifg8[D0]: ACQ ist linked
itifg8[D0]: -> acq_open
itifg8[D0]: <- acq_open
itifg8[D0]: > iti_irq_enable
itifg8[D0]: < iti_irq_enable
itifg8[D0]: op assume: IDLE
itifg8[D0]: op accept: OPEN
itifg8[D0]: rlock:1 - wlock:1
itifg8[D0]: < iti_open: ok
itifg8[D0]: > iti_ioctl: GET_CAMCNF
itifg8[D0]: inparam NULL
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: SET_CAMCNF
itifg8[D0]: outparam NULL
itifg8[D0]: opmode: OPEN
itifg8[D0]: > amcmp_config
itifg8[D0]: 1
itifg8[D0]: 2
itifg8[D0]: 3
itifg8[D0]: 4
itifg8[D0]: 5
itifg8[D0]: 6
itifg8[D0]: 7
itifg8[D0]: 8
itifg8[D0]: 9
itifg8[D0]: 10
itifg8[D0]: 11
itifg8[D0]: 12
itifg8[D0]: 13
itifg8[D0]: 14
itifg8[D0]: 15
itifg8[D0]: 16
itifg8[D0]: 17
itifg8[D0]: 18
itifg8[D0]: 20
itifg8[D0]: 21
itifg8[D0]: 22
itifg8[D0]: 23
itifg8[D0]: modid 0xe038
itifg8[D0]: mxctl 0xe004
itifg8[D0]: scl 0xe03d
itifg8[D0]: sda 0xe001
itifg8[D0]: nptrig 0xe028
itifg8[D0]: npswtrig 0xe008
itifg8[D0]: bt829a : status 0x20
itifg8[D0]: bt829a : iform 0x58
itifg8[D0]: bt829a : tdec 0x00
itifg8[D0]: bt829a : crop 0x23
itifg8[D0]: bt829a : vdly_lo 0x1e
itifg8[D0]: bt829a : vact_lo 0x40
itifg8[D0]: bt829a : hdly_lo 0xa0
itifg8[D0]: bt829a : hact_lo 0x00
itifg8[D0]: bt829a : hscal_hi 0x03
itifg8[D0]: bt829a : hscal_lo 0x3c
itifg8[D0]: > iti_intr: 0x20400 time: 94048us
itifg8[D0]: -> acq_intr: 0x0
itifg8[D0]: opmode: OPEN
itifg8[D0]: -> dma_intr
itifg8[D0]: opmode: OPEN
itifg8[D0]: iti_intr: not all irqs recognized.
itifg8[D0]: (0x400)!
itifg8[D0]: < iti_intr
itifg8[D0]: bt829a : bright 0x10
itifg8[D0]: bt829a : control 0x34
itifg8[D0]: bt829a : con_lo 0x3d
itifg8[D0]: bt829a : sat_u_lo 0xfe
itifg8[D0]: bt829a : sat_v_lo 0xb4
itifg8[D0]: bt829a : hue 0x00
itifg8[D0]: bt829a : scloop 0x40
itifg8[D0]: bt829a : reserved 0xcf
itifg8[D0]: bt829a : oform 0x86
itifg8[D0]: bt829a : vscale_hi 0x60
itifg8[D0]: bt829a : vscale_lo 0x00
itifg8[D0]: bt829a : reserved 0x01
itifg8[D0]: bt829a : reserved 0x00
itifg8[D0]: bt829a : idcode 0xe8
itifg8[D0]: bt829a : adly 0x7f
itifg8[D0]: bt829a : bdly 0x72
itifg8[D0]: bt829a : adc 0x80
itifg8[D0]: bt829a : vtc 0x40
itifg8[D0]: bt829a : reserved 0xc0
itifg8[D0]: bt829a : reserved 0x00
itifg8[D0]: bt829a : reserved 0x7f
itifg8[D0]: bt829a : sreset 0x70
itifg8[D0]: < amcmp_config
itifg8[D0]: -> acq_startup
itifg8[D0]: -> acq_fmt_init
itifg8[D0]: width: 768, height: 576
itifg8[D0]: htaps: 1, vtaps : 1
itifg8[D0]: hdec : 0, vdec : 0
itifg8[D0]: bpp: 16
itifg8[D0]: ilace: TRUE
itifg8[D0]: line size: 1536
itifg8[D0]: frame size: 884736
itifg8[D0]: <- acq_fmt_init
itifg8[D0]: <- acq_startup
itifg8[D0]: -> dma_startup
itifg8[D0]: -> dma_fmt_init
itifg8[D0]: frame size: 888832
itifg8[D0]: trail size: 4096
itifg8[D0]: <- dma_fmt_init
itifg8[D0]: <- dma_startup
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: SET_NORM_TO8
itifg8[D0]: opmode: OPEN
itifg8[D0]: opmode: OPEN
itifg8[D0]: -> acq_fmt_init
itifg8[D0]: width: 768, height: 576
itifg8[D0]: htaps: 1, vtaps : 1
itifg8[D0]: hdec : 0, vdec : 0
itifg8[D0]: bpp: 8
itifg8[D0]: ilace: TRUE
itifg8[D0]: line size: 768
itifg8[D0]: frame size: 442368
itifg8[D0]: <- acq_fmt_init
itifg8[D0]: -> dma_fmt_init
itifg8[D0]: frame size: 446464
itifg8[D0]: trail size: 4096
itifg8[D0]: <- dma_fmt_init
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: SET_HDEC
itifg8[D0]: outparam NULL
itifg8[D0]: opmode: OPEN
itifg8[D0]: opmode: OPEN
itifg8[D0]: horiz. decimation: 2
itifg8[D0]: -> acq_fmt_init
itifg8[D0]: width: 384, height: 576
itifg8[D0]: htaps: 1, vtaps : 1
itifg8[D0]: hdec : 1, vdec : 0
itifg8[D0]: bpp: 8
itifg8[D0]: ilace: TRUE
itifg8[D0]: line size: 384
itifg8[D0]: frame size: 221184
itifg8[D0]: <- acq_fmt_init
itifg8[D0]: -> dma_fmt_init
itifg8[D0]: frame size: 225280
itifg8[D0]: trail size: 4096
itifg8[D0]: <- dma_fmt_init
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: SET_VDEC
itifg8[D0]: outparam NULL
itifg8[D0]: opmode: OPEN
itifg8[D0]: opmode: OPEN
itifg8[D0]: vert. decimation: 2
itifg8[D0]: -> acq_fmt_init
itifg8[D0]: width: 384, height: 288
itifg8[D0]: htaps: 1, vtaps : 1
itifg8[D0]: hdec : 1, vdec : 1
itifg8[D0]: bpp: 8
itifg8[D0]: ilace: TRUE
itifg8[D0]: line size: 384
itifg8[D0]: frame size: 110592
itifg8[D0]: <- acq_fmt_init
itifg8[D0]: -> dma_fmt_init
itifg8[D0]: frame size: 114688
itifg8[D0]: trail size: 4096
itifg8[D0]: <- dma_fmt_init
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: SET_CAMERA
itifg8[D0]: outparam NULL
itifg8[D0]: opmode: OPEN
itifg8[D0]: opmode: OPEN
itifg8[D0]: camera: 0
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: SET_TIMEOUT
itifg8[D0]: outparam NULL
itifg8[D0]: timeout: 1000ms (HZ=1000)
itifg8[D0]: expire: 1250
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: GET_WIDTH
itifg8[D0]: inparam NULL
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: GET_HEIGHT
itifg8[D0]: inparam NULL
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: GET_DEPTH
itifg8[D0]: inparam NULL
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: GET_RAWSIZE
itifg8[D0]: inparam NULL
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_ioctl: GET_PAGEDSIZE
itifg8[D0]: inparam NULL
itifg8[D0]: < iti_ioctl: ok
itifg8[D0]: > iti_mmap: 4194304 byte(s)
itifg8[D0]: -> dma_mmap: 1024 pages
itifg8[D0]: buf init: 4194304 (SDMA)
itifg8[D0]: dma-area alloc 0xe4501000
itifg8[D0]: buf alloc: 0xe4501000
itifg8[D0]: area not locked, do it.
itifg8[D0]: > iti_intr: 0x20400 time: 127419us
itifg8[D0]: -> acq_intr: 0x0
itifg8[D0]: opmode: OPEN
itifg8[D0]: -> dma_intr
itifg8[D0]: opmode: OPEN
itifg8[D0]: iti_intr: not all irqs recognized.
itifg8[D0]: (0x400)!
itifg8[D0]: < iti_intr
itifg8[D0]: v:0xe4501000->b:0x101da000
itifg8[D0]: v:0xe4701000->b:0x1073c000
itifg8[D0]: v:0xe4900000->b:0x109cb000
itifg8[D0]: <- dma_mmap
itifg8[D0]: < iti_mmap: 0xe4501000
itifg8[DX]: t:0xb7f66000 4194304
itifg8[DX]: f:0xe4900000
itifg8[DX]: t:0xb7d66000 2097152
itifg8[DX]: f:0xe4700000
itifg8[DX]: t:0xb7b67000 4096
itifg8[DX]: f:0xe4501000
itifg8[D0]: > iti_lseek: to (+-)114688, SEEKEND
itifg8[D0]: -> dma_lseek: APPEND.
itifg8[D0]: op assume: OPEN
itifg8[D0]: op accept: WORK
itifg8[D0]: buf reset: 0by (0it)
itifg8[D0]: buf adjust: 0by (0it)
itifg8[D0]: buf asize: 4128768by (36it)
itifg8[D0]: buf isize: 114688by
itifg8[D0]: 27 norm pages(s).
itifg8[D0]: 27 last pages(s).
itifg8[D0]: buf want: 114688by (1it)
itifg8[D0]: <- dma_lseek
itifg8[D0]: -> acq_lseek: APPEND.
itifg8[D0]: op assume: OPEN
itifg8[D0]: op accept: WORK
itifg8[D0]: buf reset: 0by (0it)
itifg8[D0]: buf adjust: 0by (0it)
itifg8[D0]: buf isize: 110592by
itifg8[D0]: frame size 110592
itifg8[D0]: -> 1 frame(s).
itifg8[D0]: block size 0 (whole frames)
itifg8[D0]: -> 1 block(s).
itifg8[D0]: => icp_src_init
itifg8[D0]: int for append mode
itifg8[D0]: base addr 0x0
itifg8[D0]: line_size 384
itifg8[D0]: frame_size 110592
itifg8[D0]: A
itifg8[D0]: B
itifg8[D0]: C
itifg8[D0]: frame: 0
itifg8[D0]: D
BUG: unable to handle kernel NULL pointer dereference at virtual address
00000010
printing eip: e0ec3e42 *pde = 06772067 *pte = 00000000
Oops: 0002 [#5] SMP
Modules linked in: itifg8(U) nvidia(P)(U) nfs lockd nfs_acl sunrpc
rfcomm l2cap bluetooth autofs4 ipv6 dm_multipath dm_mod snd_intel8x0
snd_ac97_codec ac97_bus snd_seq_dummy snd_seq_oss snd_seq_midi_event
snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss snd_pcm snd_timer
firewire_ohci snd firewire_core e1000 button soundcore iTCO_wdt
crc_itu_t parport_pc iTCO_vendor_support parport i2c_i801 serio_raw
snd_page_alloc i2c_core joydev dcdbas floppy sr_mod sg cdrom ata_piix
ata_generic libata sd_mod scsi_mod ext3 jbd mbcache uhci_hcd ohci_hcd
ehci_hcd
CPU: 0
EIP: 0060:[<e0ec3e42>] Tainted: P D VLI
EFLAGS: 00210246 (2.6.23.15-137.fabien.fc8 #1)
EIP is at icp_src_init+0x1b2/0x310 [itifg8]
eax: 00000000 ebx: cb3f40dc ecx: 00000010 edx: 00000010
esi: 00000000 edi: 00000000 ebp: d881cf14 esp: dda75ef8
ds: 007b es: 007b fs: 00d8 gs: 0033 ss: 0068
Process test_itifg (pid: 14280, ti=dda75000 task=c64f2610 task.ti=dda75000)
Stack: dea98000 e0eea714 dea98000 e0eea707 00000000 01a98000 00000001
e0ec3c90
d881cf14 d881cf38 d881cf00 e0ebeada 00000000 00000001 e0ebfa2e
0001b000
00000400 000100f8 0001c000 00010400 00200000 00000000 00000000
cb3f4000
Call Trace:
[<e0ec3c90>] icp_src_init+0x0/0x310 [itifg8]
[<e0ebeada>] acq_lseek+0x42a/0x620 [itifg8]
[<e0ebfa2e>] dma_lseek+0x8e/0x2f0 [itifg8]
[<e0ebbd9f>] iti_lseek+0x14f/0x230 [itifg8]
[<e0ee42d0>] iti_os_llseek+0x0/0x20 [itifg8]
[<e0ee42e8>] iti_os_llseek+0x18/0x20 [itifg8]
[<c0480cd6>] vfs_llseek+0x35/0x39
[<c0481d2d>] sys_lseek+0x3c/0x66
[<c040518a>] syscall_call+0x7/0xb
=======================
Code: 02 00 68 14 a7 ee e0 8b 03 8b 90 10 01 00 00 52 e8 c4 09 02 00 8b
13 89 f1 8b 42 2c 8b 52 30 01 c1 89 f8 0f af 45 20 03 44 24 30 <89> 04
32 89 01 68 17 a7 ee e0 8b 03 8b 80 10 01 00 00 50 e8 96
EIP: [<e0ec3e42>] icp_src_init+0x1b2/0x310 [itifg8] SS:ESP 0068:dda75ef8
itifg8[D0]: > iti_close: flags 0x1402
itifg8[D0]: rlock:0 - wlock:0
itifg8[D0]: del timer
itifg8[D0]: > iti_irq_disable
itifg8[D0]: < iti_irq_disable
itifg8[D0]: op assume: XXXX
itifg8[D0]: op accept: IDLE
itifg8[D0]: -> acq_close
itifg8[D0]: buf reset: 0by (0it)
itifg8[D0]: buf adjust: 0by (0it)
itifg8[D0]: <- acq_close
itifg8[D0]: del timer
itifg8[D0]: > iti_irq_disable
itifg8[D0]: < iti_irq_disable
itifg8[D0]: op assume: XXXX
itifg8[D0]: op accept: IDLE
itifg8[D0]: -> dma_close
itifg8[D0]: dma stop
itifg8[D0]: -> dma_munmap
itifg8[D0]: area is locked, unlock it.
itifg8[D0]: buf free: 0xe4501000
itifg8[D0]: dma-area free 0xe4501000
itifg8[D0]: buf fini
itifg8[D0]: <- dma_munmap
itifg8[D0]: <- dma_close
itifg8[D0]: < iti_close: ok
Fabien
M....@go... a écrit :
> Hello Fabien,
>
> the crash is somehere in src/board/icpcoIface.c:icp_src_init().
> I have added some debug output, that we can see more:
>
> static int
> icp_src_init (iti_brd_t *brd, struct iti_fmt_t *fmt, int frames,
> off_t base, bool append)
> {
> int error;
>
> int frame;
>
> ITI_PRINT1(brd->i->osp, "=> icp_src_init\n");
>
> if (append) ITI_PRINT1(brd->i->osp, " int for append mode\n");
> brd->i->append = append;
>
> ITI_PRINT1(brd->i->osp, " base addr %#lx\n", base);
> ITI_PRINT1(brd->i->osp, " line_size " SIZE_F "\n", fmt->line_size);
> ITI_PRINT1(brd->i->osp, " frame_size " SIZE_F "\n", fmt->frame_size);
>
> /* set source values */
> iti_printd (brd->i->osp, "A\n");
> if ((error = cr_set_pitch (brd->i, fmt->line_size)))
> {
> iti_error (error, "cr_set_pitch");
> return -EIO;
> }
> iti_printd (brd->i->osp, "B\n");
> if ((error = cr_set_aoix (brd->i, fmt->line_size)))
> {
> iti_error (error, "cr_set_aoix");
> return -EIO;
> }
>
> iti_printd (brd->i->osp, "C\n");
> for (frame = 0; frame < frames; frame++)
> {
> iti_printd (brd->i->osp, "D\n");
> brd->i->dma1stfld[frame] = brd->i->dma2ndfld[frame] =
> base + frame * fmt->frame_size;
> iti_printd (brd->i->osp, "E\n");
>
> if (fmt->ilace && !fmt->vdec)
> {
> iti_printd (brd->i->osp, "F\n");
> if ((error = cr_set_bmilace (brd->i, CR_ENABLE)))
> {
> iti_error (error, "cr_set_bmilace");
> return -EIO;
> }
> iti_printd (brd->i->osp, "G\n");
> brd->i->dma2ndfld[frame] += fmt->frame_size / 2;
> iti_printd (brd->i->osp, "H\n");
> }
> else
> {
> iti_printd (brd->i->osp, "I\n");
> if ((error = cr_set_bmilace (brd->i, CR_DISABLE)))
> {
> iti_error (error, "cr_set_bmilace");
> return -EIO;
> }
> iti_printd (brd->i->osp, "J\n");
> }
>
> iti_printd (brd->i->osp, "K\n");
> /* for this only use one on-board memory frame */
> if (!append) break;
> }
>
> iti_printd (brd->i->osp, "L\n");
> cr_set_bmsf (brd->i, brd->i->dma1stfld[0]);
> iti_printd (brd->i->osp, "M\n");
> cr_set_bmss (brd->i, brd->i->dma2ndfld[0]);
> iti_printd (brd->i->osp, "N\n");
>
> ITI_PRINT1(brd->i->osp, "<= icp_src_init\n");
> return OK;
> }
>
> Please recompile and run again.
>
> matthias
> _________________________________________________
> Matthias Stein,
> GOM Gesellschaft fuer Optische Messtechnik mbH,
> Mittelweg 7-8, 38106 Braunschweig, Germany
> E-mail: M....@go..., Internet: http://www.gom.com
> Tel.: +49 (0)531 39029-0, Fax: +49 (0)531 39029-15
> Amtsgericht Handelsregister Braunschweig, HRB-Nr.: 3131
> Geschaeftsfuehrer: Dr.-Ing. K. Galanulis, Dr.-Ing. D. Winter
>
>
> This e-mail is confidential. If you have received it in error, you are on
> notice of its status.
> Please notify us immediately by reply e-mail and delete this message from
> your system.
> Please do not copy it or use it for any purposes, or disclose its contents
> to any other person;
> to do so could be a breach of confidence.
> Thank you for your co-operation.
>
>
--
Fabien Spindler, Equipe Lagadic, Irisa - Inria
Campus universitaire de Beaulieu 35042 Rennes cedex France
Tel: +33 2.99.84.75.10, Fax: +33 2.99.84.71.71
E-mail: Fab...@ir..., web: http://www.irisa.fr/lagadic
|