All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthew Wilcox <willy@infradead.org>
To: David Disseldorp <ddiss@suse.de>
Cc: linux-fsdevel@vger.kernel.org, linux-doc@vger.kernel.org,
	Martin Wilck <mwilck@suse.com>,
	viro@zeniv.linux.org.uk
Subject: Re: [PATCH v4 2/4] initramfs: print helpful cpio error on "crc" magic
Date: Wed, 10 Nov 2021 17:30:54 +0000	[thread overview]
Message-ID: <YYwBzj0isuKOjjUe@casper.infradead.org> (raw)
In-Reply-To: <20211110123850.24956-3-ddiss@suse.de>

On Wed, Nov 10, 2021 at 01:38:48PM +0100, David Disseldorp wrote:
> Contrary to the buffer-format.rst documentation, initramfs cpio
> extraction does not support "crc" archives, which carry "070702"
> header magic. Make it a little clearer that "newc" (magic="070701") is
> the only supported cpio format, by extending the POSIX.1 ASCII
> (magic="070707") specific error message to also cover "crc" magic.

Wouldn't it be easier to just add support?  As far as I can tell from
looking at documentation, the "crc" format is the same as newc, except
that it uses some reserved bits to store the crc.  Since we ignore those
bits, we could just check for either 070701 or 070702.

> Signed-off-by: David Disseldorp <ddiss@suse.de>
> ---
>  init/initramfs.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/init/initramfs.c b/init/initramfs.c
> index 2f79b3ec0b40..44e692ae4646 100644
> --- a/init/initramfs.c
> +++ b/init/initramfs.c
> @@ -258,7 +258,7 @@ static int __init do_collect(void)
>  static int __init do_header(void)
>  {
>  	if (memcmp(collected, "070701", 6)) {
> -		if (memcmp(collected, "070707", 6) == 0)
> +		if (memcmp(collected, "0707", 4) == 0)
>  			error("incorrect cpio method used: use -H newc option");
>  		else
>  			error("no cpio magic");
> -- 
> 2.31.1
> 

  reply	other threads:[~2021-11-10 17:30 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-10 12:38 [PATCH v4 0/4] initramfs: "crc" cpio format and INITRAMFS_PRESERVE_MTIME David Disseldorp
2021-11-10 12:38 ` [PATCH v4 1/4] initramfs: refactor do_header() cpio magic checks David Disseldorp
2021-11-10 12:38 ` [PATCH v4 2/4] initramfs: print helpful cpio error on "crc" magic David Disseldorp
2021-11-10 17:30   ` Matthew Wilcox [this message]
2021-11-10 20:54     ` David Disseldorp
2021-11-10 12:38 ` [PATCH v4 3/4] docs: remove mention of "crc" cpio format support David Disseldorp
2021-11-10 12:38 ` [PATCH v4 4/4] initramfs: add INITRAMFS_PRESERVE_MTIME Kconfig option David Disseldorp
2021-11-10 12:42 ` [PATCH v4 0/4] initramfs: "crc" cpio format and INITRAMFS_PRESERVE_MTIME Martin Wilck

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=YYwBzj0isuKOjjUe@casper.infradead.org \
    --to=willy@infradead.org \
    --cc=ddiss@suse.de \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=mwilck@suse.com \
    --cc=viro@zeniv.linux.org.uk \
    /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.