block_int.h (06d05fa738915ab82577289a0b81b3e600c4e749) block_int.h (892b7de832681cdfff22a6e96cb0280b59684024)
1/*
2 * QEMU System Emulator block driver
3 *
4 * Copyright (c) 2003 Fabrice Bellard
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to deal
8 * in the Software without restriction, including without limitation the rights

--- 261 unchanged lines hidden (view full) ---

270 void (*bdrv_attach_aio_context)(BlockDriverState *bs,
271 AioContext *new_context);
272
273 /* io queue for linux-aio */
274 void (*bdrv_io_plug)(BlockDriverState *bs);
275 void (*bdrv_io_unplug)(BlockDriverState *bs);
276 void (*bdrv_flush_io_queue)(BlockDriverState *bs);
277
1/*
2 * QEMU System Emulator block driver
3 *
4 * Copyright (c) 2003 Fabrice Bellard
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to deal
8 * in the Software without restriction, including without limitation the rights

--- 261 unchanged lines hidden (view full) ---

270 void (*bdrv_attach_aio_context)(BlockDriverState *bs,
271 AioContext *new_context);
272
273 /* io queue for linux-aio */
274 void (*bdrv_io_plug)(BlockDriverState *bs);
275 void (*bdrv_io_unplug)(BlockDriverState *bs);
276 void (*bdrv_flush_io_queue)(BlockDriverState *bs);
277
278 /**
279 * Try to get @bs's logical and physical block size.
280 * On success, store them in @bsz and return zero.
281 * On failure, return negative errno.
282 */
283 int (*bdrv_probe_blocksizes)(BlockDriverState *bs, BlockSizes *bsz);
284 /**
285 * Try to get @bs's geometry (cyls, heads, sectors)
286 * On success, store them in @geo and return 0.
287 * On failure return -errno.
288 * Only drivers that want to override guest geometry implement this
289 * callback; see hd_geometry_guess().
290 */
291 int (*bdrv_probe_geometry)(BlockDriverState *bs, HDGeometry *geo);
292
278 QLIST_ENTRY(BlockDriver) list;
279};
280
281typedef struct BlockLimits {
282 /* maximum number of sectors that can be discarded at once */
283 int max_discard;
284
285 /* optimal alignment for discard requests in sectors */

--- 327 unchanged lines hidden ---
293 QLIST_ENTRY(BlockDriver) list;
294};
295
296typedef struct BlockLimits {
297 /* maximum number of sectors that can be discarded at once */
298 int max_discard;
299
300 /* optimal alignment for discard requests in sectors */

--- 327 unchanged lines hidden ---