Netdev List
 help / color / mirror / Atom feed
* Re: [PATCH] pch_can: fix tseg1/tseg2 setting issue
From: David Miller @ 2011-02-10  0:46 UTC (permalink / raw)
  To: tomoya-linux-ECg8zkTtlr0C6LszWs/t0g
  Cc: andrew.chih.howe.khor-ral2JQCrhuEAvxtiuMwx3w,
	qi.wang-ral2JQCrhuEAvxtiuMwx3w, netdev-u79uwXL29TY76Z2rM5mHXA,
	yong.y.wang-ral2JQCrhuEAvxtiuMwx3w,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
	toshiharu-linux-ECg8zkTtlr0C6LszWs/t0g,
	kok.howg.ewe-ral2JQCrhuEAvxtiuMwx3w,
	joel.clark-ral2JQCrhuEAvxtiuMwx3w, wg-5Yr1BZd7O62+XT7JhA+gdA
In-Reply-To: <1297298399-6250-1-git-send-email-tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>

From: Tomoya MORINAGA <tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>
Date: Thu, 10 Feb 2011 09:39:59 +0900

> Previous patch "[PATCH 1/3] pch_can: fix 800k comms issue" is wrong.
> I should have modified tseg1_min not tseg2_min.
> This patch reverts tseg2_min to 1 and set tseg1_min to 2.
> 
> Signed-off-by: Tomoya MORINAGA <tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>

Applied, thanks.

^ permalink raw reply

* [PATCH] pch_can: fix tseg1/tseg2 setting issue
From: Tomoya MORINAGA @ 2011-02-10  0:39 UTC (permalink / raw)
  To: wg-5Yr1BZd7O62+XT7JhA+gdA, socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA
  Cc: andrew.chih.howe.khor-ral2JQCrhuEAvxtiuMwx3w,
	qi.wang-ral2JQCrhuEAvxtiuMwx3w,
	yong.y.wang-ral2JQCrhuEAvxtiuMwx3w,
	toshiharu-linux-ECg8zkTtlr0C6LszWs/t0g,
	kok.howg.ewe-ral2JQCrhuEAvxtiuMwx3w,
	joel.clark-ral2JQCrhuEAvxtiuMwx3w

Previous patch "[PATCH 1/3] pch_can: fix 800k comms issue" is wrong.
I should have modified tseg1_min not tseg2_min.
This patch reverts tseg2_min to 1 and set tseg1_min to 2.

Signed-off-by: Tomoya MORINAGA <tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>
---
 drivers/net/can/pch_can.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/can/pch_can.c b/drivers/net/can/pch_can.c
