> On September 12, 2018 at 9:12 AM Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote: > > > Hi Giorgio, > > On Tue, Sep 11, 2018 at 10:33:52PM +0200, Giorgio Dal Molin wrote: > > Hi, > > > > today I've tried barebox v2018.09.0 on an EFI system. > > It basically runs but I have problems when writing an fs image file > > to a disk partition: > > > > > cp rootfs.img /dev/disk1.userland > > > > barebox v2018.09.0 returns a 'no space left on device' error. > > > > First of all I must ask if this is still the proper way to > > write a content to a disk partition. > > Yes, it is. You found a bug. > > > > > In case this should still work as expected here is a pseudo > > backtrace of how the error happens on my system: > > > > commands/cp.c:do_cp() ret = copy_file(argv[i], argv[argc - 1], verbose); > > lib/libfile.c:copy_file() dstfd = open(dst, mode); > > fs/fs.c:open() error = fsdrv->truncate(&fsdev->dev, f, 0); > > fs/devfs.c: devfs_truncate() > > > > in the call to devfs_truncate() I see cdev->ops->truncate == NULL > > and f->fsdev->dev.num_resources == 0 and this makes the function > > return -ENOSPC. > > > > Hope the report helps identify a problem. > > Yes, indeed, thanks. The problem was that with the switch to dentry > cache implementation the files in /dev/ no longer appear as character > devices but as regular files. the copy_file function then does a > truncate on the files which fails. I just sent out a patch addressing > this issue, please test. I would also recommend to take the second patch > although this fixes another issue. > > Sascha > Hi, I've seen the two patches, thank you. I've seen the dentry 'big patch' and I knew it was the problem but it was too complex for me to understand exactly where the proper fix should go. I'll try them out today, giorgio _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox