Commit 5dfbbb66 authored by Len Baker's avatar Len Baker Committed by Gustavo A. R. Silva
Browse files

KVM: PPC: Replace zero-length array with flexible array member

There is a regular need in the kernel to provide a way to declare having
a dynamically sized set of trailing elements in a structure. Kernel code
should always use "flexible array members" [1] for these cases. The
older style of one-element or zero-length arrays should no longer be
used[2].

Also, make use of the struct_size() helper in kzalloc().

[1] https://en.wikipedia.org/wiki/Flexible_array_member
[2] https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays



Signed-off-by: default avatarLen Baker <len.baker@gmx.com>
Reviewed-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
parent 6446c4fb
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -190,7 +190,7 @@ struct kvmppc_spapr_tce_table {
	u64 size;		/* window size in pages */
	struct list_head iommu_tables;
	struct mutex alloc_lock;
	struct page *pages[0];
	struct page *pages[];
};

/* XICS components, defined in book3s_xics.c */
+1 −2
Original line number Diff line number Diff line
@@ -295,8 +295,7 @@ long kvm_vm_ioctl_create_spapr_tce(struct kvm *kvm,
		return ret;

	ret = -ENOMEM;
	stt = kzalloc(sizeof(*stt) + npages * sizeof(struct page *),
		      GFP_KERNEL);
	stt = kzalloc(struct_size(stt, pages, npages), GFP_KERNEL);
	if (!stt)
		goto fail_acct;