PSARC 2010/306 - read-only zpools
You may think that this already there, but so far you was only able to set a single dataset (ZFS filesystem or ZFS emulated volume) into read-only. This PSARC case proposed such an mode-of-operation for the complete zpool. According to the documentation of this case, the following steps are done to reach the read-only-ness.
1). pool is loaded but transaction processing is disabled
2). all filesystems and zvols are mounted in read-only mode
3). any intent-log replays are deferred (any pending synchronous writes will be replayed once the pool is imported read-write)