The mainland chinese flights were always fine for me in regards to safety and service (China Eastern, China Southern mainly). The problems I have had in the past was at the airports. I made the mistake of not checking the luggage weight limits for domestic flights ahead of time for like my first flight ever for a domestic flight. Needless to say I ended up paying a premium there and was lucky to have enough RMB on me at the time to pay the excess baggage fees to make sure it flew.
Then a problem I've run into on domestic flights at some cities is how much they oversell the flights by. Just because you have a confirmed ticket it doesn't mean much at some airports. Confirm your ticket, re-confirm your ticket, triple confirm your ticket and get there early. If someone donates a few extra RMB you can be out of a seat in a hurry if you don't have your boarding pass already in hand.
But I've not had any problems in Shanghai.