On Freitag, 28. Januar 2022 01:56:06 CET Will Cohen wrote:
> From: Keno Fischer <[email protected]>
>
> Signed-off-by: Keno Fischer <[email protected]>
> Signed-off-by: Michael Roitzsch <[email protected]>
> [Will Cohen: - Adjust coding style
> - Lower XATTR_SIZE_MAX to 64k]
> Signed-off-by: Will Cohen <[email protected]>
> ---
> hw/9pfs/9p.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c
> index 9b0c057e9c..611ac14c4c 100644
> --- a/hw/9pfs/9p.c
> +++ b/hw/9pfs/9p.c
> @@ -3943,6 +3943,13 @@ out_nofid:
> v9fs_string_free(&name);
> }
>
> +#if defined(CONFIG_DARWIN) && !defined(XATTR_SIZE_MAX)
> +/*
> + * Darwin doesn't seem to define a maximum xattr size in its user
> + * space header, so manually configure it as 64k.
> + */
> +#define XATTR_SIZE_MAX 65536
> +#endif
Yes, but that's not explaining the reason why this is set to 64k. The reason
is that this a preliminary solution which reflects the limit of Linux guests
for now, as we don't support macOS guests yet, and not limiting this at all
would have lead to QEMU crashing on huge g_malloc() calls.
> static void coroutine_fn v9fs_xattrcreate(void *opaque)
> {
> int flags, rflags = 0;