Re: [PATCH 06/12] mkfs: create get/set functions for opts table

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 25, 2017 at 5:40 AM, Luis R. Rodriguez <mcgrof@xxxxxxxxxx> wrote:
> On Sun, Apr 23, 2017 at 08:54:57PM +0200, Jan Tulak wrote:
>> Add functions that can be used to get/set values to opts table.
>>
>> Signed-off-by: Jan Tulak <jtulak@xxxxxxxxxx>
>>
>> ---
>>  mkfs/xfs_mkfs.c | 32 ++++++++++++++++++++++++++++++++
>>  1 file changed, 32 insertions(+)
>>
>> diff --git a/mkfs/xfs_mkfs.c b/mkfs/xfs_mkfs.c
>> index c2ffd91..4caf93c 100644
>> --- a/mkfs/xfs_mkfs.c
>> +++ b/mkfs/xfs_mkfs.c
>> @@ -786,6 +786,38 @@ get_conf_raw(int opt, int subopt)
>>       return opts[opt].subopt_params[subopt].raw_input;
>>  }
>>
>> +static uint64_t getnum(const char *str, struct opt_params *opts, int index);
>
> Why not just move getnum() above here. Forward declarations IMHO should not be
> needed unless we have odd inclusion issues and I don't think that's the case
> here ?

Getnum requires set_conf_raw and illegal_option, but it seems that
they could be moved too. I think there is no circle dependency, I just
didn't want to move so many lines when I can do one declaration. But
if the declaration is an issue, I can shuffle the ~80 lines the three
functions takes.

Jan

>
>> +
>> +/*
>> + * Get and set values to the opts table.
>> + */
>> +static inline uint64_t
>> +get_conf_val(int opt, int subopt)
>> +{
>> +     return opts[opt].subopt_params[subopt].value;
>> +}
>> +
>> +static void
>> +set_conf_val(int opt, int subopt, uint64_t val)
>> +{
>> +     struct subopt_param *sp = &opts[opt].subopt_params[subopt];
>> +
>> +     sp->value = val;
>> +}
>> +
>> +/*
>> + * A wrapper for getnum and set_conf_val.
>> + */
>> +static inline uint64_t
>> +parse_conf_val(int opt, int subopt, char *value)
>> +{
>> +     uint64_t num = getnum(value, &opts[opt], subopt);
>> +
>> +     set_conf_val(opt, subopt, num);
>> +     return num;
>> +}
>
> Very nice thanks!
>
>   Luis



-- 
Jan Tulak
jtulak@xxxxxxxxxx / jan@xxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux