| 5210 | } |
| 5211 | |
| 5212 | static void * |
| 5213 | arc_get_data_buf(arc_buf_hdr_t *hdr, uint64_t size, void *tag) |
| 5214 | { |
| 5215 | arc_buf_contents_t type = arc_buf_type(hdr); |
| 5216 | |
| 5217 | arc_get_data_impl(hdr, size, tag, B_TRUE); |
| 5218 | if (type == ARC_BUFC_METADATA) { |
| 5219 | return (zio_buf_alloc(size)); |
| 5220 | } else { |
| 5221 | ASSERT(type == ARC_BUFC_DATA); |
| 5222 | return (zio_data_buf_alloc(size)); |
| 5223 | } |
| 5224 | } |
| 5225 | |
| 5226 | /* |
| 5227 | * Wait for the specified amount of data (in bytes) to be evicted from the |
no test coverage detected