|
@@ -47,7 +47,7 @@ void quota_send_warning(struct kqid qid, dev_t dev,
|
|
|
void *msg_head;
|
|
|
int ret;
|
|
|
int msg_size = 4 * nla_total_size(sizeof(u32)) +
|
|
|
- 2 * nla_total_size(sizeof(u64));
|
|
|
+ 2 * nla_total_size_64bit(sizeof(u64));
|
|
|
|
|
|
/* We have to allocate using GFP_NOFS as we are called from a
|
|
|
* filesystem performing write and thus further recursion into
|
|
@@ -68,8 +68,9 @@ void quota_send_warning(struct kqid qid, dev_t dev,
|
|
|
ret = nla_put_u32(skb, QUOTA_NL_A_QTYPE, qid.type);
|
|
|
if (ret)
|
|
|
goto attr_err_out;
|
|
|
- ret = nla_put_u64(skb, QUOTA_NL_A_EXCESS_ID,
|
|
|
- from_kqid_munged(&init_user_ns, qid));
|
|
|
+ ret = nla_put_u64_64bit(skb, QUOTA_NL_A_EXCESS_ID,
|
|
|
+ from_kqid_munged(&init_user_ns, qid),
|
|
|
+ QUOTA_NL_A_PAD);
|
|
|
if (ret)
|
|
|
goto attr_err_out;
|
|
|
ret = nla_put_u32(skb, QUOTA_NL_A_WARNING, warntype);
|
|
@@ -81,8 +82,9 @@ void quota_send_warning(struct kqid qid, dev_t dev,
|
|
|
ret = nla_put_u32(skb, QUOTA_NL_A_DEV_MINOR, MINOR(dev));
|
|
|
if (ret)
|
|
|
goto attr_err_out;
|
|
|
- ret = nla_put_u64(skb, QUOTA_NL_A_CAUSED_ID,
|
|
|
- from_kuid_munged(&init_user_ns, current_uid()));
|
|
|
+ ret = nla_put_u64_64bit(skb, QUOTA_NL_A_CAUSED_ID,
|
|
|
+ from_kuid_munged(&init_user_ns, current_uid()),
|
|
|
+ QUOTA_NL_A_PAD);
|
|
|
if (ret)
|
|
|
goto attr_err_out;
|
|
|
genlmsg_end(skb, msg_head);
|