All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-arm@nongnu.org, qemu-devel@nongnu.org
Subject: Re: [PATCH] qemu-options: Deprecate -old-param command line option
Date: Tue, 4 Feb 2025 13:01:00 +0000	[thread overview]
Message-ID: <Z6IPjKFsUCWFhBk5@redhat.com> (raw)
In-Reply-To: <20250127123113.2947620-1-peter.maydell@linaro.org>

On Mon, Jan 27, 2025 at 12:31:13PM +0000, Peter Maydell wrote:
> The '-old-param' command line option is specific to Arm targets; it
> is very briefly documented as "old param mode".  What this option
> actually does is change the behaviour when directly booting a guest
> kernel, so that command line arguments are passed to the kernel using
> the extremely old "param_struct" ABI, rather than the newer ATAGS or
> even newer DTB mechanisms.
> 
> This support was added back in 2007 to support an old vendor kernel
> on the akita/terrier board types:
>  https://mail.gnu.org/archive/html/qemu-devel/2007-07/msg00344.html
> Even then, it was an out-of-date mechanism from the kernel's
> point of view -- the kernel has had a comment since 2001 marking
> it as deprecated. As of mid-2024, the kernel only retained
> param_struct support for the RiscPC and Footbridge platforms:
>  https://lore.kernel.org/linux-arm-kernel/2831c5a6-cfbf-4fe0-b51c-0396e5b0aeb7@app.fastmail.com/
> 
> None of the board types QEMU supports need param_struct support;
> mark this option as deprecated.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
>  docs/about/deprecated.rst | 13 +++++++++++++
>  system/vl.c               |  1 +
>  2 files changed, 14 insertions(+)

I think it is reasonable to remove this extreme special case given
the history around it

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


> 
> diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
> index 29de49351d1..a4c7d642236 100644
> --- a/docs/about/deprecated.rst
> +++ b/docs/about/deprecated.rst
> @@ -68,6 +68,19 @@ configurations (e.g. -smp drawers=1,books=1,clusters=1 for x86 PC machine) is
>  marked deprecated since 9.0, users have to ensure that all the topology members
>  described with -smp are supported by the target machine.
>  
> +``-old-param`` option for booting Arm kernels via param_struct (since 10.0)
> +'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
> +
> +The ``-old-param`` command line option is specific to Arm targets:
> +it is used when directly booting a guest kernel to pass it the
> +command line and other information via the old ``param_struct`` ABI,
> +rather than the newer ATAGS or DTB mechanisms. This option was only
> +ever needed to support ancient kernels on some old board types
> +like the ``akita`` or ``terrier``; it has been deprecated in the
> +kernel since 2001. None of the board types QEMU supports need
> +``param_struct`` support, so this option has been deprecated and will
> +be removed in a future QEMU version.
> +
>  User-mode emulator command line arguments
>  -----------------------------------------
>  
> diff --git a/system/vl.c b/system/vl.c
> index c5678267182..32ee1ce7041 100644
> --- a/system/vl.c
> +++ b/system/vl.c
> @@ -3438,6 +3438,7 @@ void qemu_init(int argc, char **argv)
>                  nb_prom_envs++;
>                  break;
>              case QEMU_OPTION_old_param:
> +                warn_report("-old-param is deprecated");
>                  old_param = 1;
>                  break;
>              case QEMU_OPTION_rtc:
> -- 
> 2.34.1
> 
> 

With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|


      parent reply	other threads:[~2025-02-04 13:02 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-27 12:31 [PATCH] qemu-options: Deprecate -old-param command line option Peter Maydell
2025-02-04 12:54 ` Peter Maydell
2025-02-04 13:01 ` Daniel P. Berrangé [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Z6IPjKFsUCWFhBk5@redhat.com \
    --to=berrange@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.