summaryrefslogtreecommitdiffstats
path: root/fs/nfs/pnfs.h
diff options
context:
space:
mode:
authorBoaz Harrosh <bharrosh@panasas.com>2011-05-26 21:49:46 +0300
committerBoaz Harrosh <bharrosh@panasas.com>2011-05-29 20:54:45 +0300
commitadb58535e604a564495a7d50dfb0afa0ddc21bcb (patch)
tree54af4fe9569650342e61dbb314334e3617c48dc2 /fs/nfs/pnfs.h
parent04a555498e03b3804e2dec916a4669f5f560e503 (diff)
downloadop-kernel-dev-adb58535e604a564495a7d50dfb0afa0ddc21bcb.zip
op-kernel-dev-adb58535e604a564495a7d50dfb0afa0ddc21bcb.tar.gz
pnfs-obj: report errors and .encode_layoutreturn Implementation.
An io_state pre-allocates an error information structure for each possible osd-device that might error during IO. When IO is done if all was well the io_state is freed. (as today). If the I/O has ended with an error, the io_state is queued on a per-layout err_list. When eventually encode_layoutreturn() is called, each error is properly encoded on the XDR buffer and only then the io_state is removed from err_list and de-allocated. It is up to the io_engine to fill in the segment that fault and the type of osd_error that occurred. By calling objlayout_io_set_result() for each failing device. In objio_osd: * Allocate io-error descriptors space as part of io_state * Use generic objlayout error reporting at end of io. Signed-off-by: Boaz Harrosh <bharrosh@panasas.com> Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Diffstat (limited to 'fs/nfs/pnfs.h')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud