libblock.h File Reference

#include <stdint.h>
#include "../../srv/vfs/vfs.h"
#include <fibril_synch.h>
#include <adt/hash_table.h>
#include <adt/list.h>

Go to the source code of this file.

Data Structures

struct  block

Defines

#define BLOCK_FLAGS_NONE   0
 This macro is a symbolic value for situations where no special flags are needed.
#define BLOCK_FLAGS_NOREAD   1
 When the client of block_get() intends to overwrite the current contents of the block, this flag is used to avoid the unnecessary read.

Enumerations

enum  cache_mode { CACHE_MODE_WT, CACHE_MODE_WB }
 Caching mode. More...

Functions

void * block_bb_get (devmap_handle_t devmap_handle)
int block_bb_read (devmap_handle_t devmap_handle, aoff64_t ba)
int block_cache_fini (devmap_handle_t devmap_handle)
int block_cache_init (devmap_handle_t devmap_handle, size_t size, unsigned blocks, enum cache_mode mode)
void block_fini (devmap_handle_t devmap_handle)
int block_get (block_t **block, devmap_handle_t devmap_handle, aoff64_t ba, int flags)
 Instantiate a block in memory and get a reference to it.
int block_get_bsize (devmap_handle_t devmap_handle, size_t *bsize)
 Get device block size.
int block_get_nblocks (devmap_handle_t devmap_handle, aoff64_t *nblocks)
 Get number of blocks on device.
int block_init (devmap_handle_t devmap_handle, size_t comm_size)
int block_put (block_t *block)
 Release a reference to a block.
int block_read_direct (devmap_handle_t devmap_handle, aoff64_t ba, size_t cnt, void *buf)
 Read blocks directly from device (bypass cache).
int block_seqread (devmap_handle_t devmap_handle, size_t *bufpos, size_t *buflen, aoff64_t *pos, void *dst, size_t size)
 Read sequential data from a block device.
int block_write_direct (devmap_handle_t devmap_handle, aoff64_t ba, size_t cnt, const void *data)
 Write blocks directly to device (bypass cache).


Detailed Description

Definition in file libblock.h.


Generated on Thu Jun 2 07:45:52 2011 for HelenOS/USB by  doxygen 1.4.7