I guess you could do something like this:
```
var/atom/movable/temploc = loc
while(istype(temploc)) //Stop looping when temploc becomes a turf.
    temploc = temploc.loc
    if(ismob(temploc))
        temploc << "u lost the disk m8"
        break
```

Efficiency isn't really a concern because this won't be called every tick.