RE: [PATCH 09/20] dlb2: add ioctl to configure ports, query poll mode

From: Eads, Gage
Date: Fri Jul 17 2020 - 14:19:37 EST




> -----Original Message-----
> From: Arnd Bergmann <arnd@xxxxxxxx>
> Sent: Sunday, July 12, 2020 10:34 AM
> To: Eads, Gage <gage.eads@xxxxxxxxx>
> Cc: linux-kernel@xxxxxxxxxxxxxxx; gregkh <gregkh@xxxxxxxxxxxxxxxxxxx>;
> Karlsson, Magnus <magnus.karlsson@xxxxxxxxx>; Topel, Bjorn
> <bjorn.topel@xxxxxxxxx>
> Subject: Re: [PATCH 09/20] dlb2: add ioctl to configure ports, query poll mode
>
> On Sun, Jul 12, 2020 at 3:46 PM Gage Eads <gage.eads@xxxxxxxxx> wrote:
> > enum dlb2_user_interface_commands {
> > DLB2_CMD_GET_DEVICE_VERSION,
> > DLB2_CMD_CREATE_SCHED_DOMAIN,
> > DLB2_CMD_GET_SCHED_DOMAIN_FD,
> > DLB2_CMD_GET_NUM_RESOURCES,
> > DLB2_CMD_GET_DRIVER_VERSION,
> > + DLB2_CMD_QUERY_CQ_POLL_MODE,
> >
> > /* NUM_DLB2_CMD must be last */
> > NUM_DLB2_CMD,
>
> > @@ -427,6 +513,8 @@ struct dlb2_get_dir_queue_depth_args { enum
> > dlb2_domain_user_interface_commands {
> > DLB2_DOMAIN_CMD_CREATE_LDB_QUEUE,
> > DLB2_DOMAIN_CMD_CREATE_DIR_QUEUE,
> > + DLB2_DOMAIN_CMD_CREATE_LDB_PORT,
> > + DLB2_DOMAIN_CMD_CREATE_DIR_PORT,
> > DLB2_DOMAIN_CMD_GET_LDB_QUEUE_DEPTH,
> > DLB2_DOMAIN_CMD_GET_DIR_QUEUE_DEPTH,
>
>
> You cannot add new commands in the middle without changing the ABI.
>
> Maybe use individual #define lines in place of the enum to make sure these
> remain constants, or add a numeric value for each one when they are
> originally introduced.
>
> (yes, I realize this is the initial contribution of the new driver, but it still seems
> wrong to have it change in the middle of the series).

Ok, no problem -- I was assuming this patchset would be considered an atomic unit. I'll correct this in V2.

Thanks,
Gage

>
> Arnd