From: Olaf Hering <olh@suse.de>

Fix for valid nvram rtas tokens.


---

 arch/ppc64/kernel/pSeries_nvram.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff -puN arch/ppc64/kernel/pSeries_nvram.c~ppc64-rtas_token arch/ppc64/kernel/pSeries_nvram.c
--- 25/arch/ppc64/kernel/pSeries_nvram.c~ppc64-rtas_token	2004-02-21 20:58:21.000000000 -0800
+++ 25-akpm/arch/ppc64/kernel/pSeries_nvram.c	2004-02-21 20:58:21.000000000 -0800
@@ -41,7 +41,8 @@ static ssize_t pSeries_nvram_read(char *
 	unsigned long flags;
 	char *p = buf;
 
-	if (nvram_size == 0 || nvram_fetch)
+
+	if (nvram_size == 0 || nvram_fetch == RTAS_UNKNOWN_SERVICE)
 		return -ENODEV;
 
 	if (*index >= nvram_size)
@@ -83,7 +84,7 @@ static ssize_t pSeries_nvram_write(char 
 	unsigned long flags;
 	const char *p = buf;
 
-	if (nvram_size == 0 || nvram_store)
+	if (nvram_size == 0 || nvram_store == RTAS_UNKNOWN_SERVICE)
 		return -ENODEV;
 
 	if (*index >= nvram_size)

_