Linux-Fsdevel Archive on
 help / color / Atom feed
* PROBLEM: fs: hugetlbfs: boot failure due to specs sentinel missing on linux-next
@ 2019-02-04 13:54 Abel Vesa
  2019-02-04 14:04 ` David Howells
  0 siblings, 1 reply; 2+ messages in thread
From: Abel Vesa @ 2019-02-04 13:54 UTC (permalink / raw)
  To: David Howells; +Cc: viro, linux-fsdevel, linux-kernel, dl-linux-imx

Hi David,

I found this this morning trying to boot up i.MX8MQ platform.
It's totally unrelated though.

Your commit:
2284cf59cbcec "hugetlbfs: Convert to fs_context"
doesn't put a sentinel at the end of hugetlb_param_specs.

Then, the your commit:
f512b838c1048 "vfs: Add configuration parser helpers"
adds the fs_validate_description where you check for sentinel
but since the hugetlb_param_specs doesn't have it it freezes
inside the following printf:

+                       /* Check that the type is in range */
+                       if (t == __fs_param_wasnt_defined ||
+                           t >= nr__fs_parameter_type) {
+                               pr_err("VALIDATE %s: PARAM[%s] Bad type %u\n",
+                                      name, param->name, t);
+                               good = false;
+                       } else if (t == fs_param_is_enum) {
+                               enums = true;
+                       }

IMHO, what happens here is the missing sentinel allows your checking
here to go out of bounds and then the param->name is whatever garbage
happens to be at the end of that array and that makes the printf to

This isn't something I looked at really close, so I might be wrong.

I wasn't able to find the mail with the patch to reply to that
so I had to write this as a separate mail.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, back to index

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-04 13:54 PROBLEM: fs: hugetlbfs: boot failure due to specs sentinel missing on linux-next Abel Vesa
2019-02-04 14:04 ` David Howells

Linux-Fsdevel Archive on

Archives are clonable:
	git clone --mirror linux-fsdevel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-fsdevel linux-fsdevel/ \
	public-inbox-index linux-fsdevel

Newsgroup available over NNTP:

AGPL code for this site: git clone public-inbox