XMLWordPrintable

#### Details

• Improvement
• Status: Resolved
• Minor
• Resolution: Fixed
• None
• None
• 9223372036854775807

#### Description

As a continuation of LU-4931 "New feature of giving server/storage side advice of accessing file" and LU-4865 "osd-zfs: increase object block size dynamically as object grows" it is useful to be able to specify the ZFS blocksize for a file directly from the client, so that the OSS doesn't have to guess at this itself.

This can be done via the "ladvise" functionality. One option is to pass the blocksize (a power-of-two value) along with the RANDOM hint on a newly-created file. This could use 8 bits of lla_padding to store the log2 blocksize, giving a maximum blocksize up to 2^255 bytes.

struct lu_ladvise {
__u64 lla_start;
__u64 lla_end;
__u8  lla_blockbits;
};


It isn't clear if there are valid use cases for non-power-of-two RANDOM IO hints at the server, which would require using a different encoding (e.g. some multiple of a blocksize), since that could also be handled at the client by sending the underlying power-of-two blocksize.

#### People

WC Triage
Andreas Dilger