Put the stock into the fridge. It will incorporate better later if it's chilly.
Wash, dry, and chop your mushrooms into small cubes or slices depending on how you want them in your gravy.
Peel and mince your onion. Prepare the rest of your ingredients so they are easily ready to go for your gravy.
Add a small amount of olive oil to a skillet. Sprinkle with salt, then saute your onion over medium heat for several minutes or until translucent.
Add the mushrooms. Sprinkle with a bit of salt, then saute for 5-7 minutes or until most of the moisture is cooked out and they look ready to eat.
Scoot your mushroom mixture to the edges of the pan. If you prefer, you can totally remove the mushrooms from the pan to a bowl, then return the pan to the heat.
Add the butter to the middle of the pan and allow it to melt, then sprinkle with the flour, whisking to combine. You do not want lumps at all.
Cook your roux, whisking constantly, for at least 10 minutes. The mixture should be bubbling, not boiling or scortching. Adjust the heat if you need to. After 10 minutes, it should be smoother and smell kind of like popcorn. You can cook your roux for up to 20 minutes if you want a nuttier flavor.
Slowly add the stock to your roux, adding it little by little and constantly whisking to fully incorporate the liquid before adding any more.
Add the mushroom mixture back into the pan along with the herbs. Stir and cook the gravy until completely heated through. If you prefer, reduce the gravy at this stage for a thicker texture. Taste and adjust for herbs and salt.
Pour over your mashed potatoes, serving everything hot.