...and drop explicit typecasts (int)meta_dev_idx < 0.
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
                goto fail;
        }
 
-       if ((int)nbc->dc.meta_dev_idx < DRBD_MD_INDEX_FLEX_INT) {
+       if (nbc->dc.meta_dev_idx < DRBD_MD_INDEX_FLEX_INT) {
                retcode = ERR_MD_IDX_INVALID;
                goto fail;
        }
         */
        bdev = blkdev_get_by_path(nbc->dc.meta_dev,
                                  FMODE_READ | FMODE_WRITE | FMODE_EXCL,
-                                 ((int)nbc->dc.meta_dev_idx < 0) ?
+                                 (nbc->dc.meta_dev_idx < 0) ?
                                  (void *)mdev : (void *)drbd_m_holder);
        if (IS_ERR(bdev)) {
                dev_err(DEV, "open(\"%s\") failed with %ld\n", nbc->dc.meta_dev,
                goto fail;
        }
 
-       if ((int)nbc->dc.meta_dev_idx < 0) {
+       if (nbc->dc.meta_dev_idx < 0) {
                max_possible_sectors = DRBD_MAX_SECTORS_FLEX;
                /* at least one MB, otherwise it does not make sense */
                min_md_device_sectors = (2<<10);
                dev_warn(DEV, "==> truncating very big lower level device "
                        "to currently maximum possible %llu sectors <==\n",
                        (unsigned long long) max_possible_sectors);
-               if ((int)nbc->dc.meta_dev_idx >= 0)
+               if (nbc->dc.meta_dev_idx >= 0)
                        dev_warn(DEV, "==>> using internal or flexible "
                                      "meta data may help <<==\n");
        }
 
 GENL_struct(DRBD_NLA_DISK_CONF, 3, disk_conf,
        __str_field(1, GENLA_F_REQUIRED | GENLA_F_INVARIANT,    backing_dev,    128)
        __str_field(2, GENLA_F_REQUIRED | GENLA_F_INVARIANT,    meta_dev,       128)
-       __u32_field(3, GENLA_F_REQUIRED | GENLA_F_INVARIANT,    meta_dev_idx)
+       __s32_field(3, GENLA_F_REQUIRED | GENLA_F_INVARIANT,    meta_dev_idx)
 
        /* use the resize command to try and change the disk_size */
        __u64_field(4, GENLA_F_MANDATORY | GENLA_F_INVARIANT,   disk_size)
 
 #define __u32_field(attr_nr, attr_flag, name)  \
        __field(attr_nr, attr_flag, name, NLA_U32, __u32, \
                        nla_get_u32, NLA_PUT_U32)
+#define __s32_field(attr_nr, attr_flag, name)  \
+       __field(attr_nr, attr_flag, name, NLA_U32, __s32, \
+                       nla_get_u32, NLA_PUT_U32)
 #define __u64_field(attr_nr, attr_flag, name)  \
        __field(attr_nr, attr_flag, name, NLA_U64, __u64, \
                        nla_get_u64, NLA_PUT_U64)