On 9/3/2024 8:05 PM, Christian Brauner wrote: > On Tue, Sep 03, 2024 at 07:58:46PM GMT, Kanchan Joshi wrote: >> Hi Amir, >> >> >> On 8/26/2024 10:36 PM, Kanchan Joshi wrote: >>> Current write-hint infrastructure supports 6 temperature-based data life >>> hints. >>> The series extends the infrastructure with a new temperature-agnostic >>> placement-type hint. New fcntl codes F_{SET/GET}_RW_HINT_EX allow to >>> send the hint type/value on file. See patch #3 commit description for >>> the details. >>> >>> Overall this creates 128 placement hint values [*] that users can pass. >>> Patch #5 adds the ability to map these new hint values to nvme-specific >>> placement-identifiers. >>> Patch #4 restricts SCSI to use only life hint values. >>> Patch #1 and #2 are simple prep patches. >>> >>> [*] While the user-interface can support more, this limit is due to the >>> in-kernel plumbing consideration of the inode size. Pahole showed 32-bit >>> hole in the inode, but the code had this comment too: >>> >>> /* 32-bit hole reserved for expanding i_fsnotify_mask */ >>> >>> Not must, but it will be good to know if a byte (or two) can be used >>> here. >> >> Since having one extra byte will simplify things, I can't help but ask - >> do you still have the plans to use this space (in entirety) within inode? > > I just freed up 8 bytes in struct inode with what's currently in -next. > There will be no using up those 8 bytes unless it's for a good reason > and something that is very widely useful. I see, so now there are two holes. Seems the plan is to co-locate these and reduce the size by 8 bytes. Thanks for the pointer. Primary reason is a bit cleaner plumbing, but I'll manage without extra space.