Alex Hornung <ahornung@gmail.com> added the comment:
I've identified the issue. In devfs getattr vnop I'm doing:
vap->va_bytes =3D vap->va_size =3D sizeof(struct devfs_node);
and kern_lseek then does:
new_offset =3D offset + vattr.va_size;
I'm not quite sure how to solve this. Should the size be set to the physica=
l=20
size if the device is a disk type? This would also result in fstat to retur=
n=20
the physical size for a disk.
Unless anyone considers it to always set va_size and st_size to the disk si=
ze=20
for a disk-type device in the next few hours or so, I'll do it this way.
Cheers,
Alex Hornung
----------
assignedto: -> alexh
nosy: +alexh
priority: -> bug
status: unread -> in-progress
_____________________________________________________
DragonFly issue tracker <bugs@lists.dragonflybsd.org>
<http://bugs.dragonflybsd.org/issue1632>
_____________________________________________________