bugThe GNU Hurd - Bugs: bug #19473, Running a fatfs translator on a...


bug #19473: Running a fatfs translator on a node N can crash the file system server where N is on

Submitted by:  Thomas Schwinge <tschwinge>
Submitted on:  Fri 30 Mar 2007 06:14:58 PM UTC  
Category:  Hurd Servers Severity:  3 - Normal
Priority:  5 - Normal Item Group:  None
Status:  None Privacy:  Public
Assigned to:  None Originator Name: 
Open/Closed:  Open Reproducibility:  Every Time
Size (loc):  None Planned Release:  None
Effort:  0.00
Wiki-like text discussion box: 

Add a New Comment(Rich Markup)

You are not logged in

Please log in, so followups can be emailed to you.


Sat 31 Mar 2007 10:30:15 AM UTC, comment #1:

With this change I just applied the dynamically linked fatfs will work again.

2007-03-31 Thomas Schwinge <tschwinge@gnu.org>

* Makefile (HURDLIBS): Put ``threads'' in front of ``ports''.

Nevertheless, the original report posted here is still valid and should be fixed.

Thomas Schwinge <tschwinge>
Project Administrator
Fri 30 Mar 2007 06:14:58 PM UTC, original submission:

The current Debian-shipped fatfs translator doesn't work. I got a statically linked one to work. However, the current `/hurd/fatfs' will, when run on a node N, crash the file system server where N is on. It goes like this:

Program received signal EXC_BAD_ACCESS, Could not access memory.
[Switching to thread 459.10]
0x010f8000 in _hurd_intr_rpc_msg_sp_restored () from /lib/libc.so.0.3
(gdb) bt
#0 0x010f8000 in _hurd_intr_rpc_msg_sp_restored () from /lib/libc.so.0.3
#1 0x01273768 in fsys_getroot () from /lib/libhurduser.so.0.3
#2 0x0105f4ea in fshelp_fetch_root (box=0x8065cec, cookie=0x805ef18, dotdot=37, user=0x805eec0, flags=64,
callback1=0x1037d10 <short_circuited_callback1.10167>, callback2=0x104dbf0 <_diskfs_translator_callback2_fn>, retry=0x132df74,
retryname=0x132df7c "", root=0x132e380) at /var/tmp/hurd-io+stat+fatfs/hurd-20060825/build-tree/hurd/libfshelp/fetch-root.c:179
#3 0x0103844e in diskfs_S_dir_lookup (dircred=0x805ee68, path=0x132bf5c "b", flags=<value optimized out>, mode=0, retry=0x132df74,
retryname=0x132df7c "", returned_port=0x132e380, returned_port_poly=0x132be60)
at /var/tmp/hurd-io+stat+fatfs/hurd-20060825/build-tree/hurd/libdiskfs/dir-lookup.c:275
#4 0x01040cab in _Xdir_lookup (InHeadP=0x132bf40, OutHeadP=0x132df50) at fsServer.c:1521
#5 0x0103e9ad in diskfs_fs_server (InHeadP=0x132bf40, OutHeadP=0x805d618) at fsServer.c:2682
#6 0x0103719e in diskfs_demuxer (inp=0x132bf40, outp=0x132df50)
at /var/tmp/hurd-io+stat+fatfs/hurd-20060825/build-tree/hurd/libdiskfs/demuxer.c:32
#7 0x010aedfd in internal_demuxer (inp=0x132bf40, outheadp=0x132df50)
at /var/tmp/hurd-io+stat+fatfs/hurd-20060825/build-tree/hurd/libports/manage-multithread.c:119
#8 0x010dcd32 in mach_msg_server_timeout () from /lib/libc.so.0.3
#9 0x010aeb84 in thread_function.7379 () at /var/tmp/hurd-io+stat+fatfs/hurd-20060825/build-tree/hurd/libports/manage-multithread.c:170
#10 0x010a892d in cthread_body (self=0x8066c70) at /var/tmp/hurd-io+stat+fatfs/hurd-20060825/build-tree/hurd/libthreads/cthreads.c:306
#11 0x00000000 in ?? ()
(gdb) x/5i $pc
0x10f8000 <_hurd_intr_rpc_msg_sp_restored+977>: mov (%edi),%eax
0x10f8002 <_hurd_intr_rpc_msg_sp_restored+979>: inc %esi
0x10f8003 <_hurd_intr_rpc_msg_sp_restored+980>: add $0x4,%edi
0x10f8006 <_hurd_intr_rpc_msg_sp_restored+983>: mov %eax,0x4(%esp)
0x10f800a <_hurd_intr_rpc_msg_sp_restored+987>: mov 0xffffffbc(%ebp),%ecx
(gdb) info registers
eax 0x2 2
ecx 0x11 17
edx 0x805d618 134600216
ebx 0x124067c 19138172
esp 0x132aaa4 0x132aaa4
ebp 0x132ab0c 0x132ab0c
esi 0x1 1
edi 0x25 37
eip 0x10f8000 0x10f8000 <_hurd_intr_rpc_msg_sp_restored+977>
eflags 0x10202 [ IF RF ]
cs 0x17 23
ss 0x1f 31
ds 0x1f 31
es 0x1f 31
fs 0x1f 31
gs 0x1f 31

Thomas Schwinge <tschwinge>
Project Administrator


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by tschwinge (Submitted the item)

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.




    No changes have been made to this item

    Back to the top

    Powered by Savane 3.4