Why does this cause an infinite loop?

    #!/bin/bash
    while [[ "$(ipcs | awk '{print $2}')" != "Semaphore" ]]; do
    echo "$(ipcs | awk '{print $2}')"
    done      
    echo
    exit 0

I have verified I eventually get Semaphore so it should break out of the while loop.

    $ echo $(ipcs | awk '{print $2}')
    Shared shmid 262145 294914 2326531 Semaphore semid Message msqid