aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/overlayfs/file.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/fs/overlayfs/file.c b/fs/overlayfs/file.c
index 540a8b845145..340a6ad45914 100644
--- a/fs/overlayfs/file.c
+++ b/fs/overlayfs/file.c
@@ -426,7 +426,8 @@ static unsigned int ovl_get_inode_flags(struct inode *inode)
426 return ovl_iflags; 426 return ovl_iflags;
427} 427}
428 428
429static long ovl_ioctl_set_flags(struct file *file, unsigned long arg) 429static long ovl_ioctl_set_flags(struct file *file, unsigned int cmd,
430 unsigned long arg)
430{ 431{
431 long ret; 432 long ret;
432 struct inode *inode = file_inode(file); 433 struct inode *inode = file_inode(file);
@@ -456,7 +457,7 @@ static long ovl_ioctl_set_flags(struct file *file, unsigned long arg)
456 if (ret) 457 if (ret)
457 goto unlock; 458 goto unlock;
458 459
459 ret = ovl_real_ioctl(file, FS_IOC_SETFLAGS, arg); 460 ret = ovl_real_ioctl(file, cmd, arg);
460 461
461 ovl_copyflags(ovl_inode_real(inode), inode); 462 ovl_copyflags(ovl_inode_real(inode), inode);
462unlock: 463unlock:
@@ -474,11 +475,13 @@ static long ovl_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
474 475
475 switch (cmd) { 476 switch (cmd) {
476 case FS_IOC_GETFLAGS: 477 case FS_IOC_GETFLAGS:
478 case FS_IOC_FSGETXATTR:
477 ret = ovl_real_ioctl(file, cmd, arg); 479 ret = ovl_real_ioctl(file, cmd, arg);
478 break; 480 break;
479 481
480 case FS_IOC_SETFLAGS: 482 case FS_IOC_SETFLAGS:
481 ret = ovl_ioctl_set_flags(file, arg); 483 case FS_IOC_FSSETXATTR:
484 ret = ovl_ioctl_set_flags(file, cmd, arg);
482 break; 485 break;
483 486
484 default: 487 default: