LINUX.ORG.RU

проблема с монтированием файловой системы с использованием FUSE

 , , owfs


0

1

Здравствуйте. Возникла вот такая проблема: пытаюсь смонтировать сеть 1-wire с помощью пакета owfs. Все смонтировалось все видется все ок... Только при попытке записать в один из файлов значение «1»:

stas@SunFire:~$ echo 1 > /mnt/1wire/12.4A7A80000000/PIO.A
stas@SunFire:~$ cat /mnt/1wire/12.4A7A80000000/PIO.A
0stas@SunFire:~$ 
т.е. возращается значение, которое было до этого записано (т.е. то которое по умолчанию, т.е. 0).

НО! Самое главное что на архитектуре i386 все работает, а на SPARC64 история, описанная выше.

Я собирал из исходников, изрыл весь интернет, нашел статейки что человек делал на архитектуре SPARC. Сделал все так же как он... Все не сработало. Подскажите, может кто-нибуь когда-нибудь встречался с такой проблемой?

мой инит скрипт:


#!/bin/sh
# /etc/init.d/owfs.sh

MOUNTPOINT='/mnt/1wire';
 case "$1" in
        start)
         echo "starting script owfs with USB support..";
         echo `/opt/owfs/bin/owfs -u --allow_other -m 1wire --error_level=3 --mountpoint=$MOUNTPOINT`
         ;;
        stop)
         echo "stopping script owfs by unloading mount-point ..";
         echo `umount $MOUNTPOINT`;
         ;;
        *)
         echo "Usage: /etc/init.d/owfs.sh {start|stop}"
         exit 1
         ;;
 esac

exit 0

пробовал почти все последние версии (в т.ч. owfs-2.8p15)

компилировал вот так:

./configure --build=sparc64-linux target=sparc64-linux --enable-debian --enable-debug --enable-usb
make
make install

★★★

Ответ на: комментарий от disee

скомпилированый бинарник открыть в IDA и посмотреть всё ли в порядке в логике, также можно попробовать отладить в gdb нужно поставить отладочную точку останова на процедуре записи в 1-wire

Ещё проверь какую версию ядра используешь в SPARC и X86 в ядре тоже могут быть ошибки и в более свежем может быть что то исправили в драйвере 1-wire

wingrime
()
Ответ на: комментарий от anonymous

нет, просто много чего может быть версии ядра разные, глюки в компиляторе

wingrime
()
Ответ на: комментарий от wingrime

там где не работает:

Linux SunFire 2.6.32-5-sparc64 #1 Wed Jan 11 12:17:58 UTC 2012 sparc64 GNU/Linux

на ноуте, на котором заработало:

Linux mini 2.6.32-5-686 #1 SMP Mon Jun 13 04:13:06 UTC 2011 i686 GNU/Linux

disee ★★★
() автор топика
Ответ на: комментарий от wingrime

через usb контроллер ds9490r при записи вот что в сислоге (включен error-level=4):

May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_fstat.c:(22) path=/12.4A7A80000000/PIO.A
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_parsename.c:(98) path=[/12.4A7A80000000/PIO.A]
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_fstat.c:(39) ATTRIBUTES path=/12.4A7A80000000/PIO.A
May 21 14:47:32 sunfire OWFS[11892]:    CALL: owfs_callback.c:(144) TRUNCATE path=/12.4A7A80000000/PIO.A
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_fstat.c:(22) path=/12.4A7A80000000/PIO.A
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_parsename.c:(98) path=[/12.4A7A80000000/PIO.A]
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_fstat.c:(39) ATTRIBUTES path=/12.4A7A80000000/PIO.A
May 21 14:47:32 sunfire OWFS[11892]:    CALL: owfs_callback.c:(128) OPEN path=/12.4A7A80000000/PIO.A
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_write.c:(72) path=/12.4A7A80000000/PIO.A size=2 offset=0
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_parsename.c:(98) path=[/12.4A7A80000000/PIO.A]
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_parsename.c:(98) path=[/12.4A7A80000000/infobyte]
May 21 14:47:32 sunfire OWFS[11892]:    CALL: ow_parsename.c:(98) path=[/12.4A7A80000000/infobyte]
May 21 14:47:32 sunfire OWFS[11892]:    CALL: owfs_callback.c:(136) RELEASE path=/12.4A7A80000000/PIO.A
(если ставлю error-level=5 то выхлоп слишком большой и не влазит в сообщение, но в нем нету никаких еррорв)

disee ★★★
() автор топика
Ответ на: комментарий от wingrime

только что проверил еще на

Linux debian 2.6.32-5-amd64 #1 SMP Sun May 6 04:00:17 UTC 2012 x86_64 GNU/Linux
все работает

disee ★★★
() автор топика
Ответ на: комментарий от wingrime

заюзал утилиту diff, предварительно заменив в одном из документов номер процесса и имя машини. Получил вот такой результат:

root@debian:/home/stas# diff sunfire.txt debian.txt 
4,5c4,5
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0xf7f7dd84 index=0 size=4
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 92 seconds.
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0x7f4eb6d875fc index=0 size=4
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 84 seconds.
13,14c13,14
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0xf7f7dd84 index=0 size=4
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 92 seconds.
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0x7f4eb6d875fc index=0 size=4
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 84 seconds.
23,24c23,24
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0xf7f7dd84 index=0 size=4
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 92 seconds.
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0x7f4eb6d875fc index=0 size=4
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 84 seconds.
35,36c35,36
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0xf7f7dd84 index=0 size=4
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 92 seconds.
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0x7f4eb6d875fc index=0 size=4
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 84 seconds.
40c40
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0xf7f6bd08 index=0 size=8
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0x7f4eb6d6ad00 index=0 size=8
54c54
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(650) Add to cache sn 12 4A 7A 80 00 00 00 32 pointer=0xf7f6bd08 index=0 size=8
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(650) Add to cache sn 12 4A 7A 80 00 00 00 32 pointer=0x7f4eb6d6ad00 index=0 size=8
62,63c62,63
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0xf7f7dd84 index=0 size=4
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 92 seconds.
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1083) Search in cache sn 12 4A 7A 80 00 00 00 32 pointer=0x7f4eb6d875fc index=0 size=4
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1099) Value found in cache. Remaining life: 84 seconds.
65c65
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1375) Delete from cache sn 12 4A 7A 80 00 00 00 32 in=0xf7f6bd08 index=0
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1375) Delete from cache sn 12 4A 7A 80 00 00 00 32 in=0x7f4eb6d6ad00 index=0
85c85
< May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1375) Delete from cache sn 12 4A 7A 80 00 00 00 32 in=0xf7f6bad8 index=-2
---
> May 22 00:16:13 debian OWFS[13063]:   DEBUG: ow_cache.c:(1375) Delete from cache sn 12 4A 7A 80 00 00 00 32 in=0x7f4eb6d6a980 index=-2
т.е. по сути, разницы, кроме как в адресах и время отклика нету.

disee ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.