When setting up a Cisco Express 500, the instructions strongly recommend that you use the Smartport feature for each of the ports. I enabled the port that was an uplink port as a “Switch Port” as recommended. However, I could not get any traffic to pass through to the uplinked switch. There were NO errors or any indication on the Catalyst Express that anything was wrong. I finally saw this small blurb in the setup manual: [more]

The Smartport role Switch automatically enables 802.1Q trunking on the port. If a remote switch does not support 802.1Q trunking or the trunking is manually turned off, the spanning tree state of the port on the remote switch goes to blocking for type inconsistency. If the remote switch is the root bridge, the switch port does not go to blocking mode. In this case, the switch port trunk status is ON at both ends of the switches, but there is not any communication between the switches through these ports. There are no diagnostic messages displayed on the Catalyst Express 500 device.

I removed the Smartport feature on this port and traffic immediately started flowing.