index 7d8bc12..e54712b 100644
--- a/drivers/net/can/pch_can.c
+++ b/drivers/net/can/pch_can.c
@@ -185,9 +185,9 @@ struct pch_can_priv {
 
 static struct can_bittiming_const pch_can_bittiming_const = {
 	.name = KBUILD_MODNAME,
-	.tseg1_min = 1,
+	.tseg1_min = 2,
 	.tseg1_max = 16,
-	.tseg2_min = 2,
+	.tseg2_min = 1,
 	.tseg2_max = 8,
 	.sjw_max = 4,
 	.brp_min = 1,
-- 
1.7.3.4

^ permalink raw reply related

* Re: [PATCH 1/3 v2] pch_can: fix 800k comms issue
From: David Miller @ 2011-02-09 23:57 UTC (permalink / raw)
  To: tomoya-linux-ECg8zkTtlr0C6LszWs/t0g
  Cc: andrew.chih.howe.khor-ral2JQCrhuEAvxtiuMwx3w,
	qi.wang-ral2JQCrhuEAvxtiuMwx3w, netdev-u79uwXL29TY76Z2rM5mHXA,
	yong.y.wang-ral2JQCrhuEAvxtiuMwx3w,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
	toshiharu-linux-ECg8zkTtlr0C6LszWs/t0g,
	kok.howg.ewe-ral2JQCrhuEAvxtiuMwx3w,
	joel.clark-ral2JQCrhuEAvxtiuMwx3w, wg-5Yr1BZd7O62+XT7JhA+gdA
In-Reply-To: <1297295776-3735-1-git-send-email-tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>

From: Tomoya MORINAGA <tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>
Date: Thu, 10 Feb 2011 08:56:16 +0900

> Previous patch "[PATCH 1/3] pch_can: fix 800k comms issue" is wrong.
> I should have modified tseg1_min not tseg2_min.
> Please discard previous patch and use this patch.

I can't "discard" the previous patch as it's already pushed upstream
into my GIT tree and therefore cannot be reverted.

You need to send a relative fix-up patch.

^ permalink raw reply

* [PATCH 1/3 v2] pch_can: fix 800k comms issue
From: Tomoya MORINAGA @ 2011-02-09 23:56 UTC (permalink / raw)
  To: wg-5Yr1BZd7O62+XT7JhA+gdA, socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA
  Cc: andrew.chih.howe.khor-ral2JQCrhuEAvxtiuMwx3w,
	qi.wang-ral2JQCrhuEAvxtiuMwx3w,
	yong.y.wang-ral2JQCrhuEAvxtiuMwx3w,
	toshiharu-linux-ECg8zkTtlr0C6LszWs/t0g,
	kok.howg.ewe-ral2JQCrhuEAvxtiuMwx3w,
	joel.clark-ral2JQCrhuEAvxtiuMwx3w

Previous patch "[PATCH 1/3] pch_can: fix 800k comms issue" is wrong.
I should have modified tseg1_min not tseg2_min.
Please discard previous patch and use this patch.

Currently, 800k comms fails since prop_seg set zero.
(EG20T PCH CAN register of prop_seg must be set more than 1)
To prevent prop_seg set to zero, change tseg2_min 1 to 2.

Signed-off-by: Tomoya MORINAGA <tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>
---
 drivers/net/can/pch_can.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/can/pch_can.c b/drivers/net/can/pch_can.c
index c42e972..0534eed 100644
--- a/drivers/net/can/pch_can.c
+++ b/drivers/net/can/pch_can.c
@@ -185,7 +185,7 @@ struct pch_can_priv {
 
 static struct can_bittiming_const pch_can_bittiming_const = {
 	.name = KBUILD_MODNAME,
-	.tseg1_min = 1,
+	.tseg1_min = 2,
 	.tseg1_max = 16,
 	.tseg2_min = 1,
 	.tseg2_max = 8,
-- 
1.7.3.4

^ permalink raw reply related

* RE: [net-next-2.6 PATCH 0/5] enic: updates to version 2.1.1.6
From: Vasanthy Kolluri (vkolluri) @ 2011-02-09 23:19 UTC (permalink / raw)
  To: David Miller; +Cc: netdev
In-Reply-To: <20110207.113932.226768580.davem@davemloft.net>

Hi Dave,

Sorry for the trouble. Will handle such cases better next time.
Thanks for taking care of it this time.

Thanks
Vasanthy

-----Original Message-----
From: David Miller [mailto:davem@davemloft.net] 
Sent: Monday, February 07, 2011 11:40 AM
To: Vasanthy Kolluri (vkolluri)
Cc: netdev@vger.kernel.org
Subject: Re: [net-next-2.6 PATCH 0/5] enic: updates to version 2.1.1.6

From: "Vasanthy Kolluri (vkolluri)" <vkolluri@cisco.com>
Date: Mon, 7 Feb 2011 11:32:08 -0800

> Hi David,
> 
> The below patch series should apply clean on top of another enic patch
> "enic: Decouple mac address registration and deregistration from port
> profile set operation" submitted earlier by roprabhu@cisco.com. Just
> want to ensure that it's not missed.
> 
> Please let me know if there is still a need to re-spin.

How in the world was I supposed to know about this dependency?

Tell me.

^ permalink raw reply

* Re: [RFC PATCH net-next] net: rename group sysfs entry to netdev_group
From: David Miller @ 2011-02-09 22:05 UTC (permalink / raw)
  To: dfeng; +Cc: netdev, eric.dumazet, therbert, ebiederm, shemminger, ddvlad
In-Reply-To: <20110209.140323.39178091.davem@davemloft.net>

From: David Miller <davem@davemloft.net>
Date: Wed, 09 Feb 2011 14:03:23 -0800 (PST)

> From: Xiaotian feng <dfeng@redhat.com>
> Date: Wed,  9 Feb 2011 18:52:49 +0800
> 
>> From: Xiaotian Feng <dfeng@redhat.com>
>> 
>> commit a512b92 adds sysfs entry for net device group, but
>> before this commit, tun also uses group sysfs, so after this
>> commit checkin, kernel warns like this:
>>     sysfs: cannot create duplicate filename '/devices/virtual/net/vnet0/group'
>> 
>> Since tun has used this for years, rename sysfs under tun might
>> break existing userspace, so rename group sysfs entry for net device
>> group is a better choice.
>> 
>> Signed-off-by: Xiaotian Feng <dfeng@redhat.com>
> 
> I don't think we have much choice in this matter, so I have applied
> this patch, thanks!

Wait, you didn't even build test this patch?!?!?!?!

net/core/net-sysfs.c: In function ‘format_netdev_group’:
net/core/net-sysfs.c:298: error: ‘const struct net_device’ has no member named ‘netdev_group’
net/core/net-sysfs.c: At top level:
net/core/net-sysfs.c:333: error: ‘show_group’ undeclared here (not in a function)

"RFC" doesn't preclude you from at least build testing patches you
post.

Sigh...




^ permalink raw reply

* Re: [RFC PATCH net-next] net: rename group sysfs entry to netdev_group
From: David Miller @ 2011-02-09 22:03 UTC (permalink / raw)
  To: dfeng; +Cc: netdev, eric.dumazet, therbert, ebiederm, shemminger, ddvlad
In-Reply-To: <1297248769-28530-1-git-send-email-dfeng@redhat.com>

From: Xiaotian feng <dfeng@redhat.com>
Date: Wed,  9 Feb 2011 18:52:49 +0800

> From: Xiaotian Feng <dfeng@redhat.com>
> 
> commit a512b92 adds sysfs entry for net device group, but
> before this commit, tun also uses group sysfs, so after this
> commit checkin, kernel warns like this:
>     sysfs: cannot create duplicate filename '/devices/virtual/net/vnet0/group'
> 
> Since tun has used this for years, rename sysfs under tun might
> break existing userspace, so rename group sysfs entry for net device
> group is a better choice.
> 
> Signed-off-by: Xiaotian Feng <dfeng@redhat.com>

I don't think we have much choice in this matter, so I have applied
this patch, thanks!

^ permalink raw reply

* Re: Linux 2.6.38-rc4 (hysdn: BUG)
From: Linus Torvalds @ 2011-02-09 22:00 UTC (permalink / raw)
  To: David Miller; +Cc: randy.dunlap, netdev, linux-kernel, isdn
In-Reply-To: <20110209.135751.112605587.davem@davemloft.net>

On Wed, Feb 9, 2011 at 1:57 PM, David Miller <davem@davemloft.net> wrote:
>
> I propose we just kill this stuff off completely.
>
> I note that there is code in other places of this driver that copy
> the read-only revision string into a local string buffer then pass
> it into the hysdn_getrev() function, it just doesn't happen in this
> one spot.
>
> Anyways, I think I'll fix this like so:

Ack from me. Removing terminally buggy and pointless code is certainly
better than trying to fix it up. No amount of lipstick will make that
pig look good.

                      Linus

^ permalink raw reply

* Re: Linux 2.6.38-rc4 (hysdn: BUG)
From: David Miller @ 2011-02-09 21:57 UTC (permalink / raw)
  To: randy.dunlap; +Cc: torvalds, netdev, linux-kernel, isdn
In-Reply-To: <20110209132529.76927f5f.randy.dunlap@oracle.com>

From: Randy Dunlap <randy.dunlap@oracle.com>
Date: Wed, 9 Feb 2011 13:25:29 -0800

> On Wed, 9 Feb 2011 11:44:00 -0800 Linus Torvalds wrote:
> 
>> On Wed, Feb 9, 2011 at 9:24 AM, Randy Dunlap <randy.dunlap@oracle.com> wrote:
>> >
>> > on x86_64.  no HYSDN hardware found (correct).
>> > Nearly allmodconfig.
>> >
>> >
>> > [   65.397577] HYSDN: module Rev: 1.6.6.6 loaded
>> > [   65.397584] HYSDN: network interface Rev: 1.8.6.4
>> > [   65.398057] HYSDN: 0 card(s) found.
>> > [   65.398121] BUG: unable to handle kernel paging request at ffffffffa06c99f0
>> > [   65.398269] IP: [<ffffffffa06c68ba>] hysdn_getrev+0x2e/0x50 [hysdn]
>> > [   65.398379] PGD 1a14067 PUD 1a18063 PMD 6f6c1067 PTE 800000006ce8c161
>> > [   65.398613] Oops: 0003 [#1] SMP DEBUG_PAGEALLOC
>> > [   65.400030]
>> > [   65.400030] Pid: 2497, comm: modprobe Not tainted 2.6.38-rc4 #1 0TY565/OptiPlex 745
>> > [   65.400030] RIP: 0010:[<ffffffffa06c68ba>]  [<ffffffffa06c68ba>] hysdn_getrev+0x2e/0x50 [hysdn]
>> > [   65.400030] RSP: 0018:ffff88006eec1e68  EFLAGS: 00010206
>> > [   65.400030] RAX: ffffffffa06c99f1 RBX: ffffffffa06c99e9 RCX: ffff88007c4159a0
>> 
>> The instruction sequence decodes to
>> 
>>   1e:	be 24 00 00 00       	mov    $0x24,%esi
>>   23:	48 89 df             	mov    %rbx,%rdi
>>   26:	e8 5b 39 c0 e0       	callq  0xffffffffe0c03986
>>   2b:*	c6 40 ff 00          	movb   $0x0,-0x1(%rax)     <-- trapping instruction
>> 
>> which seems to be this
>> 
>>                 p = strchr(rev, '$');
>>                 *--p = 0;
>> 
>> code. And yes, it's total crap, because while "p" and "rev" are "char
>> *", the string that is passed in is actually of type "const char *",
>> so that function is seriously broken. It's also seriously broken to
>> not test that "p" is non-NULL - the function would just break if there
>> is a colon in the string but not a '$'.
>> 
>> And hysdn_procconf_init() passes in a constant string to the thing:
>> 
>>     static char *hysdn_procconf_revision = "$Revision: 1.8.6.4 $";
>> 
>> What happens is that it breaks when we mark the constant section as
>> read-only, because you have CONFIG_DEBUG_RODATA enabled.
>> 
>> So the fix seems to be to
>>  - fix the prototype for hysdn_getrev() to not have "const".
>>  - fix hysdn_procconf_init() to not pass in a constant string to it
>> 
>> The minimal patch would appear to be something like the appended. UNTESTED!
> 
> for your patch:
> 
> Tested-and-acked-by: Randy Dunlap <randy.dunlap@oracle.com>

This stuff just prints out a CVS revision string that hasn't changed
in 10 years into the kernel log.

I propose we just kill this stuff off completely.

I note that there is code in other places of this driver that copy
the read-only revision string into a local string buffer then pass
it into the hysdn_getrev() function, it just doesn't happen in this
one spot.

Anyways, I think I'll fix this like so:

--------------------
isdn: hysdn: Kill (partially buggy) CVS regision log reporting.

Some cases try to modify const strings, and in any event the
CVS revision strings have not changed in over ten years making
these printouts completely worthless.

Just kill all of this stuff off.

Reported-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
---
 drivers/isdn/hysdn/hysdn_defs.h     |    2 --
 drivers/isdn/hysdn/hysdn_init.c     |   26 +-------------------------
 drivers/isdn/hysdn/hysdn_net.c      |    3 ---
 drivers/isdn/hysdn/hysdn_procconf.c |    3 +--
 4 files changed, 2 insertions(+), 32 deletions(-)

diff --git a/drivers/isdn/hysdn/hysdn_defs.h b/drivers/isdn/hysdn/hysdn_defs.h
index 729df40..18b801a 100644
--- a/drivers/isdn/hysdn/hysdn_defs.h
+++ b/drivers/isdn/hysdn/hysdn_defs.h
@@ -227,7 +227,6 @@ extern hysdn_card *card_root;	/* pointer to first card */
 /*************************/
 /* im/exported functions */
 /*************************/
-extern char *hysdn_getrev(const char *);
 
 /* hysdn_procconf.c */
 extern int hysdn_procconf_init(void);	/* init proc config filesys */
@@ -259,7 +258,6 @@ extern int hysdn_tx_cfgline(hysdn_card *, unsigned char *,
 
 /* hysdn_net.c */
 extern unsigned int hynet_enable; 
-extern char *hysdn_net_revision;
 extern int hysdn_net_create(hysdn_card *);	/* create a new net device */
 extern int hysdn_net_release(hysdn_card *);	/* delete the device */
 extern char *hysdn_net_getname(hysdn_card *);	/* get name of net interface */
diff --git a/drivers/isdn/hysdn/hysdn_init.c b/drivers/isdn/hysdn/hysdn_init.c
index b7cc5c2..0ab42ac 100644
--- a/drivers/isdn/hysdn/hysdn_init.c
+++ b/drivers/isdn/hysdn/hysdn_init.c
@@ -36,7 +36,6 @@ MODULE_DESCRIPTION("ISDN4Linux: Driver for HYSDN cards");
 MODULE_AUTHOR("Werner Cornelius");
 MODULE_LICENSE("GPL");
 
-static char *hysdn_init_revision = "$Revision: 1.6.6.6 $";
 static int cardmax;		/* number of found cards */
 hysdn_card *card_root = NULL;	/* pointer to first card */
 static hysdn_card *card_last = NULL;	/* pointer to first card */
@@ -49,25 +48,6 @@ static hysdn_card *card_last = NULL;	/* pointer to first card */
 /* Additionally newer versions may be activated without rebooting.          */
 /****************************************************************************/
 
-/******************************************************/
-/* extract revision number from string for log output */
-/******************************************************/
-char *
-hysdn_getrev(const char *revision)
-{
-	char *rev;
-	char *p;
-
-	if ((p = strchr(revision, ':'))) {
-		rev = p + 2;
-		p = strchr(rev, '$');
-		*--p = 0;
-	} else
-		rev = "???";
-	return rev;
-}
-
-
 /****************************************************************************/
 /* init_module is called once when the module is loaded to do all necessary */
 /* things like autodetect...                                                */
@@ -175,13 +155,9 @@ static int hysdn_have_procfs;
 static int __init
 hysdn_init(void)
 {
-	char tmp[50];
 	int rc;
 
-	strcpy(tmp, hysdn_init_revision);
-	printk(KERN_NOTICE "HYSDN: module Rev: %s loaded\n", hysdn_getrev(tmp));
-	strcpy(tmp, hysdn_net_revision);
-	printk(KERN_NOTICE "HYSDN: network interface Rev: %s \n", hysdn_getrev(tmp));
+	printk(KERN_NOTICE "HYSDN: module loaded\n");
 
 	rc = pci_register_driver(&hysdn_pci_driver);
 	if (rc)
diff --git a/drivers/isdn/hysdn/hysdn_net.c b/drivers/isdn/hysdn/hysdn_net.c
index feec8d8..11f2cce 100644
--- a/drivers/isdn/hysdn/hysdn_net.c
+++ b/drivers/isdn/hysdn/hysdn_net.c
@@ -26,9 +26,6 @@
 unsigned int hynet_enable = 0xffffffff; 
 module_param(hynet_enable, uint, 0);
 
-/* store the actual version for log reporting */
-char *hysdn_net_revision = "$Revision: 1.8.6.4 $";
-
 #define MAX_SKB_BUFFERS 20	/* number of buffers for keeping TX-data */
 
 /****************************************************************************/
diff --git a/drivers/isdn/hysdn/hysdn_procconf.c b/drivers/isdn/hysdn/hysdn_procconf.c
index 96b3e39..5fe83bd 100644
--- a/drivers/isdn/hysdn/hysdn_procconf.c
+++ b/drivers/isdn/hysdn/hysdn_procconf.c
@@ -23,7 +23,6 @@
 #include "hysdn_defs.h"
 
 static DEFINE_MUTEX(hysdn_conf_mutex);
-static char *hysdn_procconf_revision = "$Revision: 1.8.6.4 $";
 
 #define INFO_OUT_LEN 80		/* length of info line including lf */
 
@@ -404,7 +403,7 @@ hysdn_procconf_init(void)
 		card = card->next;	/* next entry */
 	}
 
-	printk(KERN_NOTICE "HYSDN: procfs Rev. %s initialised\n", hysdn_getrev(hysdn_procconf_revision));
+	printk(KERN_NOTICE "HYSDN: procfs initialised\n");
 	return (0);
 }				/* hysdn_procconf_init */
 
-- 
1.7.4


^ permalink raw reply related

* Re: STMMAC driver: NFS Problem on 2.6.37
From: Chuck Lever @ 2011-02-09 21:26 UTC (permalink / raw)
  To: Brian Downing
  Cc: deepaksi, Armando VISCONTI, Trond Myklebust,
	netdev-u79uwXL29TY76Z2rM5mHXA, Linux NFS Mailing List,
	Shiraz HASHIM, Viresh KUMAR, Peppe CAVALLARO, amitgoel
In-Reply-To: <20110209205855.GB6402-QEOkiq82tQWoLK6CJbI5/KxOck334EZe@public.gmane.org>


On Feb 9, 2011, at 3:58 PM, Brian Downing wrote:

> On Wed, Feb 09, 2011 at 03:12:22PM -0500, Chuck Lever wrote:
>> Based on your console logs, I see that the working case uses UDP to
>> contact the server's mountd, but the failing case uses TCP.  You can
>> try explicitly specifying "proto=udp" to force the use of UDP, to test
>> this theory.
> 
> This does indeed make it work again for me, thanks!
> 
>> Meanwhile, the patch description explicitly states that the default
>> mount option settings have changed.  Does it make sense to change the
>> default behavior of NFSROOT mounts to use UDP again?  I don't see
>> another way to make this process more reliable across NIC
>> initialization.  If this is considered a regression, we can make a
>> patch for 2.6.38-rc and 2.6.37.
> 
> I only use nfsroot for development, so I don't have a terribly strong
> opinion.  I would point out though that the default u-boot parameters
> for nfsrooting a lot of boards will no longer work at this point, so if
> it's not patched to work again without specifying nfs options I think
> there should at least be a note in the documentation and possibly a
> "maybe try proto=udp?" console message on failure.
> 
> I assume it's not feasable to either wait until the chosen interface's
> link is ready before trying to mount nfsroot, or retrying TCP-based
> connections a little bit more aggressively/at all?

Our goal is to use the same mount logic for both normal user space mounts and for NFSROOT (that was the purpose of the patch series this particular patch comes from).  It's exceptionally difficult to add a special case for retrying TCP connections here, as that would change the behavior of user space mounts, which often want to fail quickly, and don't need to worry about NIC initialization.

Sounds like the right thing to do is restore the default UDP behavior.  I'll cook up a patch.

-- 
Chuck Lever
chuck[dot]lever[at]oracle[dot]com

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply

* Re: Linux 2.6.38-rc4 (hysdn: BUG)
From: Randy Dunlap @ 2011-02-09 21:25 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: netdev, Linux Kernel Mailing List, Karsten Keil
In-Reply-To: <AANLkTimUg8Dm9mZotubcgPHz8_at=_hnbeWUo-LfSALp@mail.gmail.com>

On Wed, 9 Feb 2011 11:44:00 -0800 Linus Torvalds wrote:

> On Wed, Feb 9, 2011 at 9:24 AM, Randy Dunlap <randy.dunlap@oracle.com> wrote:
> >
> > on x86_64.  no HYSDN hardware found (correct).
> > Nearly allmodconfig.
> >
> >
> > [   65.397577] HYSDN: module Rev: 1.6.6.6 loaded
> > [   65.397584] HYSDN: network interface Rev: 1.8.6.4
> > [   65.398057] HYSDN: 0 card(s) found.
> > [   65.398121] BUG: unable to handle kernel paging request at ffffffffa06c99f0
> > [   65.398269] IP: [<ffffffffa06c68ba>] hysdn_getrev+0x2e/0x50 [hysdn]
> > [   65.398379] PGD 1a14067 PUD 1a18063 PMD 6f6c1067 PTE 800000006ce8c161
> > [   65.398613] Oops: 0003 [#1] SMP DEBUG_PAGEALLOC
> > [   65.400030]
> > [   65.400030] Pid: 2497, comm: modprobe Not tainted 2.6.38-rc4 #1 0TY565/OptiPlex 745
> > [   65.400030] RIP: 0010:[<ffffffffa06c68ba>]  [<ffffffffa06c68ba>] hysdn_getrev+0x2e/0x50 [hysdn]
> > [   65.400030] RSP: 0018:ffff88006eec1e68  EFLAGS: 00010206
> > [   65.400030] RAX: ffffffffa06c99f1 RBX: ffffffffa06c99e9 RCX: ffff88007c4159a0
> 
> The instruction sequence decodes to
> 
>   1e:	be 24 00 00 00       	mov    $0x24,%esi
>   23:	48 89 df             	mov    %rbx,%rdi
>   26:	e8 5b 39 c0 e0       	callq  0xffffffffe0c03986
>   2b:*	c6 40 ff 00          	movb   $0x0,-0x1(%rax)     <-- trapping instruction
> 
> which seems to be this
> 
>                 p = strchr(rev, '$');
>                 *--p = 0;
> 
> code. And yes, it's total crap, because while "p" and "rev" are "char
> *", the string that is passed in is actually of type "const char *",
> so that function is seriously broken. It's also seriously broken to
> not test that "p" is non-NULL - the function would just break if there
> is a colon in the string but not a '$'.
> 
> And hysdn_procconf_init() passes in a constant string to the thing:
> 
>     static char *hysdn_procconf_revision = "$Revision: 1.8.6.4 $";
> 
> What happens is that it breaks when we mark the constant section as
> read-only, because you have CONFIG_DEBUG_RODATA enabled.
> 
> So the fix seems to be to
>  - fix the prototype for hysdn_getrev() to not have "const".
>  - fix hysdn_procconf_init() to not pass in a constant string to it
> 
> The minimal patch would appear to be something like the appended. UNTESTED!

for your patch:

Tested-and-acked-by: Randy Dunlap <randy.dunlap@oracle.com>

> Btw, all of this code seems to go back to before the git history even
> started, so it doesn't seem to be new. I assume you haven't tried
> booting these all-module kernels before? Or is it just the
> DEBUG_RODATA thing that is new for you?

Neither is new.  I tested and reported many-modules on 2.6.37-rc1 and
reported these 2 bugs:

https://bugzilla.kernel.org/show_bug.cgi?id=22912
https://bugzilla.kernel.org/show_bug.cgi?id=22882

and that was with CONFIG_DEBUG_RODATA=y.
I don't know how hysdn was missed at that time.

---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

^ permalink raw reply

* bleeding edge kernels misidentify my Broadcom BCM4401-B0
From: Celejar @ 2011-02-09 20:58 UTC (permalink / raw)
  To: netdev

Hi,

Recently, while using bleeding edge kernels (built from git pulls of
vanillas sources from kernel.org), my Broadcom BCM4401-B0 Ethernet
card, normally driven by the b44 driver, has stopped working.  Poking
around, I discovered that the card is no longer correctly identified;
it now shows up (with 'lspci -v' as root) as this bizarre device:

06:01.0 Network and computing encryption device: Broadcom Corporation Device 0010 (rev 02) (prog-if 10)
        Subsystem: Allied Telesis, Inc Device 0010
        Flags: fast devsel, IRQ 10
        Memory at d0000000 (32-bit, non-prefetchable) [disabled] [size=8K]
        Capabilities: [40] Power Management version 2

Using a stock Debian kernel (2.6.32-5-686), it shows up (and works)
correctly:

06:01.0 Ethernet controller: Broadcom Corporation BCM4401-B0 100Base-TX (rev 02)
        Subsystem: Acer Incorporated [ALI] Device 0090
        Flags: bus master, fast devsel, latency 64, IRQ 21
        Memory at d0000000 (32-bit, non-prefetchable) [size=8K]
        Capabilities: [40] Power Management version 2
        Kernel driver in use: b44

What on earth is this all about?

I tried another kernel I had lying around,
2.6.37-rc6-lizzie-00132-g55ec86f (built from kernel.org vanilla
sources), and it also works fine.  I can do a bisection if necessary,
but I figured I'd check here first.

[Please cc. me on replies.]

Celejar
-- 
foffl.sourceforge.net - Feeds OFFLine, an offline RSS/Atom aggregator
mailmin.sourceforge.net - remote access via secure (OpenPGP) email
ssuds.sourceforge.net - A Simple Sudoku Solver and Generator


^ permalink raw reply

* Re: [net-2.6][2.6.38-rc2] panic during stress testing
From: David Miller @ 2011-02-09 20:46 UTC (permalink / raw)
  To: jesse.brandeburg; +Cc: netdev, jeffrey.e.pieper
In-Reply-To: <alpine.WNT.2.00.1102081611130.5424@JBRANDEB-DESK2.amr.corp.intel.com>

From: "Brandeburg, Jesse" <jesse.brandeburg@intel.com>
Date: Wed, 9 Feb 2011 10:12:03 -0800 (Pacific Standard Time)

> neigh appears to be zero? since the check just above in dst_destroy was 
> checking it against NULL already, maybe we have a race, with some other 
> free of neigh (assigned from dst->neighbor)
> 
> This is quickly getting beyond me, I tried to check for some changes 
> around dst->neighbor but didn't see anything recent.

"neigh" is non-zero, however it is freed memory and thus unmapped by
the "use after free" debugging code.

That's why it OOPS's.

^ permalink raw reply

* Re: [PATCH -next] can: softing_cs needs slab.h
From: David Miller @ 2011-02-09 20:43 UTC (permalink / raw)
  To: randy.dunlap-veTT2BtV2gBXrIkS9f7CXA
  Cc: socketcan-core-0fE9KPoRgkgATYTw5x5z8w, sfr-3FnU+UHB4dNDw9hX6IcOSA,
	linux-next-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <20110209084456.802370fa.randy.dunlap-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>

From: Randy Dunlap <randy.dunlap-veTT2BtV2gBXrIkS9f7CXA@public.gmane.org>
Date: Wed, 9 Feb 2011 08:44:56 -0800

> From: Randy Dunlap <randy.dunlap-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
> 
> softing_cs.c uses kzalloc & kfree, so it needs to include linux/slab.h.
> 
> drivers/net/can/softing/softing_cs.c:234: error: implicit declaration of function 'kfree'
> drivers/net/can/softing/softing_cs.c:271: error: implicit declaration of function 'kzalloc'
> 
> Signed-off-by: Randy Dunlap <randy.dunlap-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>

Applied, thanks Randy.

^ permalink raw reply

* Re: [PATCH 0/1] netfilter: netfilter fixes
From: David Miller @ 2011-02-09 20:40 UTC (permalink / raw)
  To: kaber; +Cc: netfilter-devel, netdev
In-Reply-To: <1297262369-26393-1-git-send-email-kaber@trash.net>

From: kaber@trash.net
Date: Wed,  9 Feb 2011 15:39:28 +0100

> Hi Dave,
> 
> following is a single netfilter fix for net-2.6.git, fixing use of conntrack
> templates when TCP conntrack kills the current conntrack in TIME_WAIT state
> in order to have the conntrack core create a fresh one, from Pablo.
> 
> Please pull from:
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6.git master

Also pulled, thanks a lot.

^ permalink raw reply

* Re: [PATCH 0/2] netfilter: netfilter update
From: David Miller @ 2011-02-09 20:39 UTC (permalink / raw)
  To: kaber; +Cc: netfilter-devel, netdev
In-Reply-To: <1297262027-26237-1-git-send-email-kaber@trash.net>

From: kaber@trash.net
Date: Wed,  9 Feb 2011 15:33:45 +0100

> following are two IPVS patches for net-next-2.6, fixing:
> 
> - use of an incorrect lock in the SCTP module, from Simon
> 
> - a precedence bug in ip_vs_sync_switch_mode(), from Dan Carpenter
> 
> Please pull from:
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6.git master

Pulled, thanks Patrick.

^ permalink raw reply

* Re: [PATCH v2] pch_gbe: Fix the issue which a driver locks when rx offload is set by ethtool
From: David Miller @ 2011-02-09 20:28 UTC (permalink / raw)
  To: toshiharu-linux
  Cc: netdev, linux-kernel, qi.wang, yong.y.wang, andrew.chih.howe.khor,
	joel.clark, kok.howg.ewe, tomoya-linux
In-Reply-To: <4D524C7F.1000700@dsn.okisemi.com>

From: Toshiharu Okada <toshiharu-linux@dsn.okisemi.com>
Date: Wed, 09 Feb 2011 17:12:47 +0900

> This driver will be in a deadlock, When the rx offload is set by ethtool.
> The pch_gbe_reinit_locked function was modified.
> 
> Signed-off-by: Toshiharu Okada <toshiharu-linux@dsn.okisemi.com>

Applied.

^ permalink raw reply

* [PATCH 1/1] tlan: Fix bugs introduced by the last tlan cleanup patch
From: Sakari Ailus @ 2011-02-09 20:25 UTC (permalink / raw)
  To: netdev; +Cc: error27
In-Reply-To: <4D52F80E.9030307@iki.fi>

Fix two bugs introduced by the patch "tlan: Code cleanup: checkpatch.pl is
relatively happy now." In that patch, TLAN_CSTAT_READY was considered as a
bit mask containing a single bit set while it was actually had two set
instead.

Many thanks to Dan Carpenter for finding the mistake.

Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
---
 drivers/net/tlan.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/tlan.c b/drivers/net/tlan.c
index 0678e7e..e48a808 100644
--- a/drivers/net/tlan.c
+++ b/drivers/net/tlan.c
@@ -1522,7 +1522,8 @@ static u32 tlan_handle_tx_eof(struct net_device *dev, u16 host_int)
 		head_list = priv->tx_list + priv->tx_head;
 		head_list_phys = priv->tx_list_dma
 			+ sizeof(struct tlan_list)*priv->tx_head;
-		if (head_list->c_stat & TLAN_CSTAT_READY) {
+		if ((head_list->c_stat & TLAN_CSTAT_READY)
+		    == TLAN_CSTAT_READY) {
 			outl(head_list_phys, dev->base_addr + TLAN_CH_PARM);
 			ack |= TLAN_HC_GO;
 		} else {
@@ -1766,7 +1767,8 @@ static u32 tlan_handle_tx_eoc(struct net_device *dev, u16 host_int)
 		head_list = priv->tx_list + priv->tx_head;
 		head_list_phys = priv->tx_list_dma
 			+ sizeof(struct tlan_list)*priv->tx_head;
-		if (head_list->c_stat & TLAN_CSTAT_READY) {
+		if ((head_list->c_stat & TLAN_CSTAT_READY)
+		    == TLAN_CSTAT_READY) {
 			netif_stop_queue(dev);
 			outl(head_list_phys, dev->base_addr + TLAN_CH_PARM);
 			ack |= TLAN_HC_GO;
-- 
1.7.2.3


^ permalink raw reply related

* [PATCH 0/1] tlan cleanup fix
From: Sakari Ailus @ 2011-02-09 20:24 UTC (permalink / raw)
  To: netdev; +Cc: Dan Carpenter

Hi,

Dan Carpenter found a problem in my last tlan cleanup patch. In the 
cleanup, I accidentally considered a bit mask containing multiple bits 
set as one containing a single bit set. The following patch fixes this 
issue.

Regards,

-- 
Sakari Ailus
sakari.ailus@iki.fi

^ permalink raw reply

* Re: STMMAC driver: NFS Problem on 2.6.37
From: Chuck Lever @ 2011-02-09 20:12 UTC (permalink / raw)
  To: Brian Downing
  Cc: deepaksi, Armando VISCONTI, Trond Myklebust,
	netdev-u79uwXL29TY76Z2rM5mHXA, Linux NFS Mailing List,
	Shiraz HASHIM, Viresh KUMAR, Peppe CAVALLARO, amitgoel
In-Reply-To: <20110209200129.GA6402-QEOkiq82tQWoLK6CJbI5/KxOck334EZe@public.gmane.org>


On Feb 9, 2011, at 3:01 PM, Brian Downing wrote:

> [See http://marc.info/?l=linux-nfs&m=129597871731431&w=2 for the
> remainder of the context that was trimmed here; it's long enough as is!]
> 
> On Tue, Jan 25, 2011 at 01:04:21PM -0500, Chuck Lever wrote:
>> On Jan 25, 2011, at 6:56 AM, deepaksi wrote:
>>> Are there some changes in the kernel framework w.r.t rpc ping time
>>> out ?  This problem was not there in previous kernels.
>> 
>> There have been changes in the RPC socket code around how it manages
>> recovery from failed attempts to connect.  We also have new logic now
>> in the RPC client that causes RPC ping to fail immediately if a host
>> can't be reached.
>> 
>> Thanks for your efforts so far.  It would be helpful if you could
>> bisect to determine which commit(s) introduced this RPC client
>> behavior (or any related changes to your network driver behavior).
> 
> I'm having this same problem with a Freescale MPC8313E-RDB board while
> trying to do nfsroot in 2.6.37 with its built-in gianfar ethernet.
> I was able to bisect it down to this commit:
> 
> 56463e50d1fc3f070492434cea6303b35ea000de is the first bad commit
> commit 56463e50d1fc3f070492434cea6303b35ea000de
> Author: Chuck Lever <chuck.lever-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
> Date:   Fri Sep 17 10:54:37 2010 -0400
> 
>    NFS: Use super.c for NFSROOT mount option parsing
> 
>    Replace duplicate code in NFSROOT for mounting an NFS server on '/'
>    with logic that uses the existing mainline text-based logic in the NFS
>    client.
> 
>    Add documenting comments where appropriate.
> 
>    Note that this means NFSROOT mounts now use the same default settings
>    as v2/v3 mounts done via mount(2) from user space.
> 
>      vers=3,tcp,rsize=<negotiated default>,wsize=<negotiated default>
> 
>    As before, however, no version/protocol negotiation with the server is
>    done.

Based on your console logs, I see that the working case uses UDP to contact the server's mountd, but the failing case uses TCP.  You can try explicitly specifying "proto=udp" to force the use of UDP, to test this theory.

Meanwhile, the patch description explicitly states that the default mount option settings have changed.  Does it make sense to change the default behavior of NFSROOT mounts to use UDP again?  I don't see another way to make this process more reliable across NIC initialization.  If this is considered a regression, we can make a patch for 2.6.38-rc and 2.6.37.

>    Signed-off-by: Chuck Lever <chuck.lever-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
>    Signed-off-by: Trond Myklebust <Trond.Myklebust-HgOvQuBEEgTQT0dZR+AlfA@public.gmane.org>
> 
> Here's the boot console logs from both the good and bad cases with NFS
> and RPC debug enabled.  Note that the gianfar ethernet driver takes
> approximately 2 seconds to get a useful link (i.e. between
> "ADDRCONF(NETDEV_UP): eth1: link is not ready" and
> "ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready"), which I suspect is
> part of the problem here.  Also, once I added RPC debug in the bad case
> it started working occasionally, which I suspect is because of delays
> induced by the serial console blocking.
> 
> Hopefully this helps narrow it down.
> 
> ********** good (60ac03685bf513f9d9b6e8e098018b35309ed326) **********
> Using MPC831x RDB machine description
> Linux version 2.6.36-rc3+ (bdowning@scatha) (gcc version 4.4.2 (crosstool-NG-hg_default@1733_02db017f4fe1) ) #25 Wed Feb 9 13:08:52 CST 2011
> bootconsole [udbg0] enabled
> setup_arch: bootmem
> mpc831x_rdb_setup_arch()
> Found FSL PCI host bridge at 0x00000000e0008500. Firmware bus number: 0->0
> PCI host bridge /sleep-nexus/pci@e0008500 (primary) ranges:
> MEM 0x0000000090000000..0x000000009fffffff -> 0x0000000090000000 
> MEM 0x0000000080000000..0x000000008fffffff -> 0x0000000080000000 Prefetch
>  IO 0x00000000e2000000..0x00000000e20fffff -> 0x0000000000000000
> arch: exit
> Zone PFN ranges:
>  DMA      0x00000000 -> 0x00008000
>  Normal   empty
> Movable zone start PFN for each node
> early_node_map[1] active PFN ranges
>    0: 0x00000000 -> 0x00008000
> Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
> Kernel command line: nfsroot=172.26.128.52:/srv/nfs/root0 ip=172.26.130.10:172.26.128.52:172.26.128.1:255.255.240.0:ppc10:eth1:off root=/dev/nfs rw console=ttyS0,115200 nfsrootdebug
> PID hash table entries: 512 (order: -1, 2048 bytes)
> Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
> Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
> Memory: 124812k/131072k available (4768k kernel code, 6260k reserved, 216k data, 101k bss, 192k init)
> Kernel virtual memory layout:
>  * 0xfffdf000..0xfffff000  : fixmap
>  * 0xfdefb000..0xfe000000  : early ioremap
>  * 0xc9000000..0xfdefb000  : vmalloc & ioremap
> SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
> NR_IRQS:512
> IPIC (128 IRQ sources) at c9000700
> clocksource: timebase mult[6000002] shift[22] registered
> pid_max: default: 32768 minimum: 301
> Mount-cache hash table entries: 512
> NET: Registered protocol family 16
> 
> PCI: Probing PCI hardware
> bio: create slab <bio-0> at 0
> vgaarb: loaded
> SCSI subsystem initialized
> usbcore: registered new interface driver usbfs
> usbcore: registered new interface driver hub
> usbcore: registered new device driver usb
> Switching to clocksource timebase
> NET: Registered protocol family 2
> IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
> TCP established hash table entries: 4096 (order: 3, 32768 bytes)
> TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
> TCP: Hash tables configured (established 4096 bind 4096)
> TCP reno registered
> UDP hash table entries: 256 (order: 0, 4096 bytes)
> UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
> NET: Registered protocol family 1
> RPC: Registered udp transport module.
> RPC: Registered tcp transport module.
> RPC: Registered tcp NFSv4.1 backchannel transport module.
> msgmni has been set to 243
> alg: No test for stdrng (krng)
> io scheduler noop registered
> io scheduler deadline registered
> io scheduler cfq registered (default)
> Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
> serial8250.0: ttyS0 at MMIO 0xe0004500 (irq = 16) is a 16550A
> console [ttyS0] enabled, bootconsole disabled
> console [ttyS0] enabled, bootconsole disabled
> serial8250.0: ttyS1 at MMIO 0xe0004600 (irq = 17) is a 16550A
> brd: module loaded
> loop: module loaded
> fe000000.flash: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000001 Chip ID 0x001001
> Amd/Fujitsu Extended Query Table at 0x0040
>  Amd/Fujitsu Extended Query version 1.3.
> fe000000.flash: Swapping erase regions for top-boot CFI table.
> number of CFI chips: 1
> cmdlinepart partition parsing not available
> RedBoot partition parsing not available
> of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
> of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
> of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
> NAND device: Manufacturer ID: 0xec, Chip ID: 0x75 (Samsung NAND 32MiB 3,3V 8-bit)
> cmdlinepart partition parsing not available
> RedBoot partition parsing not available
> Creating 3 MTD partitions on "e2800000.flash":
> 0x000000000000-0x000000100000 : "u-boot"
> 0x000000100000-0x000000400000 : "kernel"
> 0x000000400000-0x000002000000 : "fs"
> eLBC NAND device at 0xe2800000, bank 1
> Fixed MDIO Bus: probed
> of:fsl-gianfar e0024000.ethernet: enabled errata workarounds, flags: 0x7
> eth0: Gianfar Ethernet Controller Version 1.2, 08:00:3e:03:01:a0
> eth0: Running with NAPI enabled
> eth0: RX BD ring size for Q[0]: 256
> eth0: TX BD ring size for Q[0]: 256
> of:fsl-gianfar e0025000.ethernet: enabled errata workarounds, flags: 0x7
> eth1: Gianfar Ethernet Controller Version 1.2, 08:00:3e:03:01:a1
> eth1: Running with NAPI enabled
> eth1: RX BD ring size for Q[0]: 256
> eth1: TX BD ring size for Q[0]: 256
> Freescale PowerQUICC MII Bus: probed
> Freescale PowerQUICC MII Bus: probed
> ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
> fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
> fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
> fsl-ehci fsl-ehci.0: irq 38, io base 0xe0023000
> fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
> hub 1-0:1.0: USB hub found
> hub 1-0:1.0: 1 port detected
> i2c /dev entries driver
> of:mpc-i2c e0003000.i2c: timeout 1000000 us
> rtc-ds1307 0-0068: rtc core: registered ds1339 as rtc0
> of:mpc-i2c e0003100.i2c: timeout 1000000 us
> alg: No test for authenc(hmac(sha1),cbc(aes)) (authenc-hmac-sha1-cbc-aes-talitos)
> of:talitos e0030000.crypto: authenc-hmac-sha1-cbc-aes-talitos
> alg: No test for authenc(hmac(sha1),cbc(des3_ede)) (authenc-hmac-sha1-cbc-3des-talitos)
> of:talitos e0030000.crypto: authenc-hmac-sha1-cbc-3des-talitos
> alg: No test for authenc(hmac(sha256),cbc(aes)) (authenc-hmac-sha256-cbc-aes-talitos)
> of:talitos e0030000.crypto: authenc-hmac-sha256-cbc-aes-talitos
> alg: No test for authenc(hmac(sha256),cbc(des3_ede)) (authenc-hmac-sha256-cbc-3des-talitos)
> of:talitos e0030000.crypto: authenc-hmac-sha256-cbc-3des-talitos
> alg: No test for authenc(hmac(md5),cbc(aes)) (authenc-hmac-md5-cbc-aes-talitos)
> of:talitos e0030000.crypto: authenc-hmac-md5-cbc-aes-talitos
> alg: No test for authenc(hmac(md5),cbc(des3_ede)) (authenc-hmac-md5-cbc-3des-talitos)
> of:talitos e0030000.crypto: authenc-hmac-md5-cbc-3des-talitos
> of:talitos e0030000.crypto: cbc-aes-talitos
> of:talitos e0030000.crypto: cbc-3des-talitos
> of:talitos e0030000.crypto: md5-talitos
> of:talitos e0030000.crypto: sha1-talitos
> of:talitos e0030000.crypto: sha224-talitos
> of:talitos e0030000.crypto: sha256-talitos
> usbcore: registered new interface driver usbhid
> usbhid: USB HID core driver
> TCP cubic registered
> NET: Registered protocol family 10
> IPv6 over IPv4 tunneling driver
> NET: Registered protocol family 17
> NET: Registered protocol family 15
> Registering the dns_resolver key type
> rtc-ds1307 0-0068: setting system clock to 2000-01-06 16:34:00 UTC (947176440)
> ADDRCONF(NETDEV_UP): eth1: link is not ready
> IP-Config: Complete:
>     device=eth1, addr=172.26.130.10, mask=255.255.240.0, gw=172.26.128.1,
>     host=ppc10, domain=, nis-domain=(none),
>     bootserver=172.26.128.52, rootserver=172.26.128.52, rootpath=
> Looking up port of RPC 100003/2 on 172.26.128.52
> RPC:       rpcb_getport_sync(172.26.128.52, 100003, 2, 17)
> RPC:       set up xprt to 172.26.128.52 (port 111) via udp
> RPC:       created transport c79c6800 with 16 slots
> RPC:       creating rpcbind client for 172.26.128.52 (xprt c79c6800)
> RPC:       creating UNIX authenticator for client c7920800
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fa80
> RPC:     1 __rpc_execute flags=0x280
> RPC:     1 call_start rpcbind2 proc GETPORT (sync)
> RPC:     1 call_reserve (status 0)
> RPC:     1 reserved req c780b000 xid 5420c919
> RPC:     1 call_reserveresult (status 0)
> RPC:     1 call_allocate (status 0)
> RPC:     1 allocated buffer of size 412 at c79c7000
> RPC:     1 call_refresh (status 0)
> RPC:     1 looking up UNIX cred
> RPC:       looking up UNIX cred
> RPC:       allocating UNIX cred for uid 0 gid 0
> RPC:     1 refreshing UNIX cred c792fb00
> RPC:     1 call_refreshresult (status 0)
> RPC:     1 call_bind (status 0)
> RPC:     1 call_connect xprt c79c6800 is not connected
> RPC:     1 xprt_connect xprt c79c6800 is not connected
> RPC:     1 xprt_cwnd_limited cong = 0 cwnd = 256
> RPC:     1 sleep_on(queue "xprt_pending" time 4294892880)
> RPC:     1 added to queue c79c69ac "xprt_pending"
> RPC:     1 setting alarm for 5000 ms
> RPC:       xs_connect scheduled xprt c79c6800
> RPC:     1 sync task going to sleep
> RPC:       xs_bind4 0.0.0.0:0: ok (0)
> RPC:       worker connecting xprt c79c6800 via udp to 172.26.128.52 (port 111)
> RPC:     1 __rpc_wake_up_task (now 4294892888)
> RPC:     1 disabling timer
> RPC:     1 removed from queue c79c69ac "xprt_pending"
> RPC:       __rpc_wake_up_task done
> RPC:     1 sync task resuming
> RPC:     1 xprt_connect_status: connection established
> RPC:     1 call_connect_status (status 0)
> RPC:     1 call_transmit (status 0)
> RPC:     1 xprt_prepare_transmit
> RPC:     1 rpc_xdr_encode (status 0)
> RPC:     1 marshaling UNIX cred c792fb00
> RPC:     1 using AUTH_UNIX cred c792fb00 to wrap rpc data
> RPC:     1 encoding PMAP_GETPORT call (100003, 2, 17, 0)
> RPC:     1 xprt_transmit(84)
> RPC:       xs_udp_send_request(84) = 84
> RPC:     1 xmit complete
> RPC:     1 sleep_on(queue "xprt_pending" time 4294892902)
> RPC:     1 added to queue c79c69ac "xprt_pending"
> RPC:     1 setting alarm for 5000 ms
> RPC:     1 sync task going to sleep
> PHY: mdio@e0024520:04 - Link is Up - 1000/Full
> ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
> RPC:     1 timeout
> RPC:     1 __rpc_wake_up_task (now 4294894156)
> RPC:     1 disabling timer
> RPC:     1 removed from queue c79c69ac "xprt_pending"
> RPC:       __rpc_wake_up_task done
> RPC:     1 sync task resuming
> RPC:     1 xprt_timer
> RPC:       cong 256, cwnd was 256, now 256
> RPC:       wake_up_next(c79c6954 "xprt_resend")
> RPC:       wake_up_next(c79c68fc "xprt_sending")
> RPC:     1 call_status (status -110)
> RPC:     1 call_timeout (minor)
> RPC:     1 call_bind (status 0)
> RPC:     1 call_connect xprt c79c6800 is connected
> RPC:     1 call_transmit (status 0)
> RPC:     1 xprt_prepare_transmit
> RPC:     1 xprt_cwnd_limited cong = 0 cwnd = 256
> RPC:     1 rpc_xdr_encode (status 0)
> RPC:     1 marshaling UNIX cred c792fb00
> RPC:     1 using AUTH_UNIX cred c792fb00 to wrap rpc data
> RPC:     1 encoding PMAP_GETPORT call (100003, 2, 17, 0)
> RPC:     1 xprt_transmit(84)
> RPC:       xs_udp_send_request(84) = 84
> RPC:     1 xmit complete
> RPC:     1 sleep_on(queue "xprt_pending" time 4294894176)
> RPC:     1 added to queue c79c69ac "xprt_pending"
> RPC:     1 setting alarm for 10000 ms
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 256, now 512
> RPC:     1 xid 5420c919 complete (28 bytes received)
> RPC:     1 __rpc_wake_up_task (now 4294894183)
> RPC:     1 disabling timer
> RPC:     1 removed from queue c79c69ac "xprt_pending"
> RPC:       __rpc_wake_up_task done
> RPC:       wake_up_next(c79c6954 "xprt_resend")
> RPC:       wake_up_next(c79c68fc "xprt_sending")
> RPC:     1 call_status (status 28)
> RPC:     1 call_decode (status 28)
> RPC:     1 validating UNIX cred c792fb00
> RPC:     1 using AUTH_UNIX cred c792fb00 to unwrap rpc data
> RPC:     1 PMAP_GETPORT result: 2049
> RPC:     1 call_decode result 0
> RPC:     1 return 0, status 0
> RPC:     1 release task
> RPC:       freeing buffer of size 412 at c79c7000
> RPC:     1 release request c780b000
> RPC:       wake_up_next(c79c6a04 "xprt_backlog")
> RPC:       rpc_release_client(c7920800)
> RPC:     1 freeing task
> RPC:       shutting down rpcbind client for 172.26.128.52
> RPC:       rpc_release_client(c7920800)
> RPC:       destroying UNIX authenticator c04d5950
> RPC:       destroying rpcbind client for 172.26.128.52
> RPC:       destroying transport c79c6800
> RPC:       xs_destroy xprt c79c6800
> RPC:       xs_close xprt c79c6800
> RPC:       disconnected transport c79c6800
> Root-NFS: Portmapper on server returned 2049 as nfsd port
> Looking up port of RPC 100005/1 on 172.26.128.52
> RPC:       rpcb_getport_sync(172.26.128.52, 100005, 1, 17)
> RPC:       set up xprt to 172.26.128.52 (port 111) via udp
> RPC:       created transport c793f800 with 16 slots
> RPC:       creating rpcbind client for 172.26.128.52 (xprt c793f800)
> RPC:       creating UNIX authenticator for client c79c8a00
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fa80
> RPC:     2 __rpc_execute flags=0x280
> RPC:     2 call_start rpcbind2 proc GETPORT (sync)
> RPC:     2 call_reserve (status 0)
> RPC:     2 reserved req c780b000 xid 0fe4a33c
> RPC:     2 call_reserveresult (status 0)
> RPC:     2 call_allocate (status 0)
> RPC:     2 allocated buffer of size 412 at c79c6800
> RPC:     2 call_refresh (status 0)
> RPC:     2 looking up UNIX cred
> RPC:       looking up UNIX cred
> RPC:       allocating UNIX cred for uid 0 gid 0
> RPC:     2 refreshing UNIX cred c792fe80
> RPC:     2 call_refreshresult (status 0)
> RPC:     2 call_bind (status 0)
> RPC:     2 call_connect xprt c793f800 is not connected
> RPC:     2 xprt_connect xprt c793f800 is not connected
> RPC:     2 xprt_cwnd_limited cong = 0 cwnd = 256
> RPC:     2 sleep_on(queue "xprt_pending" time 4294894234)
> RPC:     2 added to queue c793f9ac "xprt_pending"
> RPC:     2 setting alarm for 5000 ms
> RPC:       xs_connect scheduled xprt c793f800
> RPC:     2 sync task going to sleep
> RPC:       unx_free_cred c792fb00
> RPC:       xs_bind4 0.0.0.0:0: ok (0)
> RPC:       worker connecting xprt c793f800 via udp to 172.26.128.52 (port 111)
> RPC:     2 __rpc_wake_up_task (now 4294894243)
> RPC:     2 disabling timer
> RPC:     2 removed from queue c793f9ac "xprt_pending"
> RPC:       __rpc_wake_up_task done
> RPC:     2 sync task resuming
> RPC:     2 xprt_connect_status: connection established
> RPC:     2 call_connect_status (status 0)
> RPC:     2 call_transmit (status 0)
> RPC:     2 xprt_prepare_transmit
> RPC:     2 rpc_xdr_encode (status 0)
> RPC:     2 marshaling UNIX cred c792fe80
> RPC:     2 using AUTH_UNIX cred c792fe80 to wrap rpc data
> RPC:     2 encoding PMAP_GETPORT call (100005, 1, 17, 0)
> RPC:     2 xprt_transmit(84)
> RPC:       xs_udp_send_request(84) = 84
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 256, now 512
> RPC:     2 xid 0fe4a33c complete (28 bytes received)
> RPC:     2 xmit complete
> RPC:       wake_up_next(c793f954 "xprt_resend")
> RPC:       wake_up_next(c793f8fc "xprt_sending")
> RPC:     2 call_status (status 28)
> RPC:     2 call_decode (status 28)
> RPC:     2 validating UNIX cred c792fe80
> RPC:     2 using AUTH_UNIX cred c792fe80 to unwrap rpc data
> RPC:     2 PMAP_GETPORT result: 37346
> RPC:     2 call_decode result 0
> RPC:     2 return 0, status 0
> RPC:     2 release task
> RPC:       freeing buffer of size 412 at c79c6800
> RPC:     2 release request c780b000
> RPC:       wake_up_next(c793fa04 "xprt_backlog")
> RPC:       rpc_release_client(c79c8a00)
> RPC:     2 freeing task
> RPC:       shutting down rpcbind client for 172.26.128.52
> RPC:       rpc_release_client(c79c8a00)
> RPC:       destroying UNIX authenticator c04d5950
> RPC:       destroying rpcbind client for 172.26.128.52
> RPC:       destroying transport c793f800
> RPC:       xs_destroy xprt c793f800
> RPC:       xs_close xprt c793f800
> RPC:       disconnected transport c793f800
> Root-NFS: mountd port is 37346
> NFS: sending MNT request for server:/srv/nfs/root0
> RPC:       set up xprt to 172.26.128.52 (port 37346) via udp
> RPC:       created transport c79c6800 with 16 slots
> RPC:       creating mount client for 172.26.128.52 (xprt c79c6800)
> RPC:       creating UNIX authenticator for client c79c8a00
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fb00
> RPC:     3 __rpc_execute flags=0x680
> RPC:     3 call_start mount1 proc NULL (sync)
> RPC:     3 call_reserve (status 0)
> RPC:     3 reserved req c780b000 xid e265f825
> RPC:     3 call_reserveresult (status 0)
> RPC:     3 call_allocate (status 0)
> RPC:     3 allocated buffer of size 392 at c7940000
> RPC:     3 call_refresh (status 0)
> RPC:     3 holding NULL cred c04d591c
> RPC:     3 refreshing NULL cred c04d591c
> RPC:     3 call_refreshresult (status 0)
> RPC:     3 call_bind (status 0)
> RPC:     3 call_connect xprt c79c6800 is not connected
> RPC:     3 xprt_connect xprt c79c6800 is not connected
> RPC:     3 xprt_cwnd_limited cong = 0 cwnd = 256
> RPC:     3 sleep_on(queue "xprt_pending" time 4294894305)
> RPC:     3 added to queue c79c69ac "xprt_pending"
> RPC:     3 setting alarm for 5000 ms
> RPC:       xs_connect scheduled xprt c79c6800
> RPC:     3 sync task going to sleep
> RPC:       unx_free_cred c792fe80
> RPC:       xs_bind4 0.0.0.0:672: ok (0)
> RPC:       worker connecting xprt c79c6800 via udp to 172.26.128.52 (port 37346)
> RPC:     3 __rpc_wake_up_task (now 4294894313)
> RPC:     3 disabling timer
> RPC:     3 removed from queue c79c69ac "xprt_pending"
> RPC:       __rpc_wake_up_task done
> RPC:     3 sync task resuming
> RPC:     3 xprt_connect_status: connection established
> RPC:     3 call_connect_status (status 0)
> RPC:     3 call_transmit (status 0)
> RPC:     3 xprt_prepare_transmit
> RPC:     3 rpc_xdr_encode (status 0)
> RPC:     3 marshaling NULL cred c04d591c
> RPC:     3 using AUTH_NULL cred c04d591c to wrap rpc data
> RPC:     3 xprt_transmit(40)
> RPC:       xs_udp_send_request(40) = 40
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 256, now 512
> RPC:     3 xid e265f825 complete (24 bytes received)
> RPC:     3 xmit complete
> RPC:       wake_up_next(c79c6954 "xprt_resend")
> RPC:       wake_up_next(c79c68fc "xprt_sending")
> RPC:     3 call_status (status 24)
> RPC:     3 call_decode (status 24)
> RPC:     3 validating NULL cred c04d591c
> RPC:     3 using AUTH_NULL cred c04d591c to unwrap rpc data
> RPC:     3 call_decode result 0
> RPC:     3 return 0, status 0
> RPC:     3 release task
> RPC:       freeing buffer of size 392 at c7940000
> RPC:     3 release request c780b000
> RPC:       wake_up_next(c79c6a04 "xprt_backlog")
> RPC:       rpc_release_client(c79c8a00)
> RPC:     3 freeing task
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fb00
> RPC:     4 __rpc_execute flags=0x280
> RPC:     4 call_start mount1 proc MOUNT (sync)
> RPC:     4 call_reserve (status 0)
> RPC:     4 reserved req c780b000 xid e265f826
> RPC:     4 call_reserveresult (status 0)
> RPC:     4 call_allocate (status 0)
> RPC:     4 allocated buffer of size 1456 at c7940000
> RPC:     4 call_refresh (status 0)
> RPC:     4 looking up UNIX cred
> RPC:       looking up UNIX cred
> RPC:       allocating UNIX cred for uid 0 gid 0
> RPC:     4 refreshing UNIX cred c792fe80
> RPC:     4 call_refreshresult (status 0)
> RPC:     4 call_bind (status 0)
> RPC:     4 call_connect xprt c79c6800 is connected
> RPC:     4 call_transmit (status 0)
> RPC:     4 xprt_prepare_transmit
> RPC:     4 xprt_cwnd_limited cong = 0 cwnd = 512
> RPC:     4 rpc_xdr_encode (status 0)
> RPC:     4 marshaling UNIX cred c792fe80
> RPC:     4 using AUTH_UNIX cred c792fe80 to wrap rpc data
> RPC:     4 xprt_transmit(88)
> RPC:       xs_udp_send_request(88) = 88
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 512, now 512
> RPC:     4 xid e265f826 complete (60 bytes received)
> RPC:     4 xmit complete
> RPC:       wake_up_next(c79c6954 "xprt_resend")
> RPC:       wake_up_next(c79c68fc "xprt_sending")
> RPC:     4 call_status (status 60)
> RPC:     4 call_decode (status 60)
> RPC:     4 validating UNIX cred c792fe80
> RPC:     4 using AUTH_UNIX cred c792fe80 to unwrap rpc data
> RPC:     4 call_decode result 0
> RPC:     4 return 0, status 0
> RPC:     4 release task
> RPC:       freeing buffer of size 1456 at c7940000
> RPC:     4 release request c780b000
> RPC:       wake_up_next(c79c6a04 "xprt_backlog")
> RPC:       rpc_release_client(c79c8a00)
> RPC:     4 freeing task
> RPC:       shutting down mount client for 172.26.128.52
> RPC:       rpc_release_client(c79c8a00)
> RPC:       destroying UNIX authenticator c04d5950
> RPC:       destroying mount client for 172.26.128.52
> RPC:       destroying transport c79c6800
> RPC:       xs_destroy xprt c79c6800
> RPC:       xs_close xprt c79c6800
> RPC:       disconnected transport c79c6800
> NFS: MNT request succeeded
> RPC:       looking up machine cred
> RPC:       allocated machine cred c7927300 for uid 0 gid 0
> RPC:       set up xprt to 172.26.128.52 (port 2049) via udp
> RPC:       created transport c7940000 with 16 slots
> RPC:       creating nfs client for 172.26.128.52 (xprt c7940000)
> RPC:       creating UNIX authenticator for client c79c8a00
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fa80
> RPC:     5 __rpc_execute flags=0x680
> RPC:     5 call_start nfs2 proc NULL (sync)
> RPC:     5 call_reserve (status 0)
> RPC:     5 reserved req c780e000 xid 0d837923
> RPC:     5 call_reserveresult (status 0)
> RPC:     5 call_allocate (status 0)
> RPC:     5 allocated buffer of size 392 at c79c6800
> RPC:     5 call_refresh (status 0)
> RPC:     5 holding NULL cred c04d591c
> RPC:     5 refreshing NULL cred c04d591c
> RPC:     5 call_refreshresult (status 0)
> RPC:     5 call_bind (status 0)
> RPC:     5 call_connect xprt c7940000 is not connected
> RPC:     5 xprt_connect xprt c7940000 is not connected
> RPC:     5 xprt_cwnd_limited cong = 0 cwnd = 256
> RPC:     5 sleep_on(queue "xprt_pending" time 4294894412)
> RPC:     5 added to queue c79401ac "xprt_pending"
> RPC:     5 setting alarm for 1100 ms
> RPC:       xs_connect scheduled xprt c7940000
> RPC:     5 sync task going to sleep
> RPC:       unx_free_cred c792fe80
> RPC:       xs_bind4 0.0.0.0:866: ok (0)
> RPC:       worker connecting xprt c7940000 via udp to 172.26.128.52 (port 2049)
> RPC:     5 __rpc_wake_up_task (now 4294894421)
> RPC:     5 disabling timer
> RPC:     5 removed from queue c79401ac "xprt_pending"
> RPC:       __rpc_wake_up_task done
> RPC:     5 sync task resuming
> RPC:     5 xprt_connect_status: connection established
> RPC:     5 call_connect_status (status 0)
> RPC:     5 call_transmit (status 0)
> RPC:     5 xprt_prepare_transmit
> RPC:     5 rpc_xdr_encode (status 0)
> RPC:     5 marshaling NULL cred c04d591c
> RPC:     5 using AUTH_NULL cred c04d591c to wrap rpc data
> RPC:     5 xprt_transmit(40)
> RPC:       xs_udp_send_request(40) = 40
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 256, now 512
> RPC:     5 xid 0d837923 complete (24 bytes received)
> RPC:     5 xmit complete
> RPC:       wake_up_next(c7940154 "xprt_resend")
> RPC:       wake_up_next(c79400fc "xprt_sending")
> RPC:     5 call_status (status 24)
> RPC:     5 call_decode (status 24)
> RPC:     5 validating NULL cred c04d591c
> RPC:     5 using AUTH_NULL cred c04d591c to unwrap rpc data
> RPC:     5 call_decode result 0
> RPC:     5 return 0, status 0
> RPC:     5 release task
> RPC:       freeing buffer of size 392 at c79c6800
> RPC:     5 release request c780e000
> RPC:       wake_up_next(c7940204 "xprt_backlog")
> RPC:       rpc_release_client(c79c8a00)
> RPC:     5 freeing task
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fa80
> RPC:     6 __rpc_execute flags=0x80
> RPC:     6 call_start nfs2 proc STATFS (sync)
> RPC:     6 call_reserve (status 0)
> RPC:     6 reserved req c780e000 xid 0d837924
> RPC:     6 call_reserveresult (status 0)
> RPC:     6 call_allocate (status 0)
> RPC:     6 allocated buffer of size 448 at c79d2800
> RPC:     6 call_refresh (status 0)
> RPC:     6 looking up UNIX cred
> RPC:       looking up UNIX cred
> RPC:       allocating UNIX cred for uid 0 gid 0
> RPC:     6 refreshing UNIX cred c792fe80
> RPC:     6 call_refreshresult (status 0)
> RPC:     6 call_bind (status 0)
> RPC:     6 call_connect xprt c7940000 is connected
> RPC:     6 call_transmit (status 0)
> RPC:     6 xprt_prepare_transmit
> RPC:     6 xprt_cwnd_limited cong = 0 cwnd = 512
> RPC:     6 rpc_xdr_encode (status 0)
> RPC:     6 marshaling UNIX cred c792fe80
> RPC:     6 using AUTH_UNIX cred c792fe80 to wrap rpc data
> RPC:     6 xprt_transmit(100)
> RPC:       xs_udp_send_request(100) = 100
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 512, now 512
> RPC:     6 xid 0d837924 complete (48 bytes received)
> RPC:     6 xmit complete
> RPC:       wake_up_next(c7940154 "xprt_resend")
> RPC:       wake_up_next(c79400fc "xprt_sending")
> RPC:     6 call_status (status 48)
> RPC:     6 call_decode (status 48)
> RPC:     6 validating UNIX cred c792fe80
> RPC:     6 using AUTH_UNIX cred c792fe80 to unwrap rpc data
> RPC:     6 call_decode result 0
> RPC:     6 return 0, status 0
> RPC:     6 release task
> RPC:       freeing buffer of size 448 at c79d2800
> RPC:     6 release request c780e000
> RPC:       wake_up_next(c7940204 "xprt_backlog")
> RPC:       rpc_release_client(c79c8b00)
> RPC:     6 freeing task
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fa80
> RPC:     7 __rpc_execute flags=0x80
> RPC:     7 call_start nfs2 proc GETATTR (sync)
> RPC:     7 call_reserve (status 0)
> RPC:     7 reserved req c780e000 xid 0d837925
> RPC:     7 call_reserveresult (status 0)
> RPC:     7 call_allocate (status 0)
> RPC:     7 allocated buffer of size 496 at c79d2800
> RPC:     7 call_refresh (status 0)
> RPC:     7 looking up UNIX cred
> RPC:       looking up UNIX cred
> RPC:     7 refreshing UNIX cred c792fe80
> RPC:     7 call_refreshresult (status 0)
> RPC:     7 call_bind (status 0)
> RPC:     7 call_connect xprt c7940000 is connected
> RPC:     7 call_transmit (status 0)
> RPC:     7 xprt_prepare_transmit
> RPC:     7 xprt_cwnd_limited cong = 0 cwnd = 512
> RPC:     7 rpc_xdr_encode (status 0)
> RPC:     7 marshaling UNIX cred c792fe80
> RPC:     7 using AUTH_UNIX cred c792fe80 to wrap rpc data
> RPC:     7 xprt_transmit(100)
> RPC:       xs_udp_send_request(100) = 100
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 512, now 512
> RPC:     7 xid 0d837925 complete (96 bytes received)
> RPC:     7 xmit complete
> RPC:       wake_up_next(c7940154 "xprt_resend")
> RPC:       wake_up_next(c79400fc "xprt_sending")
> RPC:     7 call_status (status 96)
> RPC:     7 call_decode (status 96)
> RPC:     7 validating UNIX cred c792fe80
> RPC:     7 using AUTH_UNIX cred c792fe80 to unwrap rpc data
> RPC:     7 call_decode result 0
> RPC:     7 return 0, status 0
> RPC:     7 release task
> RPC:       freeing buffer of size 496 at c79d2800
> RPC:     7 release request c780e000
> RPC:       wake_up_next(c7940204 "xprt_backlog")
> RPC:       rpc_release_client(c79c8b00)
> RPC:     7 freeing task
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fa80
> RPC:     8 __rpc_execute flags=0x80
> RPC:     8 call_start nfs2 proc GETATTR (sync)
> RPC:     8 call_reserve (status 0)
> RPC:     8 reserved req c780e000 xid 0d837926
> RPC:     8 call_reserveresult (status 0)
> RPC:     8 call_allocate (status 0)
> RPC:     8 allocated buffer of size 496 at c79d2800
> RPC:     8 call_refresh (status 0)
> RPC:     8 looking up UNIX cred
> RPC:       looking up UNIX cred
> RPC:     8 refreshing UNIX cred c792fe80
> RPC:     8 call_refreshresult (status 0)
> RPC:     8 call_bind (status 0)
> RPC:     8 call_connect xprt c7940000 is connected
> RPC:     8 call_transmit (status 0)
> RPC:     8 xprt_prepare_transmit
> RPC:     8 xprt_cwnd_limited cong = 0 cwnd = 512
> RPC:     8 rpc_xdr_encode (status 0)
> RPC:     8 marshaling UNIX cred c792fe80
> RPC:     8 using AUTH_UNIX cred c792fe80 to wrap rpc data
> RPC:     8 xprt_transmit(100)
> RPC:       xs_udp_send_request(100) = 100
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 512, now 512
> RPC:     8 xid 0d837926 complete (96 bytes received)
> RPC:     8 xmit complete
> RPC:       wake_up_next(c7940154 "xprt_resend")
> RPC:       wake_up_next(c79400fc "xprt_sending")
> RPC:     8 call_status (status 96)
> RPC:     8 call_decode (status 96)
> RPC:     8 validating UNIX cred c792fe80
> RPC:     8 using AUTH_UNIX cred c792fe80 to unwrap rpc data
> RPC:     8 call_decode result 0
> RPC:     8 return 0, status 0
> RPC:     8 release task
> RPC:       freeing buffer of size 496 at c79d2800
> RPC:     8 release request c780e000
> RPC:       wake_up_next(c7940204 "xprt_backlog")
> RPC:       rpc_release_client(c79c8b00)
> RPC:     8 freeing task
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fa80
> RPC:     9 __rpc_execute flags=0x80
> RPC:     9 call_start nfs2 proc STATFS (sync)
> RPC:     9 call_reserve (status 0)
> RPC:     9 reserved req c780e000 xid 0d837927
> RPC:     9 call_reserveresult (status 0)
> RPC:     9 call_allocate (status 0)
> RPC:     9 allocated buffer of size 448 at c7943000
> RPC:     9 call_refresh (status 0)
> RPC:     9 looking up UNIX cred
> RPC:       looking up UNIX cred
> RPC:     9 refreshing UNIX cred c792fe80
> RPC:     9 call_refreshresult (status 0)
> RPC:     9 call_bind (status 0)
> RPC:     9 call_connect xprt c7940000 is connected
> RPC:     9 call_transmit (status 0)
> RPC:     9 xprt_prepare_transmit
> RPC:     9 xprt_cwnd_limited cong = 0 cwnd = 512
> RPC:     9 rpc_xdr_encode (status 0)
> RPC:     9 marshaling UNIX cred c792fe80
> RPC:     9 using AUTH_UNIX cred c792fe80 to wrap rpc data
> RPC:     9 xprt_transmit(100)
> RPC:       xs_udp_send_request(100) = 100
> RPC:       xs_udp_data_ready...
> RPC:       cong 256, cwnd was 512, now 512
> RPC:     9 xid 0d837927 complete (48 bytes received)
> RPC:     9 xmit complete
> RPC:       wake_up_next(c7940154 "xprt_resend")
> RPC:       wake_up_next(c79400fc "xprt_sending")
> RPC:     9 call_status (status 48)
> RPC:     9 call_decode (status 48)
> RPC:     9 validating UNIX cred c792fe80
> RPC:     9 using AUTH_UNIX cred c792fe80 to unwrap rpc data
> RPC:     9 call_decode result 0
> RPC:     9 return 0, status 0
> RPC:     9 release task
> RPC:       freeing buffer of size 448 at c7943000
> RPC:     9 release request c780e000
> RPC:       wake_up_next(c7940204 "xprt_backlog")
> RPC:       rpc_release_client(c79c8b00)
> RPC:     9 freeing task
> VFS: Mounted root (nfs filesystem) on device 0:12.
> Freeing unused kernel memory: 192k init
> 
> ********** bad (56463e50d1fc3f070492434cea6303b35ea000de) **********
> Using MPC831x RDB machine description
> Linux version 2.6.36-rc3+ (bdowning@scatha) (gcc version 4.4.2 (crosstool-NG-hg_default@1733_02db017f4fe1) ) #30 Wed Feb 9 13:20:18 CST 2011
> bootconsole [udbg0] enabled
> setup_arch: bootmem
> mpc831x_rdb_setup_arch()
> Found FSL PCI host bridge at 0x00000000e0008500. Firmware bus number: 0->0
> PCI host bridge /sleep-nexus/pci@e0008500 (primary) ranges:
> MEM 0x0000000090000000..0x000000009fffffff -> 0x0000000090000000 
> MEM 0x0000000080000000..0x000000008fffffff -> 0x0000000080000000 Prefetch
>  IO 0x00000000e2000000..0x00000000e20fffff -> 0x0000000000000000
> arch: exit
> Zone PFN ranges:
>  DMA      0x00000000 -> 0x00008000
>  Normal   empty
> Movable zone start PFN for each node
> early_node_map[1] active PFN ranges
>    0: 0x00000000 -> 0x00008000
> Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
> Kernel command line: nfsroot=172.26.128.52:/srv/nfs/root0 ip=172.26.130.10:172.26.128.52:172.26.128.1:255.255.240.0:ppc10:eth1:off root=/dev/nfs rw console=ttyS0,115200 nfsrootdebug
> PID hash table entries: 512 (order: -1, 2048 bytes)
> Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
> Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
> Memory: 124812k/131072k available (4768k kernel code, 6260k reserved, 216k data, 101k bss, 192k init)
> Kernel virtual memory layout:
>  * 0xfffdf000..0xfffff000  : fixmap
>  * 0xfdefb000..0xfe000000  : early ioremap
>  * 0xc9000000..0xfdefb000  : vmalloc & ioremap
> SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
> NR_IRQS:512
> IPIC (128 IRQ sources) at c9000700
> clocksource: timebase mult[6000002] shift[22] registered
> pid_max: default: 32768 minimum: 301
> Mount-cache hash table entries: 512
> NET: Registered protocol family 16
> 
> PCI: Probing PCI hardware
> bio: create slab <bio-0> at 0
> vgaarb: loaded
> SCSI subsystem initialized
> usbcore: registered new interface driver usbfs
> usbcore: registered new interface driver hub
> usbcore: registered new device driver usb
> Switching to clocksource timebase
> NET: Registered protocol family 2
> IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
> TCP established hash table entries: 4096 (order: 3, 32768 bytes)
> TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
> TCP: Hash tables configured (established 4096 bind 4096)
> TCP reno registered
> UDP hash table entries: 256 (order: 0, 4096 bytes)
> UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
> NET: Registered protocol family 1
> RPC: Registered udp transport module.
> RPC: Registered tcp transport module.
> RPC: Registered tcp NFSv4.1 backchannel transport module.
> msgmni has been set to 243
> alg: No test for stdrng (krng)
> io scheduler noop registered
> io scheduler deadline registered
> io scheduler cfq registered (default)
> Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
> serial8250.0: ttyS0 at MMIO 0xe0004500 (irq = 16) is a 16550A
> console [ttyS0] enabled, bootconsole disabled
> console [ttyS0] enabled, bootconsole disabled
> serial8250.0: ttyS1 at MMIO 0xe0004600 (irq = 17) is a 16550A
> brd: module loaded
> loop: module loaded
> fe000000.flash: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000001 Chip ID 0x001001
> Amd/Fujitsu Extended Query Table at 0x0040
>  Amd/Fujitsu Extended Query version 1.3.
> fe000000.flash: Swapping erase regions for top-boot CFI table.
> number of CFI chips: 1
> cmdlinepart partition parsing not available
> RedBoot partition parsing not available
> of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
> of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
> of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
> NAND device: Manufacturer ID: 0xec, Chip ID: 0x75 (Samsung NAND 32MiB 3,3V 8-bit)
> cmdlinepart partition parsing not available
> RedBoot partition parsing not available
> Creating 3 MTD partitions on "e2800000.flash":
> 0x000000000000-0x000000100000 : "u-boot"
> 0x000000100000-0x000000400000 : "kernel"
> 0x000000400000-0x000002000000 : "fs"
> eLBC NAND device at 0xe2800000, bank 1
> Fixed MDIO Bus: probed
> of:fsl-gianfar e0024000.ethernet: enabled errata workarounds, flags: 0x7
> eth0: Gianfar Ethernet Controller Version 1.2, 08:00:3e:03:01:a0
> eth0: Running with NAPI enabled
> eth0: RX BD ring size for Q[0]: 256
> eth0: TX BD ring size for Q[0]: 256
> of:fsl-gianfar e0025000.ethernet: enabled errata workarounds, flags: 0x7
> eth1: Gianfar Ethernet Controller Version 1.2, 08:00:3e:03:01:a1
> eth1: Running with NAPI enabled
> eth1: RX BD ring size for Q[0]: 256
> eth1: TX BD ring size for Q[0]: 256
> Freescale PowerQUICC MII Bus: probed
> Freescale PowerQUICC MII Bus: probed
> ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
> fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
> fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
> fsl-ehci fsl-ehci.0: irq 38, io base 0xe0023000
> fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
> hub 1-0:1.0: USB hub found
> hub 1-0:1.0: 1 port detected
> i2c /dev entries driver
> of:mpc-i2c e0003000.i2c: timeout 1000000 us
> rtc-ds1307 0-0068: rtc core: registered ds1339 as rtc0
> of:mpc-i2c e0003100.i2c: timeout 1000000 us
> alg: No test for authenc(hmac(sha1),cbc(aes)) (authenc-hmac-sha1-cbc-aes-talitos)
> of:talitos e0030000.crypto: authenc-hmac-sha1-cbc-aes-talitos
> alg: No test for authenc(hmac(sha1),cbc(des3_ede)) (authenc-hmac-sha1-cbc-3des-talitos)
> of:talitos e0030000.crypto: authenc-hmac-sha1-cbc-3des-talitos
> alg: No test for authenc(hmac(sha256),cbc(aes)) (authenc-hmac-sha256-cbc-aes-talitos)
> of:talitos e0030000.crypto: authenc-hmac-sha256-cbc-aes-talitos
> alg: No test for authenc(hmac(sha256),cbc(des3_ede)) (authenc-hmac-sha256-cbc-3des-talitos)
> of:talitos e0030000.crypto: authenc-hmac-sha256-cbc-3des-talitos
> alg: No test for authenc(hmac(md5),cbc(aes)) (authenc-hmac-md5-cbc-aes-talitos)
> of:talitos e0030000.crypto: authenc-hmac-md5-cbc-aes-talitos
> alg: No test for authenc(hmac(md5),cbc(des3_ede)) (authenc-hmac-md5-cbc-3des-talitos)
> of:talitos e0030000.crypto: authenc-hmac-md5-cbc-3des-talitos
> of:talitos e0030000.crypto: cbc-aes-talitos
> of:talitos e0030000.crypto: cbc-3des-talitos
> of:talitos e0030000.crypto: md5-talitos
> of:talitos e0030000.crypto: sha1-talitos
> of:talitos e0030000.crypto: sha224-talitos
> of:talitos e0030000.crypto: sha256-talitos
> usbcore: registered new interface driver usbhid
> usbhid: USB HID core driver
> TCP cubic registered
> NET: Registered protocol family 10
> IPv6 over IPv4 tunneling driver
> NET: Registered protocol family 17
> NET: Registered protocol family 15
> Registering the dns_resolver key type
> rtc-ds1307 0-0068: setting system clock to 2000-01-06 16:45:22 UTC (947177122)
> ADDRCONF(NETDEV_UP): eth1: link is not ready
> IP-Config: Complete:
>     device=eth1, addr=172.26.130.10, mask=255.255.240.0, gw=172.26.128.1,
>     host=ppc10, domain=, nis-domain=(none),
>     bootserver=172.26.128.52, rootserver=172.26.128.52, rootpath=
> Root-NFS: nfsroot=/srv/nfs/root0
> NFS: nfs mount opts='nolock,addr=172.26.128.52'
> NFS:   parsing nfs mount option 'nolock'
> NFS:   parsing nfs mount option 'addr=172.26.128.52'
> NFS: MNTPATH: '/srv/nfs/root0'
> NFS: sending MNT request for 172.26.128.52:/srv/nfs/root0
> RPC:       set up xprt to 172.26.128.52 (autobind) via tcp
> RPC:       created transport c79c6800 with 16 slots
> RPC:       creating mount client for 172.26.128.52 (xprt c79c6800)
> RPC:       creating UNIX authenticator for client c7920800
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fb00
> RPC:     1 __rpc_execute flags=0x680
> RPC:     1 call_start mount3 proc NULL (sync)
> RPC:     1 call_reserve (status 0)
> RPC:     1 reserved req c780e000 xid fd74e0cd
> RPC:     1 call_reserveresult (status 0)
> RPC:     1 call_allocate (status 0)
> RPC:     1 allocated buffer of size 392 at c79c7000
> RPC:     1 call_refresh (status 0)
> RPC:     1 holding NULL cred c04d591c
> RPC:     1 refreshing NULL cred c04d591c
> RPC:     1 call_refreshresult (status 0)
> RPC:     1 call_bind (status 0)
> RPC:     1 rpcb_getport_async(172.26.128.52, 100005, 3, 6)
> RPC:     1 sleep_on(queue "xprt_binding" time 4294892879)
> RPC:     1 added to queue c79c68a4 "xprt_binding"
> RPC:     1 setting alarm for 60000 ms
> RPC:     1 rpcb_getport_async: trying rpcbind version 2
> RPC:       set up xprt to 172.26.128.52 (port 111) via tcp
> RPC:       created transport c79c7800 with 16 slots
> RPC:       creating rpcbind client for 172.26.128.52 (xprt c79c7800)
> RPC:       creating UNIX authenticator for client c7920900
> RPC:       new task initialized, procpid 1
> RPC:       allocated task c792fb80
> RPC:       rpc_release_client(c7920900)
> RPC:     1 sync task going to sleep
> RPC:     2 __rpc_execute flags=0x681
> RPC:     2 call_start rpcbind2 proc GETPORT (async)
> RPC:     2 call_reserve (status 0)
> RPC:     2 reserved req c780f000 xid 5741830a
> RPC:     2 call_reserveresult (status 0)
> RPC:     2 call_allocate (status 0)
> RPC:     2 allocated buffer of size 412 at c79c8000
> RPC:     2 call_refresh (status 0)
> RPC:     2 looking up UNIX cred
> RPC:       looking up UNIX cred
> RPC:       allocating UNIX cred for uid 0 gid 0
> RPC:     2 refreshing UNIX cred c792f980
> RPC:     2 call_refreshresult (status 0)
> RPC:     2 call_bind (status 0)
> RPC:     2 call_connect xprt c79c7800 is not connected
> RPC:     2 xprt_connect xprt c79c7800 is not connected
> RPC:     2 sleep_on(queue "xprt_pending" time 4294892908)
> RPC:     2 added to queue c79c79ac "xprt_pending"
> RPC:     2 setting alarm for 60000 ms
> RPC:       xs_connect scheduled xprt c79c7800
> RPC:       xs_bind4 0.0.0.0:0: ok (0)
> RPC:       worker connecting xprt c79c7800 via tcp to 172.26.128.52 (port 111)
> RPC:       c79c7800 connect status 115 connected 0 sock state 2
> PHY: mdio@e0024520:04 - Link is Up - 1000/Full
> ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
> RPC:       xs_error_report client c79c7800...
> RPC:       error 113
> RPC:     2 __rpc_wake_up_task (now 4294893667)
> RPC:     2 disabling timer
> RPC:     2 removed from queue c79c79ac "xprt_pending"
> RPC:       __rpc_wake_up_task done
> RPC:       xs_tcp_state_change client c79c7800...
> RPC:       state 7 conn 0 dead 0 zapped 1 sk_shutdown 3
> RPC:       disconnected transport c79c7800
> RPC:     2 __rpc_execute flags=0x681
> RPC:     2 xprt_connect_status: retrying
> RPC:     2 call_connect_status (status -11)
> RPC:     2 call_transmit (status 0)
> RPC:     2 xprt_prepare_transmit
> RPC:     2 rpc_xdr_encode (status 0)
> RPC:     2 marshaling UNIX cred c792f980
> RPC:     2 using AUTH_UNIX cred c792f980 to wrap rpc data
> RPC:     2 encoding PMAP_GETPORT call (100005, 3, 6, 0)
> RPC:     2 xprt_transmit(88)
> RPC:       xs_tcp_send_request(88) = -113
> RPC:       sendmsg returned unrecognized error 113
> RPC:       xs_tcp_state_change client c79c7800...
> RPC:       state 7 conn 0 dead 0 zapped 1 sk_shutdown 3
> RPC:       disconnected transport c79c7800
> RPC:       wake_up_next(c79c7954 "xprt_resend")
> RPC:       wake_up_next(c79c78fc "xprt_sending")
> RPC:       setting port for xprt c79c6800 to 0
> RPC:     2 rpcb_getport_done(status -113, port 0)
> RPC:     2 return 0, status -113
> RPC:     2 release task
> RPC:       freeing buffer of size 412 at c79c8000
> RPC:     2 release request c780f000
> RPC:       wake_up_next(c79c7a04 "xprt_backlog")
> RPC:       rpc_release_client(c7920900)
> RPC:       destroying rpcbind client for 172.26.128.52
> RPC:       destroying transport c79c7800
> RPC:       xs_destroy xprt c79c7800
> RPC:       xs_close xprt c79c7800
> RPC:       disconnected transport c79c7800
> RPC:     2 freeing task
> RPC:     1 __rpc_wake_up_task (now 4294893704)
> RPC:     1 disabling timer
> RPC:     1 removed from queue c79c68a4 "xprt_binding"
> RPC:       __rpc_wake_up_task done
> RPC:     1 sync task resuming
> RPC:     1 remote rpcbind unreachable: -113
> RPC:     1 return 0, status -113
> RPC:     1 release task
> RPC:       freeing buffer of size 392 at c79c7000
> RPC:     1 release request c780e000
> RPC:       wake_up_next(c79c6a04 "xprt_backlog")
> RPC:       rpc_release_client(c7920800)
> RPC:     1 freeing task
> RPC:       shutting down mount client for 172.26.128.52
> RPC:       rpc_release_client(c7920800)
> RPC:       destroying UNIX authenticator c04d5950
> RPC:       destroying mount client for 172.26.128.52
> RPC:       destroying transport c79c6800
> RPC:       xs_destroy xprt c79c6800
> RPC:       xs_close xprt c79c6800
> RPC:       disconnected transport c79c6800
> NFS: failed to create MNT RPC client, status=-113
> NFS: unable to mount server 172.26.128.52, error -113
> VFS: Unable to mount root fs via NFS, trying floppy.
> RPC:       unx_free_cred c792f980
> VFS: Cannot open root device "nfs" or unknown-block(2,0)
> Please append a correct "root=" boot option; here are the available partitions:
> 1f00            8192 mtdblock0 (driver?)
> 1f01            1024 mtdblock1 (driver?)
> 1f02            3072 mtdblock2 (driver?)
> 1f03           28672 mtdblock3 (driver?)
> Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
> Call Trace:
> [c7827ed0] [c0008988] show_stack+0x70/0x1bc (unreliable)
> [c7827f10] [c03a9dd8] panic+0xb8/0x1e8
> [c7827f60] [c0478e38] mount_block_root+0x1a4/0x268
> [c7827fb0] [c0478fb8] mount_root+0xbc/0xd4
> [c7827fd0] [c0479174] prepare_namespace+0x1a4/0x1e8
> [c7827fe0] [c0478270] kernel_init+0x150/0x170
> [c7827ff0] [c0010378] kernel_thread+0x4c/0x68
> Rebooting in 180 seconds..
> 
> -bcd

-- 
Chuck Lever
chuck[dot]lever[at]oracle[dot]com




--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply

* Re: STMMAC driver: NFS Problem on 2.6.37
From: Brian Downing @ 2011-02-09 20:01 UTC (permalink / raw)
  To: Chuck Lever
  Cc: deepaksi, Armando VISCONTI, Trond Myklebust, netdev,
	Linux NFS Mailing List, Shiraz HASHIM, Viresh KUMAR,
	Peppe CAVALLARO, amitgoel
In-Reply-To: <EFFBD485-8B7E-44D1-A8D2-61E73BF42DF9@oracle.com>

[See http://marc.info/?l=linux-nfs&m=129597871731431&w=2 for the
remainder of the context that was trimmed here; it's long enough as is!]

On Tue, Jan 25, 2011 at 01:04:21PM -0500, Chuck Lever wrote:
> On Jan 25, 2011, at 6:56 AM, deepaksi wrote:
> > Are there some changes in the kernel framework w.r.t rpc ping time
> > out ?  This problem was not there in previous kernels.
> 
> There have been changes in the RPC socket code around how it manages
> recovery from failed attempts to connect.  We also have new logic now
> in the RPC client that causes RPC ping to fail immediately if a host
> can't be reached.
> 
> Thanks for your efforts so far.  It would be helpful if you could
> bisect to determine which commit(s) introduced this RPC client
> behavior (or any related changes to your network driver behavior).

I'm having this same problem with a Freescale MPC8313E-RDB board while
trying to do nfsroot in 2.6.37 with its built-in gianfar ethernet.
I was able to bisect it down to this commit:

56463e50d1fc3f070492434cea6303b35ea000de is the first bad commit
commit 56463e50d1fc3f070492434cea6303b35ea000de
Author: Chuck Lever <chuck.lever@oracle.com>
Date:   Fri Sep 17 10:54:37 2010 -0400

    NFS: Use super.c for NFSROOT mount option parsing
    
    Replace duplicate code in NFSROOT for mounting an NFS server on '/'
    with logic that uses the existing mainline text-based logic in the NFS
    client.
    
    Add documenting comments where appropriate.
    
    Note that this means NFSROOT mounts now use the same default settings
    as v2/v3 mounts done via mount(2) from user space.
    
      vers=3,tcp,rsize=<negotiated default>,wsize=<negotiated default>
    
    As before, however, no version/protocol negotiation with the server is
    done.
    
    Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

Here's the boot console logs from both the good and bad cases with NFS
and RPC debug enabled.  Note that the gianfar ethernet driver takes
approximately 2 seconds to get a useful link (i.e. between
"ADDRCONF(NETDEV_UP): eth1: link is not ready" and
"ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready"), which I suspect is
part of the problem here.  Also, once I added RPC debug in the bad case
it started working occasionally, which I suspect is because of delays
induced by the serial console blocking.

Hopefully this helps narrow it down.

********** good (60ac03685bf513f9d9b6e8e098018b35309ed326) **********
Using MPC831x RDB machine description
Linux version 2.6.36-rc3+ (bdowning@scatha) (gcc version 4.4.2 (crosstool-NG-hg_default@1733_02db017f4fe1) ) #25 Wed Feb 9 13:08:52 CST 2011
bootconsole [udbg0] enabled
setup_arch: bootmem
mpc831x_rdb_setup_arch()
Found FSL PCI host bridge at 0x00000000e0008500. Firmware bus number: 0->0
PCI host bridge /sleep-nexus/pci@e0008500 (primary) ranges:
 MEM 0x0000000090000000..0x000000009fffffff -> 0x0000000090000000 
 MEM 0x0000000080000000..0x000000008fffffff -> 0x0000000080000000 Prefetch
  IO 0x00000000e2000000..0x00000000e20fffff -> 0x0000000000000000
arch: exit
Zone PFN ranges:
  DMA      0x00000000 -> 0x00008000
  Normal   empty
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00008000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
Kernel command line: nfsroot=172.26.128.52:/srv/nfs/root0 ip=172.26.130.10:172.26.128.52:172.26.128.1:255.255.240.0:ppc10:eth1:off root=/dev/nfs rw console=ttyS0,115200 nfsrootdebug
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 124812k/131072k available (4768k kernel code, 6260k reserved, 216k data, 101k bss, 192k init)
Kernel virtual memory layout:
  * 0xfffdf000..0xfffff000  : fixmap
  * 0xfdefb000..0xfe000000  : early ioremap
  * 0xc9000000..0xfdefb000  : vmalloc & ioremap
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:512
IPIC (128 IRQ sources) at c9000700
clocksource: timebase mult[6000002] shift[22] registered
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
NET: Registered protocol family 16
             
PCI: Probing PCI hardware
bio: create slab <bio-0> at 0
vgaarb: loaded
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Switching to clocksource timebase
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
msgmni has been set to 243
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xe0004500 (irq = 16) is a 16550A
console [ttyS0] enabled, bootconsole disabled
console [ttyS0] enabled, bootconsole disabled
serial8250.0: ttyS1 at MMIO 0xe0004600 (irq = 17) is a 16550A
brd: module loaded
loop: module loaded
fe000000.flash: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000001 Chip ID 0x001001
Amd/Fujitsu Extended Query Table at 0x0040
  Amd/Fujitsu Extended Query version 1.3.
fe000000.flash: Swapping erase regions for top-boot CFI table.
number of CFI chips: 1
cmdlinepart partition parsing not available
RedBoot partition parsing not available
of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
NAND device: Manufacturer ID: 0xec, Chip ID: 0x75 (Samsung NAND 32MiB 3,3V 8-bit)
cmdlinepart partition parsing not available
RedBoot partition parsing not available
Creating 3 MTD partitions on "e2800000.flash":
0x000000000000-0x000000100000 : "u-boot"
0x000000100000-0x000000400000 : "kernel"
0x000000400000-0x000002000000 : "fs"
eLBC NAND device at 0xe2800000, bank 1
Fixed MDIO Bus: probed
of:fsl-gianfar e0024000.ethernet: enabled errata workarounds, flags: 0x7
eth0: Gianfar Ethernet Controller Version 1.2, 08:00:3e:03:01:a0
eth0: Running with NAPI enabled
eth0: RX BD ring size for Q[0]: 256
eth0: TX BD ring size for Q[0]: 256
of:fsl-gianfar e0025000.ethernet: enabled errata workarounds, flags: 0x7
eth1: Gianfar Ethernet Controller Version 1.2, 08:00:3e:03:01:a1
eth1: Running with NAPI enabled
eth1: RX BD ring size for Q[0]: 256
eth1: TX BD ring size for Q[0]: 256
Freescale PowerQUICC MII Bus: probed
Freescale PowerQUICC MII Bus: probed
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
fsl-ehci fsl-ehci.0: irq 38, io base 0xe0023000
fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
i2c /dev entries driver
of:mpc-i2c e0003000.i2c: timeout 1000000 us
rtc-ds1307 0-0068: rtc core: registered ds1339 as rtc0
of:mpc-i2c e0003100.i2c: timeout 1000000 us
alg: No test for authenc(hmac(sha1),cbc(aes)) (authenc-hmac-sha1-cbc-aes-talitos)
of:talitos e0030000.crypto: authenc-hmac-sha1-cbc-aes-talitos
alg: No test for authenc(hmac(sha1),cbc(des3_ede)) (authenc-hmac-sha1-cbc-3des-talitos)
of:talitos e0030000.crypto: authenc-hmac-sha1-cbc-3des-talitos
alg: No test for authenc(hmac(sha256),cbc(aes)) (authenc-hmac-sha256-cbc-aes-talitos)
of:talitos e0030000.crypto: authenc-hmac-sha256-cbc-aes-talitos
alg: No test for authenc(hmac(sha256),cbc(des3_ede)) (authenc-hmac-sha256-cbc-3des-talitos)
of:talitos e0030000.crypto: authenc-hmac-sha256-cbc-3des-talitos
alg: No test for authenc(hmac(md5),cbc(aes)) (authenc-hmac-md5-cbc-aes-talitos)
of:talitos e0030000.crypto: authenc-hmac-md5-cbc-aes-talitos
alg: No test for authenc(hmac(md5),cbc(des3_ede)) (authenc-hmac-md5-cbc-3des-talitos)
of:talitos e0030000.crypto: authenc-hmac-md5-cbc-3des-talitos
of:talitos e0030000.crypto: cbc-aes-talitos
of:talitos e0030000.crypto: cbc-3des-talitos
of:talitos e0030000.crypto: md5-talitos
of:talitos e0030000.crypto: sha1-talitos
of:talitos e0030000.crypto: sha224-talitos
of:talitos e0030000.crypto: sha256-talitos
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
TCP cubic registered
NET: Registered protocol family 10
IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
NET: Registered protocol family 15
Registering the dns_resolver key type
rtc-ds1307 0-0068: setting system clock to 2000-01-06 16:34:00 UTC (947176440)
ADDRCONF(NETDEV_UP): eth1: link is not ready
IP-Config: Complete:
     device=eth1, addr=172.26.130.10, mask=255.255.240.0, gw=172.26.128.1,
     host=ppc10, domain=, nis-domain=(none),
     bootserver=172.26.128.52, rootserver=172.26.128.52, rootpath=
Looking up port of RPC 100003/2 on 172.26.128.52
RPC:       rpcb_getport_sync(172.26.128.52, 100003, 2, 17)
RPC:       set up xprt to 172.26.128.52 (port 111) via udp
RPC:       created transport c79c6800 with 16 slots
RPC:       creating rpcbind client for 172.26.128.52 (xprt c79c6800)
RPC:       creating UNIX authenticator for client c7920800
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fa80
RPC:     1 __rpc_execute flags=0x280
RPC:     1 call_start rpcbind2 proc GETPORT (sync)
RPC:     1 call_reserve (status 0)
RPC:     1 reserved req c780b000 xid 5420c919
RPC:     1 call_reserveresult (status 0)
RPC:     1 call_allocate (status 0)
RPC:     1 allocated buffer of size 412 at c79c7000
RPC:     1 call_refresh (status 0)
RPC:     1 looking up UNIX cred
RPC:       looking up UNIX cred
RPC:       allocating UNIX cred for uid 0 gid 0
RPC:     1 refreshing UNIX cred c792fb00
RPC:     1 call_refreshresult (status 0)
RPC:     1 call_bind (status 0)
RPC:     1 call_connect xprt c79c6800 is not connected
RPC:     1 xprt_connect xprt c79c6800 is not connected
RPC:     1 xprt_cwnd_limited cong = 0 cwnd = 256
RPC:     1 sleep_on(queue "xprt_pending" time 4294892880)
RPC:     1 added to queue c79c69ac "xprt_pending"
RPC:     1 setting alarm for 5000 ms
RPC:       xs_connect scheduled xprt c79c6800
RPC:     1 sync task going to sleep
RPC:       xs_bind4 0.0.0.0:0: ok (0)
RPC:       worker connecting xprt c79c6800 via udp to 172.26.128.52 (port 111)
RPC:     1 __rpc_wake_up_task (now 4294892888)
RPC:     1 disabling timer
RPC:     1 removed from queue c79c69ac "xprt_pending"
RPC:       __rpc_wake_up_task done
RPC:     1 sync task resuming
RPC:     1 xprt_connect_status: connection established
RPC:     1 call_connect_status (status 0)
RPC:     1 call_transmit (status 0)
RPC:     1 xprt_prepare_transmit
RPC:     1 rpc_xdr_encode (status 0)
RPC:     1 marshaling UNIX cred c792fb00
RPC:     1 using AUTH_UNIX cred c792fb00 to wrap rpc data
RPC:     1 encoding PMAP_GETPORT call (100003, 2, 17, 0)
RPC:     1 xprt_transmit(84)
RPC:       xs_udp_send_request(84) = 84
RPC:     1 xmit complete
RPC:     1 sleep_on(queue "xprt_pending" time 4294892902)
RPC:     1 added to queue c79c69ac "xprt_pending"
RPC:     1 setting alarm for 5000 ms
RPC:     1 sync task going to sleep
PHY: mdio@e0024520:04 - Link is Up - 1000/Full
ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
RPC:     1 timeout
RPC:     1 __rpc_wake_up_task (now 4294894156)
RPC:     1 disabling timer
RPC:     1 removed from queue c79c69ac "xprt_pending"
RPC:       __rpc_wake_up_task done
RPC:     1 sync task resuming
RPC:     1 xprt_timer
RPC:       cong 256, cwnd was 256, now 256
RPC:       wake_up_next(c79c6954 "xprt_resend")
RPC:       wake_up_next(c79c68fc "xprt_sending")
RPC:     1 call_status (status -110)
RPC:     1 call_timeout (minor)
RPC:     1 call_bind (status 0)
RPC:     1 call_connect xprt c79c6800 is connected
RPC:     1 call_transmit (status 0)
RPC:     1 xprt_prepare_transmit
RPC:     1 xprt_cwnd_limited cong = 0 cwnd = 256
RPC:     1 rpc_xdr_encode (status 0)
RPC:     1 marshaling UNIX cred c792fb00
RPC:     1 using AUTH_UNIX cred c792fb00 to wrap rpc data
RPC:     1 encoding PMAP_GETPORT call (100003, 2, 17, 0)
RPC:     1 xprt_transmit(84)
RPC:       xs_udp_send_request(84) = 84
RPC:     1 xmit complete
RPC:     1 sleep_on(queue "xprt_pending" time 4294894176)
RPC:     1 added to queue c79c69ac "xprt_pending"
RPC:     1 setting alarm for 10000 ms
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 256, now 512
RPC:     1 xid 5420c919 complete (28 bytes received)
RPC:     1 __rpc_wake_up_task (now 4294894183)
RPC:     1 disabling timer
RPC:     1 removed from queue c79c69ac "xprt_pending"
RPC:       __rpc_wake_up_task done
RPC:       wake_up_next(c79c6954 "xprt_resend")
RPC:       wake_up_next(c79c68fc "xprt_sending")
RPC:     1 call_status (status 28)
RPC:     1 call_decode (status 28)
RPC:     1 validating UNIX cred c792fb00
RPC:     1 using AUTH_UNIX cred c792fb00 to unwrap rpc data
RPC:     1 PMAP_GETPORT result: 2049
RPC:     1 call_decode result 0
RPC:     1 return 0, status 0
RPC:     1 release task
RPC:       freeing buffer of size 412 at c79c7000
RPC:     1 release request c780b000
RPC:       wake_up_next(c79c6a04 "xprt_backlog")
RPC:       rpc_release_client(c7920800)
RPC:     1 freeing task
RPC:       shutting down rpcbind client for 172.26.128.52
RPC:       rpc_release_client(c7920800)
RPC:       destroying UNIX authenticator c04d5950
RPC:       destroying rpcbind client for 172.26.128.52
RPC:       destroying transport c79c6800
RPC:       xs_destroy xprt c79c6800
RPC:       xs_close xprt c79c6800
RPC:       disconnected transport c79c6800
Root-NFS: Portmapper on server returned 2049 as nfsd port
Looking up port of RPC 100005/1 on 172.26.128.52
RPC:       rpcb_getport_sync(172.26.128.52, 100005, 1, 17)
RPC:       set up xprt to 172.26.128.52 (port 111) via udp
RPC:       created transport c793f800 with 16 slots
RPC:       creating rpcbind client for 172.26.128.52 (xprt c793f800)
RPC:       creating UNIX authenticator for client c79c8a00
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fa80
RPC:     2 __rpc_execute flags=0x280
RPC:     2 call_start rpcbind2 proc GETPORT (sync)
RPC:     2 call_reserve (status 0)
RPC:     2 reserved req c780b000 xid 0fe4a33c
RPC:     2 call_reserveresult (status 0)
RPC:     2 call_allocate (status 0)
RPC:     2 allocated buffer of size 412 at c79c6800
RPC:     2 call_refresh (status 0)
RPC:     2 looking up UNIX cred
RPC:       looking up UNIX cred
RPC:       allocating UNIX cred for uid 0 gid 0
RPC:     2 refreshing UNIX cred c792fe80
RPC:     2 call_refreshresult (status 0)
RPC:     2 call_bind (status 0)
RPC:     2 call_connect xprt c793f800 is not connected
RPC:     2 xprt_connect xprt c793f800 is not connected
RPC:     2 xprt_cwnd_limited cong = 0 cwnd = 256
RPC:     2 sleep_on(queue "xprt_pending" time 4294894234)
RPC:     2 added to queue c793f9ac "xprt_pending"
RPC:     2 setting alarm for 5000 ms
RPC:       xs_connect scheduled xprt c793f800
RPC:     2 sync task going to sleep
RPC:       unx_free_cred c792fb00
RPC:       xs_bind4 0.0.0.0:0: ok (0)
RPC:       worker connecting xprt c793f800 via udp to 172.26.128.52 (port 111)
RPC:     2 __rpc_wake_up_task (now 4294894243)
RPC:     2 disabling timer
RPC:     2 removed from queue c793f9ac "xprt_pending"
RPC:       __rpc_wake_up_task done
RPC:     2 sync task resuming
RPC:     2 xprt_connect_status: connection established
RPC:     2 call_connect_status (status 0)
RPC:     2 call_transmit (status 0)
RPC:     2 xprt_prepare_transmit
RPC:     2 rpc_xdr_encode (status 0)
RPC:     2 marshaling UNIX cred c792fe80
RPC:     2 using AUTH_UNIX cred c792fe80 to wrap rpc data
RPC:     2 encoding PMAP_GETPORT call (100005, 1, 17, 0)
RPC:     2 xprt_transmit(84)
RPC:       xs_udp_send_request(84) = 84
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 256, now 512
RPC:     2 xid 0fe4a33c complete (28 bytes received)
RPC:     2 xmit complete
RPC:       wake_up_next(c793f954 "xprt_resend")
RPC:       wake_up_next(c793f8fc "xprt_sending")
RPC:     2 call_status (status 28)
RPC:     2 call_decode (status 28)
RPC:     2 validating UNIX cred c792fe80
RPC:     2 using AUTH_UNIX cred c792fe80 to unwrap rpc data
RPC:     2 PMAP_GETPORT result: 37346
RPC:     2 call_decode result 0
RPC:     2 return 0, status 0
RPC:     2 release task
RPC:       freeing buffer of size 412 at c79c6800
RPC:     2 release request c780b000
RPC:       wake_up_next(c793fa04 "xprt_backlog")
RPC:       rpc_release_client(c79c8a00)
RPC:     2 freeing task
RPC:       shutting down rpcbind client for 172.26.128.52
RPC:       rpc_release_client(c79c8a00)
RPC:       destroying UNIX authenticator c04d5950
RPC:       destroying rpcbind client for 172.26.128.52
RPC:       destroying transport c793f800
RPC:       xs_destroy xprt c793f800
RPC:       xs_close xprt c793f800
RPC:       disconnected transport c793f800
Root-NFS: mountd port is 37346
NFS: sending MNT request for server:/srv/nfs/root0
RPC:       set up xprt to 172.26.128.52 (port 37346) via udp
RPC:       created transport c79c6800 with 16 slots
RPC:       creating mount client for 172.26.128.52 (xprt c79c6800)
RPC:       creating UNIX authenticator for client c79c8a00
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fb00
RPC:     3 __rpc_execute flags=0x680
RPC:     3 call_start mount1 proc NULL (sync)
RPC:     3 call_reserve (status 0)
RPC:     3 reserved req c780b000 xid e265f825
RPC:     3 call_reserveresult (status 0)
RPC:     3 call_allocate (status 0)
RPC:     3 allocated buffer of size 392 at c7940000
RPC:     3 call_refresh (status 0)
RPC:     3 holding NULL cred c04d591c
RPC:     3 refreshing NULL cred c04d591c
RPC:     3 call_refreshresult (status 0)
RPC:     3 call_bind (status 0)
RPC:     3 call_connect xprt c79c6800 is not connected
RPC:     3 xprt_connect xprt c79c6800 is not connected
RPC:     3 xprt_cwnd_limited cong = 0 cwnd = 256
RPC:     3 sleep_on(queue "xprt_pending" time 4294894305)
RPC:     3 added to queue c79c69ac "xprt_pending"
RPC:     3 setting alarm for 5000 ms
RPC:       xs_connect scheduled xprt c79c6800
RPC:     3 sync task going to sleep
RPC:       unx_free_cred c792fe80
RPC:       xs_bind4 0.0.0.0:672: ok (0)
RPC:       worker connecting xprt c79c6800 via udp to 172.26.128.52 (port 37346)
RPC:     3 __rpc_wake_up_task (now 4294894313)
RPC:     3 disabling timer
RPC:     3 removed from queue c79c69ac "xprt_pending"
RPC:       __rpc_wake_up_task done
RPC:     3 sync task resuming
RPC:     3 xprt_connect_status: connection established
RPC:     3 call_connect_status (status 0)
RPC:     3 call_transmit (status 0)
RPC:     3 xprt_prepare_transmit
RPC:     3 rpc_xdr_encode (status 0)
RPC:     3 marshaling NULL cred c04d591c
RPC:     3 using AUTH_NULL cred c04d591c to wrap rpc data
RPC:     3 xprt_transmit(40)
RPC:       xs_udp_send_request(40) = 40
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 256, now 512
RPC:     3 xid e265f825 complete (24 bytes received)
RPC:     3 xmit complete
RPC:       wake_up_next(c79c6954 "xprt_resend")
RPC:       wake_up_next(c79c68fc "xprt_sending")
RPC:     3 call_status (status 24)
RPC:     3 call_decode (status 24)
RPC:     3 validating NULL cred c04d591c
RPC:     3 using AUTH_NULL cred c04d591c to unwrap rpc data
RPC:     3 call_decode result 0
RPC:     3 return 0, status 0
RPC:     3 release task
RPC:       freeing buffer of size 392 at c7940000
RPC:     3 release request c780b000
RPC:       wake_up_next(c79c6a04 "xprt_backlog")
RPC:       rpc_release_client(c79c8a00)
RPC:     3 freeing task
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fb00
RPC:     4 __rpc_execute flags=0x280
RPC:     4 call_start mount1 proc MOUNT (sync)
RPC:     4 call_reserve (status 0)
RPC:     4 reserved req c780b000 xid e265f826
RPC:     4 call_reserveresult (status 0)
RPC:     4 call_allocate (status 0)
RPC:     4 allocated buffer of size 1456 at c7940000
RPC:     4 call_refresh (status 0)
RPC:     4 looking up UNIX cred
RPC:       looking up UNIX cred
RPC:       allocating UNIX cred for uid 0 gid 0
RPC:     4 refreshing UNIX cred c792fe80
RPC:     4 call_refreshresult (status 0)
RPC:     4 call_bind (status 0)
RPC:     4 call_connect xprt c79c6800 is connected
RPC:     4 call_transmit (status 0)
RPC:     4 xprt_prepare_transmit
RPC:     4 xprt_cwnd_limited cong = 0 cwnd = 512
RPC:     4 rpc_xdr_encode (status 0)
RPC:     4 marshaling UNIX cred c792fe80
RPC:     4 using AUTH_UNIX cred c792fe80 to wrap rpc data
RPC:     4 xprt_transmit(88)
RPC:       xs_udp_send_request(88) = 88
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 512, now 512
RPC:     4 xid e265f826 complete (60 bytes received)
RPC:     4 xmit complete
RPC:       wake_up_next(c79c6954 "xprt_resend")
RPC:       wake_up_next(c79c68fc "xprt_sending")
RPC:     4 call_status (status 60)
RPC:     4 call_decode (status 60)
RPC:     4 validating UNIX cred c792fe80
RPC:     4 using AUTH_UNIX cred c792fe80 to unwrap rpc data
RPC:     4 call_decode result 0
RPC:     4 return 0, status 0
RPC:     4 release task
RPC:       freeing buffer of size 1456 at c7940000
RPC:     4 release request c780b000
RPC:       wake_up_next(c79c6a04 "xprt_backlog")
RPC:       rpc_release_client(c79c8a00)
RPC:     4 freeing task
RPC:       shutting down mount client for 172.26.128.52
RPC:       rpc_release_client(c79c8a00)
RPC:       destroying UNIX authenticator c04d5950
RPC:       destroying mount client for 172.26.128.52
RPC:       destroying transport c79c6800
RPC:       xs_destroy xprt c79c6800
RPC:       xs_close xprt c79c6800
RPC:       disconnected transport c79c6800
NFS: MNT request succeeded
RPC:       looking up machine cred
RPC:       allocated machine cred c7927300 for uid 0 gid 0
RPC:       set up xprt to 172.26.128.52 (port 2049) via udp
RPC:       created transport c7940000 with 16 slots
RPC:       creating nfs client for 172.26.128.52 (xprt c7940000)
RPC:       creating UNIX authenticator for client c79c8a00
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fa80
RPC:     5 __rpc_execute flags=0x680
RPC:     5 call_start nfs2 proc NULL (sync)
RPC:     5 call_reserve (status 0)
RPC:     5 reserved req c780e000 xid 0d837923
RPC:     5 call_reserveresult (status 0)
RPC:     5 call_allocate (status 0)
RPC:     5 allocated buffer of size 392 at c79c6800
RPC:     5 call_refresh (status 0)
RPC:     5 holding NULL cred c04d591c
RPC:     5 refreshing NULL cred c04d591c
RPC:     5 call_refreshresult (status 0)
RPC:     5 call_bind (status 0)
RPC:     5 call_connect xprt c7940000 is not connected
RPC:     5 xprt_connect xprt c7940000 is not connected
RPC:     5 xprt_cwnd_limited cong = 0 cwnd = 256
RPC:     5 sleep_on(queue "xprt_pending" time 4294894412)
RPC:     5 added to queue c79401ac "xprt_pending"
RPC:     5 setting alarm for 1100 ms
RPC:       xs_connect scheduled xprt c7940000
RPC:     5 sync task going to sleep
RPC:       unx_free_cred c792fe80
RPC:       xs_bind4 0.0.0.0:866: ok (0)
RPC:       worker connecting xprt c7940000 via udp to 172.26.128.52 (port 2049)
RPC:     5 __rpc_wake_up_task (now 4294894421)
RPC:     5 disabling timer
RPC:     5 removed from queue c79401ac "xprt_pending"
RPC:       __rpc_wake_up_task done
RPC:     5 sync task resuming
RPC:     5 xprt_connect_status: connection established
RPC:     5 call_connect_status (status 0)
RPC:     5 call_transmit (status 0)
RPC:     5 xprt_prepare_transmit
RPC:     5 rpc_xdr_encode (status 0)
RPC:     5 marshaling NULL cred c04d591c
RPC:     5 using AUTH_NULL cred c04d591c to wrap rpc data
RPC:     5 xprt_transmit(40)
RPC:       xs_udp_send_request(40) = 40
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 256, now 512
RPC:     5 xid 0d837923 complete (24 bytes received)
RPC:     5 xmit complete
RPC:       wake_up_next(c7940154 "xprt_resend")
RPC:       wake_up_next(c79400fc "xprt_sending")
RPC:     5 call_status (status 24)
RPC:     5 call_decode (status 24)
RPC:     5 validating NULL cred c04d591c
RPC:     5 using AUTH_NULL cred c04d591c to unwrap rpc data
RPC:     5 call_decode result 0
RPC:     5 return 0, status 0
RPC:     5 release task
RPC:       freeing buffer of size 392 at c79c6800
RPC:     5 release request c780e000
RPC:       wake_up_next(c7940204 "xprt_backlog")
RPC:       rpc_release_client(c79c8a00)
RPC:     5 freeing task
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fa80
RPC:     6 __rpc_execute flags=0x80
RPC:     6 call_start nfs2 proc STATFS (sync)
RPC:     6 call_reserve (status 0)
RPC:     6 reserved req c780e000 xid 0d837924
RPC:     6 call_reserveresult (status 0)
RPC:     6 call_allocate (status 0)
RPC:     6 allocated buffer of size 448 at c79d2800
RPC:     6 call_refresh (status 0)
RPC:     6 looking up UNIX cred
RPC:       looking up UNIX cred
RPC:       allocating UNIX cred for uid 0 gid 0
RPC:     6 refreshing UNIX cred c792fe80
RPC:     6 call_refreshresult (status 0)
RPC:     6 call_bind (status 0)
RPC:     6 call_connect xprt c7940000 is connected
RPC:     6 call_transmit (status 0)
RPC:     6 xprt_prepare_transmit
RPC:     6 xprt_cwnd_limited cong = 0 cwnd = 512
RPC:     6 rpc_xdr_encode (status 0)
RPC:     6 marshaling UNIX cred c792fe80
RPC:     6 using AUTH_UNIX cred c792fe80 to wrap rpc data
RPC:     6 xprt_transmit(100)
RPC:       xs_udp_send_request(100) = 100
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 512, now 512
RPC:     6 xid 0d837924 complete (48 bytes received)
RPC:     6 xmit complete
RPC:       wake_up_next(c7940154 "xprt_resend")
RPC:       wake_up_next(c79400fc "xprt_sending")
RPC:     6 call_status (status 48)
RPC:     6 call_decode (status 48)
RPC:     6 validating UNIX cred c792fe80
RPC:     6 using AUTH_UNIX cred c792fe80 to unwrap rpc data
RPC:     6 call_decode result 0
RPC:     6 return 0, status 0
RPC:     6 release task
RPC:       freeing buffer of size 448 at c79d2800
RPC:     6 release request c780e000
RPC:       wake_up_next(c7940204 "xprt_backlog")
RPC:       rpc_release_client(c79c8b00)
RPC:     6 freeing task
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fa80
RPC:     7 __rpc_execute flags=0x80
RPC:     7 call_start nfs2 proc GETATTR (sync)
RPC:     7 call_reserve (status 0)
RPC:     7 reserved req c780e000 xid 0d837925
RPC:     7 call_reserveresult (status 0)
RPC:     7 call_allocate (status 0)
RPC:     7 allocated buffer of size 496 at c79d2800
RPC:     7 call_refresh (status 0)
RPC:     7 looking up UNIX cred
RPC:       looking up UNIX cred
RPC:     7 refreshing UNIX cred c792fe80
RPC:     7 call_refreshresult (status 0)
RPC:     7 call_bind (status 0)
RPC:     7 call_connect xprt c7940000 is connected
RPC:     7 call_transmit (status 0)
RPC:     7 xprt_prepare_transmit
RPC:     7 xprt_cwnd_limited cong = 0 cwnd = 512
RPC:     7 rpc_xdr_encode (status 0)
RPC:     7 marshaling UNIX cred c792fe80
RPC:     7 using AUTH_UNIX cred c792fe80 to wrap rpc data
RPC:     7 xprt_transmit(100)
RPC:       xs_udp_send_request(100) = 100
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 512, now 512
RPC:     7 xid 0d837925 complete (96 bytes received)
RPC:     7 xmit complete
RPC:       wake_up_next(c7940154 "xprt_resend")
RPC:       wake_up_next(c79400fc "xprt_sending")
RPC:     7 call_status (status 96)
RPC:     7 call_decode (status 96)
RPC:     7 validating UNIX cred c792fe80
RPC:     7 using AUTH_UNIX cred c792fe80 to unwrap rpc data
RPC:     7 call_decode result 0
RPC:     7 return 0, status 0
RPC:     7 release task
RPC:       freeing buffer of size 496 at c79d2800
RPC:     7 release request c780e000
RPC:       wake_up_next(c7940204 "xprt_backlog")
RPC:       rpc_release_client(c79c8b00)
RPC:     7 freeing task
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fa80
RPC:     8 __rpc_execute flags=0x80
RPC:     8 call_start nfs2 proc GETATTR (sync)
RPC:     8 call_reserve (status 0)
RPC:     8 reserved req c780e000 xid 0d837926
RPC:     8 call_reserveresult (status 0)
RPC:     8 call_allocate (status 0)
RPC:     8 allocated buffer of size 496 at c79d2800
RPC:     8 call_refresh (status 0)
RPC:     8 looking up UNIX cred
RPC:       looking up UNIX cred
RPC:     8 refreshing UNIX cred c792fe80
RPC:     8 call_refreshresult (status 0)
RPC:     8 call_bind (status 0)
RPC:     8 call_connect xprt c7940000 is connected
RPC:     8 call_transmit (status 0)
RPC:     8 xprt_prepare_transmit
RPC:     8 xprt_cwnd_limited cong = 0 cwnd = 512
RPC:     8 rpc_xdr_encode (status 0)
RPC:     8 marshaling UNIX cred c792fe80
RPC:     8 using AUTH_UNIX cred c792fe80 to wrap rpc data
RPC:     8 xprt_transmit(100)
RPC:       xs_udp_send_request(100) = 100
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 512, now 512
RPC:     8 xid 0d837926 complete (96 bytes received)
RPC:     8 xmit complete
RPC:       wake_up_next(c7940154 "xprt_resend")
RPC:       wake_up_next(c79400fc "xprt_sending")
RPC:     8 call_status (status 96)
RPC:     8 call_decode (status 96)
RPC:     8 validating UNIX cred c792fe80
RPC:     8 using AUTH_UNIX cred c792fe80 to unwrap rpc data
RPC:     8 call_decode result 0
RPC:     8 return 0, status 0
RPC:     8 release task
RPC:       freeing buffer of size 496 at c79d2800
RPC:     8 release request c780e000
RPC:       wake_up_next(c7940204 "xprt_backlog")
RPC:       rpc_release_client(c79c8b00)
RPC:     8 freeing task
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fa80
RPC:     9 __rpc_execute flags=0x80
RPC:     9 call_start nfs2 proc STATFS (sync)
RPC:     9 call_reserve (status 0)
RPC:     9 reserved req c780e000 xid 0d837927
RPC:     9 call_reserveresult (status 0)
RPC:     9 call_allocate (status 0)
RPC:     9 allocated buffer of size 448 at c7943000
RPC:     9 call_refresh (status 0)
RPC:     9 looking up UNIX cred
RPC:       looking up UNIX cred
RPC:     9 refreshing UNIX cred c792fe80
RPC:     9 call_refreshresult (status 0)
RPC:     9 call_bind (status 0)
RPC:     9 call_connect xprt c7940000 is connected
RPC:     9 call_transmit (status 0)
RPC:     9 xprt_prepare_transmit
RPC:     9 xprt_cwnd_limited cong = 0 cwnd = 512
RPC:     9 rpc_xdr_encode (status 0)
RPC:     9 marshaling UNIX cred c792fe80
RPC:     9 using AUTH_UNIX cred c792fe80 to wrap rpc data
RPC:     9 xprt_transmit(100)
RPC:       xs_udp_send_request(100) = 100
RPC:       xs_udp_data_ready...
RPC:       cong 256, cwnd was 512, now 512
RPC:     9 xid 0d837927 complete (48 bytes received)
RPC:     9 xmit complete
RPC:       wake_up_next(c7940154 "xprt_resend")
RPC:       wake_up_next(c79400fc "xprt_sending")
RPC:     9 call_status (status 48)
RPC:     9 call_decode (status 48)
RPC:     9 validating UNIX cred c792fe80
RPC:     9 using AUTH_UNIX cred c792fe80 to unwrap rpc data
RPC:     9 call_decode result 0
RPC:     9 return 0, status 0
RPC:     9 release task
RPC:       freeing buffer of size 448 at c7943000
RPC:     9 release request c780e000
RPC:       wake_up_next(c7940204 "xprt_backlog")
RPC:       rpc_release_client(c79c8b00)
RPC:     9 freeing task
VFS: Mounted root (nfs filesystem) on device 0:12.
Freeing unused kernel memory: 192k init

********** bad (56463e50d1fc3f070492434cea6303b35ea000de) **********
Using MPC831x RDB machine description
Linux version 2.6.36-rc3+ (bdowning@scatha) (gcc version 4.4.2 (crosstool-NG-hg_default@1733_02db017f4fe1) ) #30 Wed Feb 9 13:20:18 CST 2011
bootconsole [udbg0] enabled
setup_arch: bootmem
mpc831x_rdb_setup_arch()
Found FSL PCI host bridge at 0x00000000e0008500. Firmware bus number: 0->0
PCI host bridge /sleep-nexus/pci@e0008500 (primary) ranges:
 MEM 0x0000000090000000..0x000000009fffffff -> 0x0000000090000000 
 MEM 0x0000000080000000..0x000000008fffffff -> 0x0000000080000000 Prefetch
  IO 0x00000000e2000000..0x00000000e20fffff -> 0x0000000000000000
arch: exit
Zone PFN ranges:
  DMA      0x00000000 -> 0x00008000
  Normal   empty
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00008000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
Kernel command line: nfsroot=172.26.128.52:/srv/nfs/root0 ip=172.26.130.10:172.26.128.52:172.26.128.1:255.255.240.0:ppc10:eth1:off root=/dev/nfs rw console=ttyS0,115200 nfsrootdebug
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 124812k/131072k available (4768k kernel code, 6260k reserved, 216k data, 101k bss, 192k init)
Kernel virtual memory layout:
  * 0xfffdf000..0xfffff000  : fixmap
  * 0xfdefb000..0xfe000000  : early ioremap
  * 0xc9000000..0xfdefb000  : vmalloc & ioremap
SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:512
IPIC (128 IRQ sources) at c9000700
clocksource: timebase mult[6000002] shift[22] registered
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
NET: Registered protocol family 16
             
PCI: Probing PCI hardware
bio: create slab <bio-0> at 0
vgaarb: loaded
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Switching to clocksource timebase
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
msgmni has been set to 243
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xe0004500 (irq = 16) is a 16550A
console [ttyS0] enabled, bootconsole disabled
console [ttyS0] enabled, bootconsole disabled
serial8250.0: ttyS1 at MMIO 0xe0004600 (irq = 17) is a 16550A
brd: module loaded
loop: module loaded
fe000000.flash: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000001 Chip ID 0x001001
Amd/Fujitsu Extended Query Table at 0x0040
  Amd/Fujitsu Extended Query version 1.3.
fe000000.flash: Swapping erase regions for top-boot CFI table.
number of CFI chips: 1
cmdlinepart partition parsing not available
RedBoot partition parsing not available
of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
of:fsl-elbc e0005000.localbus: read_byte beyond end of buffer
NAND device: Manufacturer ID: 0xec, Chip ID: 0x75 (Samsung NAND 32MiB 3,3V 8-bit)
cmdlinepart partition parsing not available
RedBoot partition parsing not available
Creating 3 MTD partitions on "e2800000.flash":
0x000000000000-0x000000100000 : "u-boot"
0x000000100000-0x000000400000 : "kernel"
0x000000400000-0x000002000000 : "fs"
eLBC NAND device at 0xe2800000, bank 1
Fixed MDIO Bus: probed
of:fsl-gianfar e0024000.ethernet: enabled errata workarounds, flags: 0x7
eth0: Gianfar Ethernet Controller Version 1.2, 08:00:3e:03:01:a0
eth0: Running with NAPI enabled
eth0: RX BD ring size for Q[0]: 256
eth0: TX BD ring size for Q[0]: 256
of:fsl-gianfar e0025000.ethernet: enabled errata workarounds, flags: 0x7
eth1: Gianfar Ethernet Controller Version 1.2, 08:00:3e:03:01:a1
eth1: Running with NAPI enabled
eth1: RX BD ring size for Q[0]: 256
eth1: TX BD ring size for Q[0]: 256
Freescale PowerQUICC MII Bus: probed
Freescale PowerQUICC MII Bus: probed
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
fsl-ehci fsl-ehci.0: irq 38, io base 0xe0023000
fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
i2c /dev entries driver
of:mpc-i2c e0003000.i2c: timeout 1000000 us
rtc-ds1307 0-0068: rtc core: registered ds1339 as rtc0
of:mpc-i2c e0003100.i2c: timeout 1000000 us
alg: No test for authenc(hmac(sha1),cbc(aes)) (authenc-hmac-sha1-cbc-aes-talitos)
of:talitos e0030000.crypto: authenc-hmac-sha1-cbc-aes-talitos
alg: No test for authenc(hmac(sha1),cbc(des3_ede)) (authenc-hmac-sha1-cbc-3des-talitos)
of:talitos e0030000.crypto: authenc-hmac-sha1-cbc-3des-talitos
alg: No test for authenc(hmac(sha256),cbc(aes)) (authenc-hmac-sha256-cbc-aes-talitos)
of:talitos e0030000.crypto: authenc-hmac-sha256-cbc-aes-talitos
alg: No test for authenc(hmac(sha256),cbc(des3_ede)) (authenc-hmac-sha256-cbc-3des-talitos)
of:talitos e0030000.crypto: authenc-hmac-sha256-cbc-3des-talitos
alg: No test for authenc(hmac(md5),cbc(aes)) (authenc-hmac-md5-cbc-aes-talitos)
of:talitos e0030000.crypto: authenc-hmac-md5-cbc-aes-talitos
alg: No test for authenc(hmac(md5),cbc(des3_ede)) (authenc-hmac-md5-cbc-3des-talitos)
of:talitos e0030000.crypto: authenc-hmac-md5-cbc-3des-talitos
of:talitos e0030000.crypto: cbc-aes-talitos
of:talitos e0030000.crypto: cbc-3des-talitos
of:talitos e0030000.crypto: md5-talitos
of:talitos e0030000.crypto: sha1-talitos
of:talitos e0030000.crypto: sha224-talitos
of:talitos e0030000.crypto: sha256-talitos
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
TCP cubic registered
NET: Registered protocol family 10
IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
NET: Registered protocol family 15
Registering the dns_resolver key type
rtc-ds1307 0-0068: setting system clock to 2000-01-06 16:45:22 UTC (947177122)
ADDRCONF(NETDEV_UP): eth1: link is not ready
IP-Config: Complete:
     device=eth1, addr=172.26.130.10, mask=255.255.240.0, gw=172.26.128.1,
     host=ppc10, domain=, nis-domain=(none),
     bootserver=172.26.128.52, rootserver=172.26.128.52, rootpath=
Root-NFS: nfsroot=/srv/nfs/root0
NFS: nfs mount opts='nolock,addr=172.26.128.52'
NFS:   parsing nfs mount option 'nolock'
NFS:   parsing nfs mount option 'addr=172.26.128.52'
NFS: MNTPATH: '/srv/nfs/root0'
NFS: sending MNT request for 172.26.128.52:/srv/nfs/root0
RPC:       set up xprt to 172.26.128.52 (autobind) via tcp
RPC:       created transport c79c6800 with 16 slots
RPC:       creating mount client for 172.26.128.52 (xprt c79c6800)
RPC:       creating UNIX authenticator for client c7920800
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fb00
RPC:     1 __rpc_execute flags=0x680
RPC:     1 call_start mount3 proc NULL (sync)
RPC:     1 call_reserve (status 0)
RPC:     1 reserved req c780e000 xid fd74e0cd
RPC:     1 call_reserveresult (status 0)
RPC:     1 call_allocate (status 0)
RPC:     1 allocated buffer of size 392 at c79c7000
RPC:     1 call_refresh (status 0)
RPC:     1 holding NULL cred c04d591c
RPC:     1 refreshing NULL cred c04d591c
RPC:     1 call_refreshresult (status 0)
RPC:     1 call_bind (status 0)
RPC:     1 rpcb_getport_async(172.26.128.52, 100005, 3, 6)
RPC:     1 sleep_on(queue "xprt_binding" time 4294892879)
RPC:     1 added to queue c79c68a4 "xprt_binding"
RPC:     1 setting alarm for 60000 ms
RPC:     1 rpcb_getport_async: trying rpcbind version 2
RPC:       set up xprt to 172.26.128.52 (port 111) via tcp
RPC:       created transport c79c7800 with 16 slots
RPC:       creating rpcbind client for 172.26.128.52 (xprt c79c7800)
RPC:       creating UNIX authenticator for client c7920900
RPC:       new task initialized, procpid 1
RPC:       allocated task c792fb80
RPC:       rpc_release_client(c7920900)
RPC:     1 sync task going to sleep
RPC:     2 __rpc_execute flags=0x681
RPC:     2 call_start rpcbind2 proc GETPORT (async)
RPC:     2 call_reserve (status 0)
RPC:     2 reserved req c780f000 xid 5741830a
RPC:     2 call_reserveresult (status 0)
RPC:     2 call_allocate (status 0)
RPC:     2 allocated buffer of size 412 at c79c8000
RPC:     2 call_refresh (status 0)
RPC:     2 looking up UNIX cred
RPC:       looking up UNIX cred
RPC:       allocating UNIX cred for uid 0 gid 0
RPC:     2 refreshing UNIX cred c792f980
RPC:     2 call_refreshresult (status 0)
RPC:     2 call_bind (status 0)
RPC:     2 call_connect xprt c79c7800 is not connected
RPC:     2 xprt_connect xprt c79c7800 is not connected
RPC:     2 sleep_on(queue "xprt_pending" time 4294892908)
RPC:     2 added to queue c79c79ac "xprt_pending"
RPC:     2 setting alarm for 60000 ms
RPC:       xs_connect scheduled xprt c79c7800
RPC:       xs_bind4 0.0.0.0:0: ok (0)
RPC:       worker connecting xprt c79c7800 via tcp to 172.26.128.52 (port 111)
RPC:       c79c7800 connect status 115 connected 0 sock state 2
PHY: mdio@e0024520:04 - Link is Up - 1000/Full
ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
RPC:       xs_error_report client c79c7800...
RPC:       error 113
RPC:     2 __rpc_wake_up_task (now 4294893667)
RPC:     2 disabling timer
RPC:     2 removed from queue c79c79ac "xprt_pending"
RPC:       __rpc_wake_up_task done
RPC:       xs_tcp_state_change client c79c7800...
RPC:       state 7 conn 0 dead 0 zapped 1 sk_shutdown 3
RPC:       disconnected transport c79c7800
RPC:     2 __rpc_execute flags=0x681
RPC:     2 xprt_connect_status: retrying
RPC:     2 call_connect_status (status -11)
RPC:     2 call_transmit (status 0)
RPC:     2 xprt_prepare_transmit
RPC:     2 rpc_xdr_encode (status 0)
RPC:     2 marshaling UNIX cred c792f980
RPC:     2 using AUTH_UNIX cred c792f980 to wrap rpc data
RPC:     2 encoding PMAP_GETPORT call (100005, 3, 6, 0)
RPC:     2 xprt_transmit(88)
RPC:       xs_tcp_send_request(88) = -113
RPC:       sendmsg returned unrecognized error 113
RPC:       xs_tcp_state_change client c79c7800...
RPC:       state 7 conn 0 dead 0 zapped 1 sk_shutdown 3
RPC:       disconnected transport c79c7800
RPC:       wake_up_next(c79c7954 "xprt_resend")
RPC:       wake_up_next(c79c78fc "xprt_sending")
RPC:       setting port for xprt c79c6800 to 0
RPC:     2 rpcb_getport_done(status -113, port 0)
RPC:     2 return 0, status -113
RPC:     2 release task
RPC:       freeing buffer of size 412 at c79c8000
RPC:     2 release request c780f000
RPC:       wake_up_next(c79c7a04 "xprt_backlog")
RPC:       rpc_release_client(c7920900)
RPC:       destroying rpcbind client for 172.26.128.52
RPC:       destroying transport c79c7800
RPC:       xs_destroy xprt c79c7800
RPC:       xs_close xprt c79c7800
RPC:       disconnected transport c79c7800
RPC:     2 freeing task
RPC:     1 __rpc_wake_up_task (now 4294893704)
RPC:     1 disabling timer
RPC:     1 removed from queue c79c68a4 "xprt_binding"
RPC:       __rpc_wake_up_task done
RPC:     1 sync task resuming
RPC:     1 remote rpcbind unreachable: -113
RPC:     1 return 0, status -113
RPC:     1 release task
RPC:       freeing buffer of size 392 at c79c7000
RPC:     1 release request c780e000
RPC:       wake_up_next(c79c6a04 "xprt_backlog")
RPC:       rpc_release_client(c7920800)
RPC:     1 freeing task
RPC:       shutting down mount client for 172.26.128.52
RPC:       rpc_release_client(c7920800)
RPC:       destroying UNIX authenticator c04d5950
RPC:       destroying mount client for 172.26.128.52
RPC:       destroying transport c79c6800
RPC:       xs_destroy xprt c79c6800
RPC:       xs_close xprt c79c6800
RPC:       disconnected transport c79c6800
NFS: failed to create MNT RPC client, status=-113
NFS: unable to mount server 172.26.128.52, error -113
VFS: Unable to mount root fs via NFS, trying floppy.
RPC:       unx_free_cred c792f980
VFS: Cannot open root device "nfs" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00            8192 mtdblock0 (driver?)
1f01            1024 mtdblock1 (driver?)
1f02            3072 mtdblock2 (driver?)
1f03           28672 mtdblock3 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
Call Trace:
[c7827ed0] [c0008988] show_stack+0x70/0x1bc (unreliable)
[c7827f10] [c03a9dd8] panic+0xb8/0x1e8
[c7827f60] [c0478e38] mount_block_root+0x1a4/0x268
[c7827fb0] [c0478fb8] mount_root+0xbc/0xd4
[c7827fd0] [c0479174] prepare_namespace+0x1a4/0x1e8
[c7827fe0] [c0478270] kernel_init+0x150/0x170
[c7827ff0] [c0010378] kernel_thread+0x4c/0x68
Rebooting in 180 seconds..

-bcd

^ permalink raw reply

* Re: [RFC] ath9k: Fix ath9k prevents CPU to enter C3 states
From: Luis R. Rodriguez @ 2011-02-09 19:58 UTC (permalink / raw)
  To: Mohammed Shajakhan
  Cc: linville@tuxdriver.com, linux-wireless@vger.kernel.org,
	Luis Rodriguez, linux-kernel, netdev, Tim Gardner, Mark Gross
In-Reply-To: <1297262007-15128-1-git-send-email-mshajakhan@atheros.com>

On Wed, Feb 09, 2011 at 06:33:27AM -0800, Mohammed Shajakhan wrote:
> From: Mohammed Shafi Shajakhan <mshajakhan@atheros.com>
> 
> The DMA latency issue is observed only in Intel pinetrail platforms but
> in the driver we had a default PM-QOS value of 55. This caused
> unnecessary power consumption and battery drain in other platforms.
> Address this issue by disabling PM-QOS by default by setting it's value
> as '0' and making code changes appropriately.This addresses the bug:
> https://bugzilla.kernel.org/show_bug.cgi?id=27532
> 	If the user sees some DMA latency issue he can still use the pmqos as a
> module parameter to trade power for throughput as below:
> sudo modprobe ath9k pmqos=55

How many times are we going to write some work around for some
platform unpatched BIOS bug ?

mcgrof@tux ~/wireless-testing (git::master)$ git grep pm_qos_update_request drivers/
drivers/net/e1000e/netdev.c:                    pm_qos_update_request(&adapter->netdev->pm_qos_req, 55);
drivers/net/e1000e/netdev.c:                    pm_qos_update_request(&adapter->netdev->pm_qos_req,
drivers/net/wireless/ath/ath9k/main.c:  pm_qos_update_request(&sc->pm_qos_req, ath9k_pm_qos_value);
drivers/net/wireless/ath/ath9k/main.c:  pm_qos_update_request(&sc->pm_qos_req, PM_QOS_DEFAULT_VALUE);
drivers/net/wireless/ipw2x00/ipw2100.c: pm_qos_update_request(&ipw2100_pm_qos_req, 175);
drivers/net/wireless/ipw2x00/ipw2100.c: pm_qos_update_request(&ipw2100_pm_qos_req, PM_QOS_DEFAULT_VALUE);

Can't we punt this crap to userspace?

http://www.kernel.org/pub/linux/kernel/people/mcgrof/scripts/cpudmalatency.c

Can distributions just autodetect this issue and call something like this?

  Luis

> Signed-off-by: Mohammed Shafi Shajakhan <mshajakhan@atheros.com>
> ---
>  drivers/net/wireless/ath/ath9k/ath9k.h |    4 +++-
>  drivers/net/wireless/ath/ath9k/init.c  |    9 +++++----
>  drivers/net/wireless/ath/ath9k/main.c  |    9 +++++----
>  3 files changed, 13 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/net/wireless/ath/ath9k/ath9k.h b/drivers/net/wireless/ath/ath9k/ath9k.h
> index 9272278..55fcd01 100644
> --- a/drivers/net/wireless/ath/ath9k/ath9k.h
> +++ b/drivers/net/wireless/ath/ath9k/ath9k.h
> @@ -57,7 +57,9 @@ struct ath_node;
>  
>  #define A_MAX(a, b) ((a) > (b) ? (a) : (b))
>  
> -#define ATH9K_PM_QOS_DEFAULT_VALUE	55
> +/* By default PM QOS is disabled */
> +#define ATH9K_PM_QOS_DEFAULT_VALUE	0
> +
>  
>  #define TSF_TO_TU(_h,_l) \
>  	((((u32)(_h)) << 22) | (((u32)(_l)) >> 10))
> diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c
> index e5c1eea..658ea02 100644
> --- a/drivers/net/wireless/ath/ath9k/init.c
> +++ b/drivers/net/wireless/ath/ath9k/init.c
> @@ -43,7 +43,7 @@ MODULE_PARM_DESC(btcoex_enable, "Enable wifi-BT coexistence");
>  
>  int ath9k_pm_qos_value = ATH9K_PM_QOS_DEFAULT_VALUE;
>  module_param_named(pmqos, ath9k_pm_qos_value, int, S_IRUSR | S_IRGRP | S_IROTH);
> -MODULE_PARM_DESC(pmqos, "User specified PM-QOS value");
> +MODULE_PARM_DESC(pmqos, "User specified PM-QOS value, by default disabled");
>  
>  bool is_ath9k_unloaded;
>  /* We use the hw_value as an index into our private channel structure */
> @@ -759,8 +759,8 @@ int ath9k_init_device(u16 devid, struct ath_softc *sc, u16 subsysid,
>  
>  	ath_init_leds(sc);
>  	ath_start_rfkill_poll(sc);
> -
> -	pm_qos_add_request(&sc->pm_qos_req, PM_QOS_CPU_DMA_LATENCY,
> +	if (ath9k_pm_qos_value)
> +		pm_qos_add_request(&sc->pm_qos_req, PM_QOS_CPU_DMA_LATENCY,
>  			   PM_QOS_DEFAULT_VALUE);
>  
>  	return 0;
> @@ -819,7 +819,8 @@ void ath9k_deinit_device(struct ath_softc *sc)
>  	ath9k_ps_restore(sc);
>  
>  	ieee80211_unregister_hw(hw);
> -	pm_qos_remove_request(&sc->pm_qos_req);
> +	if (ath9k_pm_qos_value)
> +		pm_qos_remove_request(&sc->pm_qos_req);
>  	ath_rx_cleanup(sc);
>  	ath_tx_cleanup(sc);
>  	ath9k_deinit_softc(sc);
> diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
> index 4ed43b2..3855092 100644
> --- a/drivers/net/wireless/ath/ath9k/main.c
> +++ b/drivers/net/wireless/ath/ath9k/main.c
> @@ -1119,9 +1119,10 @@ static int ath9k_start(struct ieee80211_hw *hw)
>  
>  	/* User has the option to provide pm-qos value as a module
>  	 * parameter rather than using the default value of
> -	 * 'ATH9K_PM_QOS_DEFAULT_VALUE'.
> +	 * 'ATH9K_PM_QOS_DEFAULT_VALUE' which disables PM QOS.
>  	 */
> -	pm_qos_update_request(&sc->pm_qos_req, ath9k_pm_qos_value);
> +	if (ath9k_pm_qos_value)
> +		pm_qos_update_request(&sc->pm_qos_req, ath9k_pm_qos_value);
>  
>  	if (ah->caps.pcie_lcr_extsync_en && common->bus_ops->extn_synch_en)
>  		common->bus_ops->extn_synch_en(common);
> @@ -1266,8 +1267,8 @@ static void ath9k_stop(struct ieee80211_hw *hw)
>  	ath_radio_disable(sc, hw);
>  
>  	sc->sc_flags |= SC_OP_INVALID;
> -
> -	pm_qos_update_request(&sc->pm_qos_req, PM_QOS_DEFAULT_VALUE);
> +	if (ath9k_pm_qos_value)
> +		pm_qos_update_request(&sc->pm_qos_req, PM_QOS_DEFAULT_VALUE);
>  
>  	mutex_unlock(&sc->mutex);
>  
> -- 
> 1.7.0.4
> 

^ permalink raw reply

* Re: Linux 2.6.38-rc4 (hysdn: BUG)
From: Linus Torvalds @ 2011-02-09 19:44 UTC (permalink / raw)
  To: Randy Dunlap; +Cc: netdev, Linux Kernel Mailing List, Karsten Keil
In-Reply-To: <20110209092419.2b335697.randy.dunlap@oracle.com>

[-- Attachment #1: Type: text/plain, Size: 2424 bytes --]

On Wed, Feb 9, 2011 at 9:24 AM, Randy Dunlap <randy.dunlap@oracle.com> wrote:
>
> on x86_64.  no HYSDN hardware found (correct).
> Nearly allmodconfig.
>
>
> [   65.397577] HYSDN: module Rev: 1.6.6.6 loaded
> [   65.397584] HYSDN: network interface Rev: 1.8.6.4
> [   65.398057] HYSDN: 0 card(s) found.
> [   65.398121] BUG: unable to handle kernel paging request at ffffffffa06c99f0
> [   65.398269] IP: [<ffffffffa06c68ba>] hysdn_getrev+0x2e/0x50 [hysdn]
> [   65.398379] PGD 1a14067 PUD 1a18063 PMD 6f6c1067 PTE 800000006ce8c161
> [   65.398613] Oops: 0003 [#1] SMP DEBUG_PAGEALLOC
> [   65.400030]
> [   65.400030] Pid: 2497, comm: modprobe Not tainted 2.6.38-rc4 #1 0TY565/OptiPlex 745
> [   65.400030] RIP: 0010:[<ffffffffa06c68ba>]  [<ffffffffa06c68ba>] hysdn_getrev+0x2e/0x50 [hysdn]
> [   65.400030] RSP: 0018:ffff88006eec1e68  EFLAGS: 00010206
> [   65.400030] RAX: ffffffffa06c99f1 RBX: ffffffffa06c99e9 RCX: ffff88007c4159a0

The instruction sequence decodes to

  1e:	be 24 00 00 00       	mov    $0x24,%esi
  23:	48 89 df             	mov    %rbx,%rdi
  26:	e8 5b 39 c0 e0       	callq  0xffffffffe0c03986
  2b:*	c6 40 ff 00          	movb   $0x0,-0x1(%rax)     <-- trapping instruction

which seems to be this

                p = strchr(rev, '$');
                *--p = 0;

code. And yes, it's total crap, because while "p" and "rev" are "char
*", the string that is passed in is actually of type "const char *",
so that function is seriously broken. It's also seriously broken to
not test that "p" is non-NULL - the function would just break if there
is a colon in the string but not a '$'.

And hysdn_procconf_init() passes in a constant string to the thing:

    static char *hysdn_procconf_revision = "$Revision: 1.8.6.4 $";

What happens is that it breaks when we mark the constant section as
read-only, because you have CONFIG_DEBUG_RODATA enabled.

So the fix seems to be to
 - fix the prototype for hysdn_getrev() to not have "const".
 - fix hysdn_procconf_init() to not pass in a constant string to it

The minimal patch would appear to be something like the appended. UNTESTED!

Btw, all of this code seems to go back to before the git history even
started, so it doesn't seem to be new. I assume you haven't tried
booting these all-module kernels before? Or is it just the
DEBUG_RODATA thing that is new for you?

                    Linus

[-- Attachment #2: patch.diff --]
[-- Type: text/x-patch, Size: 1685 bytes --]

 drivers/isdn/hysdn/hysdn_defs.h     |    2 +-
 drivers/isdn/hysdn/hysdn_init.c     |    2 +-
 drivers/isdn/hysdn/hysdn_procconf.c |    2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/isdn/hysdn/hysdn_defs.h b/drivers/isdn/hysdn/hysdn_defs.h
index 729df40..d21b4a0 100644
--- a/drivers/isdn/hysdn/hysdn_defs.h
+++ b/drivers/isdn/hysdn/hysdn_defs.h
@@ -227,7 +227,7 @@ extern hysdn_card *card_root;	/* pointer to first card */
 /*************************/
 /* im/exported functions */
 /*************************/
-extern char *hysdn_getrev(const char *);
+extern char *hysdn_getrev(char *);
 
 /* hysdn_procconf.c */
 extern int hysdn_procconf_init(void);	/* init proc config filesys */
diff --git a/drivers/isdn/hysdn/hysdn_init.c b/drivers/isdn/hysdn/hysdn_init.c
index b7cc5c2..4ba2123 100644
--- a/drivers/isdn/hysdn/hysdn_init.c
+++ b/drivers/isdn/hysdn/hysdn_init.c
@@ -53,7 +53,7 @@ static hysdn_card *card_last = NULL;	/* pointer to first card */
 /* extract revision number from string for log output */
 /******************************************************/
 char *
-hysdn_getrev(const char *revision)
+hysdn_getrev(char *revision)
 {
 	char *rev;
 	char *p;
diff --git a/drivers/isdn/hysdn/hysdn_procconf.c b/drivers/isdn/hysdn/hysdn_procconf.c
index 96b3e39..1c396e1 100644
--- a/drivers/isdn/hysdn/hysdn_procconf.c
+++ b/drivers/isdn/hysdn/hysdn_procconf.c
@@ -23,7 +23,7 @@
 #include "hysdn_defs.h"
 
 static DEFINE_MUTEX(hysdn_conf_mutex);
-static char *hysdn_procconf_revision = "$Revision: 1.8.6.4 $";
+static char hysdn_procconf_revision[] = "$Revision: 1.8.6.4 $";
 
 #define INFO_OUT_LEN 80		/* length of info line including lf */
 

^ permalink raw reply related

* [PATCH v2] msm: rmnet: msm rmnet smd virtual network driver
From: Niranjana Vishwanathapura @ 2011-02-09 19:32 UTC (permalink / raw)
  To: netdev, linux-kernel
  Cc: linux-arm-msm, linux-arm-kernel, swetland, dima,
	Niranjana Vishwanathapura

Virtual network interface for MSM RMNET SMD transport.
This driver creates network devices which use underlying
SMD ports as transport.  This driver enables sending and
receving IP packets to baseband processor in MSM chipsets.

Cc: Brian Swetland <swetland@google.com>
Signed-off-by: Niranjana Vishwanathapura <nvishwan@codeaurora.org>
---
 drivers/net/Kconfig         |   10 ++
 drivers/net/Makefile        |    1 +
 drivers/net/msm_rmnet_smd.c |  213 +++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 224 insertions(+), 0 deletions(-)
 create mode 100644 drivers/net/msm_rmnet_smd.c

diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 0382332..b4f39bb 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -3422,4 +3422,14 @@ config VMXNET3
 	  To compile this driver as a module, choose M here: the
 	  module will be called vmxnet3.
 
+config MSM_RMNET_SMD
+	bool "MSM RMNET Virtual Network Device over SMD transport"
+	depends on MSM_SMD
+	default n
+	help
+	  Virtual network interface for MSM RMNET SMD transport.
+	  This driver creates network devices which use underlying
+	  SMD ports as transport.  This driver enables sending and
+	  receving IP packets to baseband processor in MSM chipsets.
+
 endif # NETDEVICES
diff --git a/drivers/net/Makefile b/drivers/net/Makefile
index b90738d..2bb4025 100644
--- a/drivers/net/Makefile
+++ b/drivers/net/Makefile
@@ -302,3 +302,4 @@ obj-$(CONFIG_CAIF) += caif/
 obj-$(CONFIG_OCTEON_MGMT_ETHERNET) += octeon/
 obj-$(CONFIG_PCH_GBE) += pch_gbe/
 obj-$(CONFIG_TILE_NET) += tile/
+obj-$(CONFIG_MSM_RMNET_SMD) += msm_rmnet_smd.o
diff --git a/drivers/net/msm_rmnet_smd.c b/drivers/net/msm_rmnet_smd.c
new file mode 100644
index 0000000..03a0d14
--- /dev/null
+++ b/drivers/net/msm_rmnet_smd.c
@@ -0,0 +1,213 @@
+/* drivers/net/msm_rmnet_smd.c
+ *
+ * Virtual Ethernet Interface for MSM7K Networking
+ *
+ * Copyright (C) 2007 Google, Inc.
+ * Copyright (c) 2011, Code Aurora Forum. All rights reserved.
+ * Author: Brian Swetland <swetland@google.com>
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ */
+
+#include <linux/module.h>
+#include <linux/kernel.h>
+#include <linux/string.h>
+#include <linux/delay.h>
+#include <linux/errno.h>
+#include <linux/interrupt.h>
+#include <linux/init.h>
+#include <linux/netdevice.h>
+#include <linux/etherdevice.h>
+#include <linux/skbuff.h>
+
+#include <mach/msm_smd.h>
+
+struct rmnet_private {
+	smd_channel_t *ch;
+	const char *chname;
+};
+
+static int count_this_packet(void *_hdr, int len)
+{
+	struct ethhdr *hdr = _hdr;
+
+	if (len >= ETH_HLEN && hdr->h_proto == htons(ETH_P_ARP))
+		return 0;
+
+	return 1;
+}
+
+/* Called in soft-irq context */
+static void smd_net_data_handler(unsigned long arg)
+{
+	struct net_device *dev = (struct net_device *) arg;
+	struct rmnet_private *p = netdev_priv(dev);
+	struct sk_buff *skb;
+	void *ptr = 0;
+	int sz;
+
+	for (;;) {
+		sz = smd_cur_packet_size(p->ch);
+		if (sz == 0)
+			break;
+		if (smd_read_avail(p->ch) < sz)
+			break;
+
+		if (sz > 1514) {
+			pr_err("rmnet_recv() discarding %d len\n", sz);
+			ptr = 0;
+		} else {
+			skb = dev_alloc_skb(sz + NET_IP_ALIGN);
+			if (skb == NULL) {
+				pr_err("rmnet_recv() cannot allocate skb\n");
+			} else {
+				skb->dev = dev;
+				skb_reserve(skb, NET_IP_ALIGN);
+				ptr = skb_put(skb, sz);
+				if (smd_read(p->ch, ptr, sz) != sz) {
+					pr_err("rmnet_recv() smd read fail\n");
+					ptr = 0;
+					dev_kfree_skb_irq(skb);
+				} else {
+					skb->protocol = eth_type_trans(skb,
+								       dev);
+					if (count_this_packet(ptr, skb->len)) {
+						dev->stats.rx_packets++;
+						dev->stats.rx_bytes += skb->len;
+					}
+					netif_receive_skb(skb);
+				}
+				continue;
+			}
+		}
+		if (smd_read(p->ch, ptr, sz) != sz)
+			pr_err("rmnet_recv() smd lied about avail?!");
+	}
+}
+
+static DECLARE_TASKLET(smd_net_data_tasklet, smd_net_data_handler, 0);
+
+static void smd_net_notify(void *_dev, unsigned event)
+{
+	if (event != SMD_EVENT_DATA)
+		return;
+
+	smd_net_data_tasklet.data = (unsigned long) _dev;
+
+	tasklet_schedule(&smd_net_data_tasklet);
+}
+
+static int rmnet_open(struct net_device *dev)
+{
+	int r;
+	struct rmnet_private *p = netdev_priv(dev);
+
+	pr_info("rmnet_open()\n");
+	if (!p->ch) {
+		r = smd_open(p->chname, &p->ch, dev, smd_net_notify);
+
+		if (r < 0)
+			return -ENODEV;
+	}
+
+	netif_start_queue(dev);
+	return 0;
+}
+
+static int rmnet_stop(struct net_device *dev)
+{
+	pr_info("rmnet_stop()\n");
+	netif_stop_queue(dev);
+	return 0;
+}
+
+static int rmnet_xmit(struct sk_buff *skb, struct net_device *dev)
+{
+	struct rmnet_private *p = netdev_priv(dev);
+	smd_channel_t *ch = p->ch;
+
+	if (smd_write_atomic(ch, skb->data, skb->len) != skb->len) {
+		pr_err("rmnet fifo full, dropping packet\n");
+	} else {
+		if (count_this_packet(skb->data, skb->len)) {
+			dev->stats.tx_packets++;
+			dev->stats.tx_bytes += skb->len;
+		}
+	}
+
+	dev_kfree_skb_irq(skb);
+	return 0;
+}
+
+static void rmnet_set_multicast_list(struct net_device *dev)
+{
+}
+
+static void rmnet_tx_timeout(struct net_device *dev)
+{
+	pr_info("rmnet_tx_timeout()\n");
+}
+
+static struct net_device_ops rmnet_ops = {
+	.ndo_open = rmnet_open,
+	.ndo_stop = rmnet_stop,
+	.ndo_start_xmit = rmnet_xmit,
+	.ndo_set_multicast_list = rmnet_set_multicast_list,
+	.ndo_tx_timeout = rmnet_tx_timeout,
+};
+
+static void __init rmnet_setup(struct net_device *dev)
+{
+	dev->netdev_ops = &rmnet_ops;
+
+	dev->watchdog_timeo = 20;
+
+	ether_setup(dev);
+
+	random_ether_addr(dev->dev_addr);
+}
+
+
+static const char *ch_name[3] = {
+	"SMD_DATA5",
+	"SMD_DATA6",
+	"SMD_DATA7",
+};
+
+static int __init rmnet_init(void)
+{
+	int ret;
+	struct device *d;
+	struct net_device *dev;
+	struct rmnet_private *p;
+	unsigned n;
+
+	for (n = 0; n < 3; n++) {
+		dev = alloc_netdev(sizeof(struct rmnet_private),
+				   "rmnet%d", rmnet_setup);
+
+		if (!dev)
+			return -ENOMEM;
+
+		d = &(dev->dev);
+		p = netdev_priv(dev);
+		p->chname = ch_name[n];
+
+		ret = register_netdev(dev);
+		if (ret) {
+			free_netdev(dev);
+			return ret;
+		}
+	}
+	return 0;
+}
+
+module_init(rmnet_init);
-- 
1.5.6.3

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.


^ permalink raw reply related

* Re: [PATCH 1/3] pch_can: fix 800k comms issue
From: Wolfgang Grandegger @ 2011-02-09 19:21 UTC (permalink / raw)
  To: Tomoya MORINAGA
  Cc: andrew.chih.howe.khor-ral2JQCrhuEAvxtiuMwx3w,
	qi.wang-ral2JQCrhuEAvxtiuMwx3w, netdev-u79uwXL29TY76Z2rM5mHXA,
	yong.y.wang-ral2JQCrhuEAvxtiuMwx3w,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
	toshiharu-linux-ECg8zkTtlr0C6LszWs/t0g,
	kok.howg.ewe-ral2JQCrhuEAvxtiuMwx3w,
	joel.clark-ral2JQCrhuEAvxtiuMwx3w
In-Reply-To: <1297157343-3213-1-git-send-email-tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>

Hi Tomoya,

On 02/08/2011 10:29 AM, Tomoya MORINAGA wrote:
> Currently, 800k comms fails since prop_seg set zero.
> (EG20T PCH CAN register of prop_seg must be set more than 1)
> To prevent prop_seg set to zero, change tseg2_min 1 to 2.
> 
> Signed-off-by: Tomoya MORINAGA <tomoya-linux-ECg8zkTtlr0C6LszWs/t0g@public.gmane.org>
> ---
>  drivers/net/can/pch_can.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/net/can/pch_can.c b/drivers/net/can/pch_can.c
> index c42e972..9b171d1 100644
> --- a/drivers/net/can/pch_can.c
> +++ b/drivers/net/can/pch_can.c
> @@ -187,7 +187,7 @@ static struct can_bittiming_const pch_can_bittiming_const = {
>  	.name = KBUILD_MODNAME,
>  	.tseg1_min = 1,
>  	.tseg1_max = 16,
> -	.tseg2_min = 1,
> +	.tseg2_min = 2,
>  	.tseg2_max = 8,
>  	.sjw_max = 4,
>  	.brp_min = 1,

I just realized that this fix is wrong. You wanted to set tseg1_min to 2
(and not tseg2_min). Could you please send a patch?

Thanks,

Wolfgang.

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox