Am Dienstag, 10. Februar 2009 schrieb Jan Kandziora:
> Hello Paul (and others),
>
I found another bug with I2C.
% package require ow
% OW::init /dev/i2c-6
% OW::set_error_level 9
% OW::set_error_print 2
% OW::get alarm
gives
DEBUG: FS_OWQ_create of alarm
CALL: PARSENAME path=[alarm]
DEBUG: In FS_dir(alarm)
CALL: DIRECTORY path=alarm
DEBUG: ALARM directory
DEBUG: Selecting a path (and device) path=alarm SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DS2482 read status ok
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=7
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: FS_alarmdir BUS_first_alarm = -19
DEBUG: Return from ALARM is 0
DEBUG: FS_dir_both out ret=0
Speicherzugriffsfehler
(Segmentation fault)
Again, I'm able to reproduce this only for I2C adapter, not DS9490 or DS9097U.
It's irregardless whether there is any alarmed chip or not. I can reproduce
it with owserver, too:
$ /opt/owfs/bin/owserver --error_level=9 --error_print=2 --foreground /dev/i2c-6
gives the attached log whenever I'm reading "alarm".
Kind regards
Jan
--
"When you say 'I wrote a program that crashed Windows', people just
stare at you blankly and say 'Hey, I got those with the system,
*for free*'."
-- Linus Torvalds
CONNECT: Found an i2c device at /dev/i2c-6 address 24
DEBUG: DS2482 read status ok
CONNECT: i2c device at /dev/i2c-6 address 24 appears to be DS2482-x00
CONNECT: DS2482-800 (Eight channels). DEBUG: main_threadid = 3083720384
DEBUG: ServerProcessOut = 3083332496
DEBUG: Wait for output device 0 to setup.
DEBUG: OW_Announce: end
DEBUG: Output device setup is done. index=0
DEBUG: ServerProcessAccept [3083332496] try lock 0
DEBUG: ServerProcessAccept [3083332496] locked 0
DEBUG: Output device 0 setup done.
DEBUG: ServerProcessAccept [3083332496] accept 0 fd=9
DEBUG: ServerProcessAcceptUnlock: unlock 3083332496
DEBUG: ServerProcessAcceptUnlock: unlock 3083332496 done
DEBUG: ServerProcessAccept [3083332496] unlock 0
DEBUG: NetRead attempt 24 bytes Time:(10,0)
Byte buffer NETREAD, length=24
--000: 00 00 00 00 00 00 00 09 00 00 00 04 00 00 01 05
--016: 00 00 00 00 00 00 00 00
<........................>
DEBUG: tcp_read n=24 nleft=0 n-nleft=24
DEBUG: FromClient payload=9 size=0 type=4 sg=0x105 offset=0
DEBUG: FromClient (no servermessage) payload=9 size=0 type=4 sg=0x105 offset=0
DEBUG: NetRead attempt 9 bytes Time:(10,0)
Byte buffer NETREAD, length=9
--000: 75 6E 63 61 63 68 65 64 00
<uncached.>
DEBUG: tcp_read n=9 nleft=0 n-nleft=9
DEBUG: Persistence requested
CALL: DataHandler: parse path=uncached
DEBUG: FS_OWQ_create of uncached
CALL: PARSENAME path=[uncached]
CALL: Directory message (one at a time)
CALL: DirHandler: pn->path=uncached
DEBUG: OWSERVER SpecifiedBus=0 path=uncached
DEBUG: In FS_dir_remote(uncached)
CALL: DIRECTORY path=uncached
DEBUG: Start of directory path=uncached device=00 00 00 00 00 00 00 00
DEBUG: BUS_first: Empty bus -- no presence pulse
DEBUG: Selecting a path (and device) path=uncached SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DEBUG: DS2482 read status ok
ServerProcessAccept = 3083332496 CLOSING
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: ServerProcessAccept [3083332496] try lock 0
DEBUG: ServerProcessAccept [3083332496] locked 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=0
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: Start of directory path=uncached device=00 00 00 00 00 00 00 00
DEBUG: BUS_first: Empty bus -- no presence pulse
DEBUG: Selecting a path (and device) path=uncached SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DS2482 read status ok
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=1
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: Start of directory path=uncached device=00 00 00 00 00 00 00 00
DEBUG: BUS_first: Empty bus -- no presence pulse
DEBUG: Selecting a path (and device) path=uncached SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DS2482 read status ok
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=2
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: Start of directory path=uncached device=00 00 00 00 00 00 00 00
DEBUG: BUS_first: Empty bus -- no presence pulse
DEBUG: Selecting a path (and device) path=uncached SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DS2482 read status ok
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=3
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: Start of directory path=uncached device=00 00 00 00 00 00 00 00
DEBUG: BUS_first: Empty bus -- no presence pulse
DEBUG: Selecting a path (and device) path=uncached SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DS2482 read status ok
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=4
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: Start of directory path=uncached device=00 00 00 00 00 00 00 00
DEBUG: BUS_first: Empty bus -- no presence pulse
DEBUG: Selecting a path (and device) path=uncached SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DS2482 read status ok
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=5
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: Start of directory path=uncached device=00 00 00 00 00 00 00 00
DEBUG: BUS_first: Empty bus -- no presence pulse
DEBUG: Selecting a path (and device) path=uncached SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DS2482 read status ok
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=6
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: Start of directory path=uncached device=00 00 00 00 00 00 00 00
DEBUG: BUS_first: Empty bus -- no presence pulse
DEBUG: Selecting a path (and device) path=uncached SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: Clearing root branch
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: DS2482 read status ok
DEBUG: DS2482 read status ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=7
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: FS_dir_both out ret=0
DEBUG: FS_OWQ_destroy of uncached
DEBUG: ParsedName_destroy uncached
DEBUG: DataHandler: FS_ParsedName_destroy done
DEBUG: DataHandler: cm.ret=0
DEBUG: ToClient payload=0 size=0, ret=0, sg=0x105 offset=0
Writev byte buffer ionr=1/1 length=24
--000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 05
--016: 00 00 00 00 00 00 00 00
<........................>
DEBUG: DataHandler: done
DEBUG: OWSERVER tcp connection persistence -- reusing connection now.
DEBUG: NetRead attempt 24 bytes Time:(10,0)
Byte buffer NETREAD, length=24
--000: 00 00 00 00 00 00 00 06 00 00 00 04 00 00 01 05
--016: 00 00 00 00 00 00 00 00
<........................>
DEBUG: tcp_read n=24 nleft=0 n-nleft=24
DEBUG: FromClient payload=6 size=0 type=4 sg=0x105 offset=0
DEBUG: FromClient (no servermessage) payload=6 size=0 type=4 sg=0x105 offset=0
DEBUG: NetRead attempt 6 bytes Time:(10,0)
Byte buffer NETREAD, length=6
--000: 61 6C 61 72 6D 00
<alarm.>
DEBUG: tcp_read n=6 nleft=0 n-nleft=6
DEBUG: Persistence requested
CALL: DataHandler: parse path=alarm
DEBUG: FS_OWQ_create of alarm
CALL: PARSENAME path=[alarm]
CALL: Directory message (one at a time)
CALL: DirHandler: pn->path=alarm
DEBUG: OWSERVER SpecifiedBus=0 path=alarm
DEBUG: In FS_dir_remote(alarm)
CALL: DIRECTORY path=alarm
DEBUG: ALARM directory
DEBUG: Selecting a path (and device) path=alarm SN=00 00 00 00 00 00 00 00
last path=00 00 00 00 00 00 00 00
DEBUG: DS2482 read status ok
DEBUG: DS2482 Reset
DEBUG: BUS_next return = -19 | 00 00 00 00 00 00 00 00
DEBUG: Cache_Add_Device 00 00 00 00 00 00 00 00 bus=7
DEBUG: Add to cache sn 00 00 00 00 00 00 00 00 pointer=(nil) index=-1 size=4
DEBUG: FS_alarmdir BUS_first_alarm = -19
DEBUG: Return from ALARM is 0
DEBUG: FS_dir_both out ret=0
DEBUG: FS_OWQ_destroy of alarm
DEBUG: ParsedName_destroy alarm
DEBUG: DataHandler: FS_ParsedName_destroy done
DEBUG: DataHandler: cm.ret=0
DEBUG: ToClient payload=0 size=0, ret=0, sg=0x105 offset=0
Writev byte buffer ionr=1/1 length=24
--000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 05
--016: 00 00 00 00 00 00 00 00
<........................>
DEBUG: DataHandler: done
DEBUG: OWSERVER tcp connection persistence -- reusing connection now.
DEBUG: NetRead attempt 24 bytes Time:(10,0)
DEBUG: tcp_read n=24 nleft=24 n-nleft=0
DEBUG: OWSERVER handler done
DEBUG: Server Handler: Normal exit.
------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
_______________________________________________
Owfs-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/owfs-developers