What difference between those two shell commands?
===

There are two shell commands:

[[ ! -d $TRACEDIR/pattrace/rpt/.tracking ]] && mkdir $TRACEDIR/pattrace/rpt/.tracking  
[[ ! -d $TRACEDIR/pattrace/rpt/.tracking ]] && mkdir -p $TRACEDIR/pattrace/rpt/.tracking

Obviously, the only difference between those commands is -p flag. But what this flag does in this context?

Thanks. 