diff --git a/fs/udf/super.c b/fs/udf/super.c index 4d671be50059dec46ea088c151fc8ecba11a5380..31d8ce13fa1878549d3e08ce7952edb0dd3642ff 100644 --- a/fs/udf/super.c +++ b/fs/udf/super.c @@ -2111,8 +2111,9 @@ static int udf_fill_super(struct super_block *sb, void *options, int silent) bool lvid_open = false; uopt.flags = (1 << UDF_FLAG_USE_AD_IN_ICB) | (1 << UDF_FLAG_STRICT); - uopt.uid = INVALID_UID; - uopt.gid = INVALID_GID; + /* By default we'll use overflow[ug]id when UDF inode [ug]id == -1 */ + uopt.uid = make_kuid(current_user_ns(), overflowuid); + uopt.gid = make_kgid(current_user_ns(), overflowgid); uopt.umask = 0; uopt.fmode = UDF_INVALID_MODE; uopt.dmode = UDF_INVALID_MODE;