problems with RFS filesystem and mkdir

Joel Sherrill joel.sherrill at OARcorp.com
Mon Mar 18 17:42:45 UTC 2013


Is this reproducible with something you can share?

Looking at the source, I think this case is that you
filled the filesystem and there were no free blocks.
But I am looking at the head and not that familiar
with this filesystem.

--joel
On 3/18/2013 12:20 PM, Matthew J Fletcher wrote:
> Hi,
>
> I have an RFS filesystem using the nvram device, its formatted ok and 
> mount_and_make_target_path() also worked ok. But attempting to mkdir() 
> causes a really lowlevel issue.
>
> The callstack;
>
> rtems_rfs_block_map_find() at rtems-rfs-block.c:246 0x81198bd8
> rtems_rfs_block_map_next_block() at rtems-rfs-block.c:353 0x81198d1e
> rtems_rfs_dir_lookup_ino() at rtems-rfs-dir.c:204 0x8119951c
> rtems_rfs_rtems_eval_for_make() at rtems-rfs-rtems.c:440 0x8118e142
> IMFS_evaluate_for_make() at imfs_eval.c:435 0x81190718
> mknod() at mknod.c:64 0x81183d5c
> mkdir() at mkdir.c:29 0x81183cf0
> build() at rtems_mkdir.c:101 0x811843a0
> rtems_mkdir() at rtems_mkdir.c:136 0x811843a0
>
>
> the rtems_rfs_block_pos_block_past_end macro is failing and causing 
> the return of ENXIO.
>
> The two arguments to the macro are;
>
> bpos->bno = 1
> bpos->boff = 0
> bpos->block = 0
>
> map->size->count = 1
> map->size->offset = 0
>
> Which seems to me the cause of ENXIO being returned, but i dont know 
> how my BSP could affect this.
>
> Do people use RFS in production systems ? i am using the 4.10.2 sources.
>
>
> regards
> ---
> Matthew J Fletcher
>


-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel.sherrill at OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available                (256) 722-9985




More information about the users mailing list