Nicolas Iooss 5202efe544 coredump: use from_kuid/kgid when formatting corename
When adding __printf attribute to cn_printf, gcc reports some issues:

  fs/coredump.c:213:5: warning: format '%d' expects argument of type
  'int', but argument 3 has type 'kuid_t' [-Wformat=]
       err = cn_printf(cn, "%d", cred->uid);
       ^
  fs/coredump.c:217:5: warning: format '%d' expects argument of type
  'int', but argument 3 has type 'kgid_t' [-Wformat=]
       err = cn_printf(cn, "%d", cred->gid);
       ^

These warnings come from the fact that the value of uid/gid needs to be
extracted from the kuid_t/kgid_t structure before being used as an
integer.  More precisely, cred->uid and cred->gid need to be converted to
either user-namespace uid/gid or to init_user_ns uid/gid.

Use init_user_ns in order not to break existing ABI, and document this in
Documentation/sysctl/kernel.txt.

While at it, format uid and gid values with %u instead of %d because
uid_t/__kernel_uid32_t and gid_t/__kernel_gid32_t are unsigned int.

Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@m4x.org>
Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-06-25 17:00:43 -07:00
..
2015-05-10 22:18:28 -04:00
2015-06-25 17:00:42 -07:00
2015-05-10 22:18:21 -04:00
2015-05-11 08:13:13 -04:00
2015-06-25 17:00:40 -07:00
2015-06-23 17:38:39 -07:00
2015-05-10 22:18:26 -04:00
2015-04-21 16:16:02 -04:00
2015-06-25 17:00:42 -07:00
2015-06-25 17:00:43 -07:00
2015-04-11 22:29:40 -04:00
2015-05-10 22:18:26 -04:00
2015-05-21 15:19:15 +02:00
2015-05-10 22:18:25 -04:00
2014-11-19 13:01:20 -05:00
2015-04-17 09:04:07 -04:00
2015-05-11 08:13:13 -04:00
2015-04-17 09:04:12 -04:00
2015-05-11 08:13:14 -04:00
2015-05-11 08:13:14 -04:00
2014-11-19 13:01:26 -05:00