/dev/port: don't compile file operations without CONFIG_DEVPORT
authorNiklas Schnelle <schnelle@linux.ibm.com>
Thu, 4 Apr 2024 11:49:17 +0000 (13:49 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 11 Apr 2024 13:26:55 +0000 (15:26 +0200)
In the future inb() and friends will not be available when compiling
with CONFIG_HAS_IOPORT=n so we must only try to access them here if
CONFIG_DEVPORT is set which depends on HAS_IOPORT.

Co-developed-by: Arnd Bergmann <arnd@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@kernel.org>
Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
Link: https://lore.kernel.org/r/20240404114917.3627747-2-schnelle@linux.ibm.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/char/mem.c

index 3c6670cf905f116a2aebc773f8f9bb8d6714ac85..7904e2bb6427230bc9fb33f0301ba9b1f123fab2 100644 (file)
@@ -383,6 +383,7 @@ static int mmap_mem(struct file *file, struct vm_area_struct *vma)
        return 0;
 }
 
+#ifdef CONFIG_DEVPORT
 static ssize_t read_port(struct file *file, char __user *buf,
                         size_t count, loff_t *ppos)
 {
@@ -424,6 +425,7 @@ static ssize_t write_port(struct file *file, const char __user *buf,
        *ppos = i;
        return tmp-buf;
 }
+#endif
 
 static ssize_t read_null(struct file *file, char __user *buf,
                         size_t count, loff_t *ppos)
@@ -653,12 +655,14 @@ static const struct file_operations null_fops = {
        .uring_cmd      = uring_cmd_null,
 };
 
-static const struct file_operations __maybe_unused port_fops = {
+#ifdef CONFIG_DEVPORT
+static const struct file_operations port_fops = {
        .llseek         = memory_lseek,
        .read           = read_port,
        .write          = write_port,
        .open           = open_port,
 };
+#endif
 
 static const struct file_operations zero_fops = {
        .llseek         = zero_lseek,