> On 24 Jan 2019, at 15.13, Andy Shevchenko <andy.shevchenko@xxxxxxxxx> wrote: > > On Thu, Jan 24, 2019 at 3:45 PM Javier González <javier@xxxxxxxxxxx> wrote: >>> On 24 Jan 2019, at 14.36, Andy Shevchenko <andy.shevchenko@xxxxxxxxx> wrote: >>> On Thu, Jan 24, 2019 at 3:19 PM Javier González <javier@xxxxxxxxxxx> wrote: >>>>> On 24 Jan 2019, at 13.16, Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > >>>>> header.uuid is defined using __u8 type, I'm not sure we can use guid_t there. >>>> >>>> We can turn it into a guid_t and bump the minor version. >>> >>> It's not so easy. __uXX types are dedicated for external APIs. guid_t >>> is kernel internal type disregard of (still) presence some uapi bits. >>> So, the question is those __uXX types in the driver definition is a >>> simple mistake, (weird) style decision, or what? >> >> I would define it as a mistake and I think it is worth fixing it. At the >> moment we are only using this uuid for recovery purposes, to discard >> data from a different pblk instance, > > Does this come from outside of the kernel in any mean (user space, > data from device, etc)? > It sounds to me like it does. In this case there is no mistake and we > may not use guid_t there. pblk manages the metadata layout without involvement of the device or user space, so no, no dependency at this moment. It is not pushed anywhere yet, but I have been working on a tool to make a pblk recovery tool to enable FTL repairs if something fails in the kernel recovery path. Here, I use this uuid to identify the instance - is there a way to reconcile guid_t with user space, which currently uses the __u8? Javier
Attachment:
signature.asc
Description: Message signed with OpenPGP