lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4DDD7D9B.3060701@oracle.com>
Date:	Wed, 25 May 2011 15:07:23 -0700
From:	Sunil Mushran <sunil.mushran@...cle.com>
To:	Josef Bacik <josef@...hat.com>
CC:	Andreas Dilger <adilger.kernel@...ger.ca>,
	linux-fsdevel@...r.kernel.org, linux-btrfs@...r.kernel.org,
	linux-kernel@...r.kernel.org, linux-ext4@...r.kernel.org,
	viro@...IV.linux.org.uk
Subject: Re: [PATCH 1/3] fs: add SEEK_HOLE and SEEK_DATA flags V4

On 05/25/2011 01:46 PM, Josef Bacik wrote:
> On 05/25/2011 03:45 PM, Andreas Dilger wrote:
>> Most of the filesystem-specific ->llseek() methods don't do any error
>> checking on "origin" because this is handled at the sys_llseek() level,
>> and hasn't changed in many years.
>>
>> I assume this patch is also dependent upon the "remove default_llseek()"
>> patch, so that the implementation of SEEK_DATA and SEEK_HOLE can be done
>> in only generic_file_llseek()?
>>
>> Finally, while looking through the various ->llseek() methods I notice
>> that many filesystems return "i_size" for SEEK_END, which clearly does
>> not make sense for filesystems like ext3/ext4 htree, btrfs, etc that
>> use hash keys instead of byte offsets for doing directory traversal.
>> The comment at generic_file_llseek() is that it is intended for use by
>> regular files.
>>
>> Should the ext4_llseek() code be changed to return 0x7ffffffff for the
>> SEEK_END value?  That makes more sense compared to values returned for
>> SEEK_CUR so that an application can compare the current "offset" with
>> the final value for a progress bar.
> So maybe we make SEEK_DATA/SEEK_HOLE only work on regular files and not
> directories?  Sunil what does solaris do?  Thanks,

In Solaris the size of the directory appears to be equal to the number
of entries and the offset is the file#, so to speak. SEEK_DATA returns
the current offset and SEEK_HOLE the last one.

Just to be clear, I am not a Solaris expert. I just happen to have access
to it. ;)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