I have also encountered this problem yet.
I read the source code of decode_packet_trace.py , if the cmd is 1 or 4, it means ReadReq or WriteReq; if the cmd is 30 or 32, it means MemRead or MemWrite. However, the decode_packet_trace.py only marked ReadReq and WriteReq as 'r'/'w', but MemRead and MemWrite are marked as 'u'.
Considering that you place monitor over the membus, all traces are MemRead/MemWrite, so they are all marked as 'u'.
You can correct the decode_packet_trace.py to correct this problem.