All of lore.kernel.org
 help / color / mirror / Atom feed
From: Markos Chandras <Markos.Chandras@imgtec.com>
To: Rob Kendrick <rob.kendrick@codethink.co.uk>
Cc: <linux-mips@linux-mips.org>, Ralf Baechle <ralf@linux-mips.org>
Subject: Re: EdgeRouter Pro supported?  Strange FP problems
Date: Tue, 22 Jul 2014 16:38:24 +0100	[thread overview]
Message-ID: <53CE8570.8020404@imgtec.com> (raw)
In-Reply-To: <20140722143311.GK30723@humdrum>

On 07/22/2014 03:33 PM, Rob Kendrick wrote:
> 
>> What FPU problem are you seeing exactly? Could you show us a log for the
>> failure? Can you post a simple test case which will allow someone to
>> reproduce it?
> 
> A strange problem with awk (substr() doesn't work in either gawk or
> mawk).  I've tried binaries of awk that I've built myself, and binaries
> from Debian.  They all fail with my kernel, work fine with the 3.4
> kernel (with a load of Cavium patches) that ship with the EdgeRouter
> Pro.
> 
> I can see it with this awk script:
> 
> {
>   line = $ 0
>   prefix = substr(line, 1, 3)
>   suffix = substr(line, 9)
>   print "prefix is '" prefix "'"
>   print "suffix is '" suffix "'"
> }
> 
> execute with `echo "foo bar baz" | awk -f test.awk`.  With gawk, I get
> both outputs being "foo bar baz" and with mawk "".  Correct answers
> occur when using the shipped 3.4.
> 
> When you run gawk in linting mode, you get amusing errors like:
> 	warning: substr: length 3 too big for string indexing,
> 	truncating to 1.84467e+19

there have been quite a few FPU changes in 3.16. I am able to reproduce
the problem on EdgeRouter (non pro) but the result is not the same as
yours. The output using the 'gawk' is:

prefix is ''
suffix is 'baz'

a quick bisect between v3.15 and v3.16-rc1, which is the first tag with
all the new FPU changes, leads to the following bad commit:

08a07904e182895e1205f399465a3d622c0115b8
MIPS: math-emu: Remove most ifdefery.

Reverting the commit is not trivial unfortunately. Perhaps you could use
a v3.15 kernel for now (assuming it boots on that board) or perhaps use
an earlier revision before this bad commit (eg
9e8bad1f9c0370b2635175b34d6151b90a53da5c, which boots and your test
works for me)

[root@buildroot ~]# uname -a
Linux buildroot 3.15.0-rc5-00171-g9e8bad1f9c03 #1280 SMP PREEMPT Tue Jul
22 16:36:19 BST 2014 mips64 GNU/Linux
[root@buildroot ~]# echo "foo bar baz" | awk -f awk-test
prefix is 'foo'
suffix is 'baz'

I have CC'd Ralf who is the author of the commit. Ralf any idea?

-- 
markos

WARNING: multiple messages have this Message-ID (diff)
From: Markos Chandras <Markos.Chandras@imgtec.com>
To: Rob Kendrick <rob.kendrick@codethink.co.uk>
Cc: linux-mips@linux-mips.org, Ralf Baechle <ralf@linux-mips.org>
Subject: Re: EdgeRouter Pro supported?  Strange FP problems
Date: Tue, 22 Jul 2014 16:38:24 +0100	[thread overview]
Message-ID: <53CE8570.8020404@imgtec.com> (raw)
Message-ID: <20140722153824.2GCJAt0zTcbYcsgi7FfgI706gEoieNO9s7ltWRm9Rl8@z> (raw)
In-Reply-To: <20140722143311.GK30723@humdrum>

On 07/22/2014 03:33 PM, Rob Kendrick wrote:
> 
>> What FPU problem are you seeing exactly? Could you show us a log for the
>> failure? Can you post a simple test case which will allow someone to
>> reproduce it?
> 
> A strange problem with awk (substr() doesn't work in either gawk or
> mawk).  I've tried binaries of awk that I've built myself, and binaries
> from Debian.  They all fail with my kernel, work fine with the 3.4
> kernel (with a load of Cavium patches) that ship with the EdgeRouter
> Pro.
> 
> I can see it with this awk script:
> 
> {
>   line = $ 0
>   prefix = substr(line, 1, 3)
>   suffix = substr(line, 9)
>   print "prefix is '" prefix "'"
>   print "suffix is '" suffix "'"
> }
> 
> execute with `echo "foo bar baz" | awk -f test.awk`.  With gawk, I get
> both outputs being "foo bar baz" and with mawk "".  Correct answers
> occur when using the shipped 3.4.
> 
> When you run gawk in linting mode, you get amusing errors like:
> 	warning: substr: length 3 too big for string indexing,
> 	truncating to 1.84467e+19

there have been quite a few FPU changes in 3.16. I am able to reproduce
the problem on EdgeRouter (non pro) but the result is not the same as
yours. The output using the 'gawk' is:

prefix is ''
suffix is 'baz'

a quick bisect between v3.15 and v3.16-rc1, which is the first tag with
all the new FPU changes, leads to the following bad commit:

08a07904e182895e1205f399465a3d622c0115b8
MIPS: math-emu: Remove most ifdefery.

Reverting the commit is not trivial unfortunately. Perhaps you could use
a v3.15 kernel for now (assuming it boots on that board) or perhaps use
an earlier revision before this bad commit (eg
9e8bad1f9c0370b2635175b34d6151b90a53da5c, which boots and your test
works for me)

[root@buildroot ~]# uname -a
Linux buildroot 3.15.0-rc5-00171-g9e8bad1f9c03 #1280 SMP PREEMPT Tue Jul
22 16:36:19 BST 2014 mips64 GNU/Linux
[root@buildroot ~]# echo "foo bar baz" | awk -f awk-test
prefix is 'foo'
suffix is 'baz'

I have CC'd Ralf who is the author of the commit. Ralf any idea?

-- 
markos

  reply	other threads:[~2014-07-22 17:30 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-22 13:06 EdgeRouter Pro supported? Strange FP problems Rob Kendrick
2014-07-22 14:21 ` Markos Chandras
2014-07-22 14:21   ` Markos Chandras
2014-07-22 14:33   ` Rob Kendrick
2014-07-22 15:38     ` Markos Chandras [this message]
2014-07-22 15:38       ` Markos Chandras
2014-07-22 15:49       ` Rob Kendrick
2014-07-22 18:41         ` Aaro Koskinen
2014-07-23  9:03       ` Rob Kendrick
2014-07-23  9:06         ` Markos Chandras
2014-07-23  9:06           ` Markos Chandras
2014-07-22 15:26 ` John Crispin
2014-07-23  7:03   ` Rob Kendrick

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=53CE8570.8020404@imgtec.com \
    --to=markos.chandras@imgtec.com \
    --cc=linux-mips@linux-mips.org \
    --cc=ralf@linux-mips.org \
    --cc=rob.kendrick@codethink.co.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.