Hi all, After merging the kvm-x86 tree, today's linux-next build (x86_64 allmodconfig) failed like this: arch/x86/kvm/../../../virt/kvm/guest_memfd.c: In function 'kvm_gmem_get_file': arch/x86/kvm/../../../virt/kvm/guest_memfd.c:280:35: error: passing argument 1 of 'get_file_rcu' from incompatible pointer type [-Werror=incompatible-pointer-types] 280 | if (file && !get_file_rcu(file)) | ^~~~ | | | struct file * In file included from include/linux/backing-dev.h:13, from arch/x86/kvm/../../../virt/kvm/guest_memfd.c:2: include/linux/fs.h:1046:47: note: expected 'struct file **' but argument is of type 'struct file *' 1046 | struct file *get_file_rcu(struct file __rcu **f); | ~~~~~~~~~~~~~~~~~~~~^ Caused by commit fcbef1e5e5d2 ("KVM: Add KVM_CREATE_GUEST_MEMFD ioctl() for guest-specific backing memory") interacting with commit 0ede61d8589c ("file: convert to SLAB_TYPESAFE_BY_RCU") from the vfs-brauner tree. I have applied the following merg resolution patch: From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> Date: Mon, 30 Oct 2023 13:35:38 +1100 Subject: [PATCH] fix up for "KVM: Add KVM_CREATE_GUEST_MEMFD ioctl() for guest-specific backing memory" interacting with "file: convert to SLAB_TYPESAFE_BY_RCU" Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> --- virt/kvm/guest_memfd.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/virt/kvm/guest_memfd.c b/virt/kvm/guest_memfd.c index 94bc478c26f3..7f62abe3df9e 100644 --- a/virt/kvm/guest_memfd.c +++ b/virt/kvm/guest_memfd.c @@ -276,9 +276,7 @@ static struct file *kvm_gmem_get_file(struct kvm_memory_slot *slot) rcu_read_lock(); - file = rcu_dereference(slot->gmem.file); - if (file && !get_file_rcu(file)) - file = NULL; + file = get_file_rcu(&slot->gmem.file); rcu_read_unlock(); -- 2.40.1 -- Cheers, Stephen Rothwell
Attachment:
pgpAmMIdPnR9v.pgp
Description: OpenPGP digital signature