[tip: ras/core] x86/mcelog: Add compat_ioctl for 32-bit mcelog support

From: tip-bot2 for He Zhe
Date: Mon May 04 2020 - 04:24:40 EST


The following commit has been merged into the ras/core branch of tip:

Commit-ID: 3b4ff4eb904fef04c36b39052ca8eb31fa41fad0
Gitweb: https://git.kernel.org/tip/3b4ff4eb904fef04c36b39052ca8eb31fa41fad0
Author: He Zhe <zhe.he@xxxxxxxxxxxxx>
AuthorDate: Wed, 04 Mar 2020 14:39:07 +08:00
Committer: Borislav Petkov <bp@xxxxxxx>
CommitterDate: Mon, 04 May 2020 10:07:04 +02:00

x86/mcelog: Add compat_ioctl for 32-bit mcelog support

A 32-bit version of mcelog issuing ioctls on /dev/mcelog causes errors
like the following:

MCE_GET_RECORD_LEN: Inappropriate ioctl for device

This is due to a missing compat_ioctl callback.

Assign to it compat_ptr_ioctl() as a generic implementation of the
.compat_ioctl file operation to ioctl functions that either ignore the
argument or pass a pointer to a compatible data type.

[ bp: Massage commit message. ]

Signed-off-by: He Zhe <zhe.he@xxxxxxxxxxxxx>
Signed-off-by: Borislav Petkov <bp@xxxxxxx>
Acked-by: Tony Luck <tony.luck@xxxxxxxxx>
Link: https://lkml.kernel.org/r/1583303947-49858-1-git-send-email-zhe.he@xxxxxxxxxxxxx
---
arch/x86/kernel/cpu/mce/dev-mcelog.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/x86/kernel/cpu/mce/dev-mcelog.c b/arch/x86/kernel/cpu/mce/dev-mcelog.c
index c033e7e..a4fd528 100644
--- a/arch/x86/kernel/cpu/mce/dev-mcelog.c
+++ b/arch/x86/kernel/cpu/mce/dev-mcelog.c
@@ -329,6 +329,7 @@ static const struct file_operations mce_chrdev_ops = {
.write = mce_chrdev_write,
.poll = mce_chrdev_poll,
.unlocked_ioctl = mce_chrdev_ioctl,
+ .compat_ioctl = compat_ptr_ioctl,
.llseek = no_llseek,
};