Wash the rice in several changes of water. Let it soak in 4 cups of water for 30 minutes. Drain thoroughly.
Wipe the mushrooms with a dampened cloth. Cut them into slices. Heat the oil in a large heavy pan and add ginger & garlic and fry for 2 minutes. Add onions and fry for another few minutes. Then put the mushrooms, rice, garam masala & salt and mix well and saute for 3 minutes. Reduce the heat to medium. Pour 3 cups of water and bring to a boil. Cover the pan tightly and reduce the heat to very low. Cook for about 30 minutes. Turn off the heat and let it sit covered for 5 more minutes.