The following is what it looks like before patching.
It is not much readable.
user@ubuntu:/proc/sys/fs/binfmt_misc$ cat status
enableduser@ubuntu:/proc/sys/fs/binfmt_misc$
Signed-off-by: Qinghuang Feng <[email protected]>
---
diff --git a/fs/binfmt_misc.c b/fs/binfmt_misc.c
index f2744ab..72e8b24 100644
--- a/fs/binfmt_misc.c
+++ b/fs/binfmt_misc.c
@@ -652,7 +652,7 @@ static const struct file_operations bm_register_operations = {
static ssize_t
bm_status_read(struct file *file, char __user *buf, size_t nbytes, loff_t *ppos)
{
- char *s = enabled ? "enabled" : "disabled";
+ char *s = enabled ? "enabled\n" : "disabled\n";
return simple_read_from_buffer(buf, nbytes, ppos, s, strlen(s));
}
On Mon, 17 Nov 2008 15:38:16 +0800
Qinghuang Feng <[email protected]> wrote:
> The following is what it looks like before patching.
> It is not much readable.
>
> user@ubuntu:/proc/sys/fs/binfmt_misc$ cat status
> enableduser@ubuntu:/proc/sys/fs/binfmt_misc$
>
> Signed-off-by: Qinghuang Feng <[email protected]>
> ---
> diff --git a/fs/binfmt_misc.c b/fs/binfmt_misc.c
> index f2744ab..72e8b24 100644
> --- a/fs/binfmt_misc.c
> +++ b/fs/binfmt_misc.c
> @@ -652,7 +652,7 @@ static const struct file_operations bm_register_operations = {
> static ssize_t
> bm_status_read(struct file *file, char __user *buf, size_t nbytes, loff_t *ppos)
> {
> - char *s = enabled ? "enabled" : "disabled";
> + char *s = enabled ? "enabled\n" : "disabled\n";
>
> return simple_read_from_buffer(buf, nbytes, ppos, s, strlen(s));
> }
Well. That's a bugfix, really.
It fixes a bug which has been there for a very long time, in a way
which is non-backward-compatible.
Are there existing applications out there which will disastrously fail
if we add a newline to the /proc/sys/fs/binfmt_misc/status contents? I
somehow doubt it. But we shall find out :)