diff --git a/eth/backend.go b/eth/backend.go
index fa834911637b50e1aac1d0bc800711bd6b9303d6..783f33908876b05bd70917f82a98bf34b6dfaa6e 100644
--- a/eth/backend.go
+++ b/eth/backend.go
@@ -343,7 +343,6 @@ func (s *Ethereum) Etherbase() (eb common.Address, err error) {
 
 func (s *Ethereum) StopMining()         { s.miner.Stop() }
 func (s *Ethereum) IsMining() bool      { return s.miner.Mining() }
-func (s *Ethereum) HashRate() int64     { return s.miner.HashRate() }
 func (s *Ethereum) Miner() *miner.Miner { return s.miner }
 
 // func (s *Ethereum) Logger() logger.LogSystem             { return s.logger }
diff --git a/rpc/api.go b/rpc/api.go
index 9fbe2c56507fa43ecac4961fd29cd4b15301cade..6f7a81474433570f9c71d164abb240cd59bca04d 100644
--- a/rpc/api.go
+++ b/rpc/api.go
@@ -465,7 +465,7 @@ func (api *EthereumApi) GetRequestReply(req *RpcRequest, reply *interface{}) err
 			return err
 		}
 		*reply = api.xeth().Whisper().Messages(args.Id)
-	case "ext_hashrate":
+	case "eth_hashrate":
 		*reply = newHexNum(api.xeth().HashRate())
 
 	// case "eth_register":
diff --git a/xeth/xeth.go b/xeth/xeth.go
index 71c39fd42954a61bc16aedacca0fb9a4685b4b87..710fec5c5bf87e6c851d247cc2306cb666b58d8b 100644
--- a/xeth/xeth.go
+++ b/xeth/xeth.go
@@ -281,7 +281,7 @@ func (self *XEth) IsMining() bool {
 }
 
 func (self *XEth) HashRate() int64 {
-	return self.backend.HashRate()
+	return self.backend.Miner().HashRate()
 }
 
 func (self *XEth) EthVersion() string {