On 2016-07-29 03:34, Qu Wenruo wrote:
>> I am not against about your proposal; however I have to point out
>> that the goal of these command was not to *traverse* the file, but
>> only to found the physical location of a file offset. My use case
>> was to simulate a corruption of a raid5 stripe elements: for me it
>> was sufficient to know the page position.
> 
> For corruption case, the best practice would be extending
> btrfs-corrupt-block command.
> 
> And for your original proposal, to locate a page/sector containing
> the bytenr/offset, then the returned value should always be aligned
> to sectorsize. (And we need to state it clear in both man page and
> help string)
> 
> Unfortunately, that's not the case in current implementation. (And
> don't forget future subpage sector size, so in that case, we need to
> check sectorsize first.)
> 
> For example, if user passes a unaligned logical, physical-find will
> return the device offset unaligned.

For the other command (physical-dump), there is a check about the
alignment; the reason was to simplify the dump of the content.
However I don't understand to the reason to ask for the alignment
even in the -find tool: why the output have to be aligned ? Which is
the difference if I return the first byte address of the file than the
2nd or the 3rd (taking in account all the detail, which for raid5/6
is not very easy....)

> 
> If only to locate the stripe/sector, at least returning a aligned
> number seems more reasonable.
> 
> IMHO if we only want a simple tool, then make it clear it's a just
> simple tool, and add limitation and explain to make it simple and
> won't accept any complext/unexpected input.
> 
> Or, make it handle unexpected and complex input well.
> 
> 
> BTW, long time ago, btrfs-map-logical is under the same situation,
> just a simple tool do off-line logical->device offset mapping. But it
> since it does provides offset/length pair options, it can cause wrong
> or uesless result for unaligned input. And we spent some time to
> improve it.
> 
> So I hope we can avoid such problem which has already happened in
> map-logical.


-- 
gpg @keyserver.linux.it: Goffredo Baroncelli <kreijackATinwind.it>
Key fingerprint BBF5 1610 0B64 DAC6 5F7D  17B2 0EDA 9B37 8B82 E0B5
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to