Sometimes my owfs server runs into an endless loop reading a directory.
I have no idea whatsoever why that happens; it's on a local USB bus,
admittedly behind a couple of DS2409 hubs (they're necessary -- crappy
wiring). That did not happen with the last version I had on that system
(probably 2.6p6; I can do a binary search for the check-in that caused
the problem, but not now *yawn*).
Happens both with DIR and DIRALL messages, except that the latter doesn't
flood the client with a stream of duplicate directory entries. ;-)
Debug output:
DEBUG: ReadHandler: FS_read_postparse ok size=1
DEBUG: ReadHandler: To Client cm->payload=1 cm->size=1 cm->offset=0
DEBUG: ReadHandler: return size=1 [0]
DEBUG: Read message done retbuffer=0x805df40
DEBUG: FS_OWQ_destroy of
/uncached/bus.0/1F.0CB204000000/aux/1F.C9B004000000/main/05.A30032000000/sensed
DEBUG: ParsedName_destroy
/uncached/bus.0/1F.0CB204000000/aux/1F.C9B004000000/main/05.A30032000000/sensed
DEBUG: RealHandler: FS_ParsedName_destroy done
DEBUG: RealHandler: cm.ret=1
DEBUG: ToClient payload=1 size=1, ret=1, sg=0x2 offset=0
DEBUG: RealHandler: done
DEBUG: ServerProcessAccept = 3084352400 CLOSING
DEBUG: ServerProcessAccept [3084352400] try lock 0
DEBUG: ServerProcessAccept [3084352400] locked 0
DEBUG: FromClient payload=68 size=0 type=7 sg=0x2 offset=0
CALL: owserver: parse
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main
DEBUG: FS_OWQ_create of
/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main
CALL: PARSENAME
path=[/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main]
CALL: Directory message (all at once)
DEBUG: OWSERVER Dir-All SpecifiedBus=1 path =
/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main
DEBUG: In
FS_dir_remote(/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main)
CALL: DIRECTORY
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main
DEBUG: Start of directory
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main
device=1F C3 C6 04 00 00 00 CF
DEBUG: Selecting a path (and device)
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main SN=1F
C3 C6 04 00 00 00 CF last path=1F C9 B0 04 00 00 00 F1
DEBUG: Clearing all branches to level 3
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DATA: DS9490_reset
DEBUG: OWSERVER handler done
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
: DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Transaction send = 0
DEBUG: Transaction end = 0
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Index 0
DEBUG: Got 64 bytes from USB search
DEBUG: DS9490_next_both SN found: 10 D0 5F 39 01 08 00 C3
DEBUG: BUS_next return = 0 10 D0 5F 39 01 08 00 C3
DEBUG: Cache_Add_Device 10 D0 5F 39 01 08 00 C3 bus=0
DEBUG: Add to cache sn 10 D0 5F 39 01 08 00 C3 pointer=(nil) index=-1 size=4
DEBUG: Selecting a path (and device)
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main SN=1F
C3 C6 04 00 00 00 CF last path=1F C3 C6 04 00 00 00 CF
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Index 1
DEBUG: DS9490_next_both SN found: 10 65 AD 39 01 08 00 0A
DEBUG: BUS_next return = 0 10 65 AD 39 01 08 00 0A
DEBUG: Cache_Add_Device 10 65 AD 39 01 08 00 0A bus=0
DEBUG: Add to cache sn 10 65 AD 39 01 08 00 0A pointer=(nil) index=-1 size=4
DEBUG: Selecting a path (and device)
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main SN=1F
C3 C6 04 00 00 00 CF last path=1F C3 C6 04 00 00 00 CF
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Index 2
DEBUG: DS9490_next_both SN found: 10 8D 80 39 01 08 00 96
DEBUG: BUS_next return = 0 10 8D 80 39 01 08 00 96
DEBUG: Cache_Add_Device 10 8D 80 39 01 08 00 96 bus=0
DEBUG: Add to cache sn 10 8D 80 39 01 08 00 96 pointer=(nil) index=-1 size=4
DEBUG: Selecting a path (and device)
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main SN=1F
C3 C6 04 00 00 00 CF last path=1F C3 C6 04 00 00 00 CF
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Index 3
DEBUG: DS9490_next_both SN found: 10 DB DB 39 01 08 00 EF
DEBUG: BUS_next return = 0 10 DB DB 39 01 08 00 EF
DEBUG: Cache_Add_Device 10 DB DB 39 01 08 00 EF bus=0
DEBUG: Add to cache sn 10 DB DB 39 01 08 00 EF pointer=(nil) index=-1 size=4
DEBUG: Selecting a path (and device)
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main SN=1F
C3 C6 04 00 00 00 CF last path=1F C3 C6 04 00 00 00 CF
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Index 4
DEBUG: DS9490_next_both SN found: 26 61 F8 AE 00 00 00 B1
DEBUG: BUS_next return = 0 26 61 F8 AE 00 00 00 B1
DEBUG: Cache_Add_Device 26 61 F8 AE 00 00 00 B1 bus=0
DEBUG: Add to cache sn 26 61 F8 AE 00 00 00 B1 pointer=(nil) index=-1 size=4
DEBUG: Selecting a path (and device)
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main SN=1F
C3 C6 04 00 00 00 CF last path=1F C3 C6 04 00 00 00 CF
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Index 5
DEBUG: DS9490_next_both SN found: 81 0B 2F 27 00 00 00 33
DEBUG: BUS_next return = 0 81 0B 2F 27 00 00 00 33
DEBUG: Cache_Add_Device 81 0B 2F 27 00 00 00 33 bus=0
DEBUG: Add to cache sn 81 0B 2F 27 00 00 00 33 pointer=(nil) index=-1 size=4
DEBUG: Selecting a path (and device)
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main SN=1F
C3 C6 04 00 00 00 CF last path=1F C3 C6 04 00 00 00 CF
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Index 6
DEBUG: DS9490_next_both SN found: 1F 0C B2 04 00 00 00 06
DEBUG: BUS_next return = 0 1F 0C B2 04 00 00 00 06
DEBUG: Cache_Add_Device 1F 0C B2 04 00 00 00 06 bus=0
DEBUG: Add to cache sn 1F 0C B2 04 00 00 00 06 pointer=(nil) index=-1 size=4
DEBUG: Selecting a path (and device)
path=/bus.0/1F.0CB204000000/aux/1F.C9B004000000/aux/1F.C3C604000000/main SN=1F
C3 C6 04 00 00 00 CF last path=1F C3 C6 04 00 00 00 CF
DATA: DS9490_reset
DATA: DS9490_reset: ok
DEBUG: Transaction send = 0
DEBUG: Transaction readin = 0
DEBUG: Transaction end = 0
DEBUG: Index 7
DEBUG: Got 64 bytes from USB search
DEBUG: DS9490_next_both SN found: 10 D0 5F 39 01 08 00 C3
[ Note identical serial to first device found. Repeat ad lib. ]
--
Matthias Urlichs | {M:U} IT Design @ m-u-it.de | [EMAIL PROTECTED]
Disclaimer: The quote was selected randomly. Really. | http://smurf.noris.de
- -
My mother had a baby once.
-- Jigger
-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell. From the desktop to the data center, Linux is going
mainstream. Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
Owfs-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/owfs-developers