From: Randy Dunlap <randy.dunlap@oracle.com>
To: linux-kernel@vger.kernel.org
Cc: akpm@linux-foundation.org, gcosta@redhat.com, hpa@zytor.com,
lenb@kernel.org, mingo@elte.hu, tglx@linutronix.de,
ying.huang@intel.com
Subject: Re: + drivers-acpi-apei-erst-dbgc-get_useru64-doesnt-work-on-i386.patch added to -mm tree
Date: Wed, 11 Aug 2010 16:43:10 -0700 [thread overview]
Message-ID: <20100811164310.a4790773.randy.dunlap@oracle.com> (raw)
In-Reply-To: <201008112336.o7BNaNEj020805@imap1.linux-foundation.org>
On Wed, 11 Aug 2010 16:06:24 -0700 akpm@linux-foundation.org wrote:
>
> The patch titled
> drivers/acpi/apei/erst-dbg.c: get_user(u64) doesn't work on i386
> has been added to the -mm tree. Its filename is
> drivers-acpi-apei-erst-dbgc-get_useru64-doesnt-work-on-i386.patch
>
> Before you just go and hit "reply", please:
> a) Consider who else should be cc'ed
> b) Prefer to cc a suitable mailing list as well
> c) Ideally: find the original patch on the mailing list and do a
> reply-to-all to that, adding suitable additional cc's
>
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
>
> See http://userweb.kernel.org/~akpm/stuff/added-to-mm.txt to find
> out what to do about this
>
> The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/
>
> ------------------------------------------------------
> Subject: drivers/acpi/apei/erst-dbg.c: get_user(u64) doesn't work on i386
> From: Andrew Morton <akpm@linux-foundation.org>
>
> Might be an x86 bug? A get_user() on a u64 on i386 expands to
>
> #define __get_user_8(__ret_gu, __val_gu, ptr) \
> __get_user_x(X, __ret_gu, __val_gu, ptr)
>
> which emits a call to __get_user_X(), which doesn't exist.
>
> Kludge around it with copy_from_user().
>
Reported and fixed yesterday.
>
>
> While we're there, teach it how to print size_t's:
That was also patched, but yours is better.
I missed the cast in Huang's patch.
> drivers/acpi/apei/erst-dbg.c: In function 'erst_dbg_read':
> drivers/acpi/apei/erst-dbg.c:106: warning: format '%lx' expects type 'long unsigned int', but argument 3 has type 'ssize_t'
>
> Cc: Glauber Costa <gcosta@redhat.com>
> Cc: Len Brown <lenb@kernel.org>
> Cc: Huang Ying <ying.huang@intel.com>
> Cc: "H. Peter Anvin" <hpa@zytor.com>
> Cc: Ingo Molnar <mingo@elte.hu>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> ---
>
> drivers/acpi/apei/erst-dbg.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff -puN drivers/acpi/apei/erst-dbg.c~drivers-acpi-apei-erst-dbgc-get_useru64-doesnt-work-on-i386 drivers/acpi/apei/erst-dbg.c
> --- a/drivers/acpi/apei/erst-dbg.c~drivers-acpi-apei-erst-dbgc-get_useru64-doesnt-work-on-i386
> +++ a/drivers/acpi/apei/erst-dbg.c
> @@ -57,9 +57,10 @@ static long erst_dbg_ioctl(struct file *
>
> switch (cmd) {
> case APEI_ERST_CLEAR_RECORD:
> - rc = get_user(record_id, (u64 __user *)arg);
> + rc = copy_from_user(&record_id, (const void __user *)arg,
> + sizeof(record_id));
> if (rc)
> - return rc;
> + return -EFAULT;
> return erst_clear(record_id);
> case APEI_ERST_GET_RECORD_COUNT:
> rc = erst_get_record_count();
> @@ -104,7 +105,7 @@ retry:
> goto out;
> if (len > ERST_DBG_RECORD_LEN_MAX) {
> pr_warning(ERST_DBG_PFX
> - "Record (ID: 0x%llx) length is too long: 0x%lx\n",
> + "Record (ID: 0x%llx) length is too long: 0x%zx\n",
> id, len);
> rc = -EIO;
> goto out;
> _
---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
next parent reply other threads:[~2010-08-11 23:45 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <201008112336.o7BNaNEj020805@imap1.linux-foundation.org>
2010-08-11 23:43 ` Randy Dunlap [this message]
2010-08-12 0:33 ` + drivers-acpi-apei-erst-dbgc-get_useru64-doesnt-work-on-i386.patch added to -mm tree Andrew Morton
2010-08-12 0:42 ` Huang Ying
2010-08-12 1:35 ` H. Peter Anvin
2010-08-12 4:22 ` H. Peter Anvin
2010-08-12 4:30 ` Andrew Morton
2010-08-12 4:42 ` H. Peter Anvin
2010-08-12 5:06 ` H. Peter Anvin
2010-08-12 6:03 ` Andrew Morton
2010-08-12 6:10 ` H. Peter Anvin
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=20100811164310.a4790773.randy.dunlap@oracle.com \
--to=randy.dunlap@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=gcosta@redhat.com \
--cc=hpa@zytor.com \
--cc=lenb@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tglx@linutronix.de \
--cc=ying.huang@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox