mirror of https://gitee.com/openkylin/linux.git
pnfs-obj: Rename objlayout_io_state => objlayout_io_res
* All instances of objlayout_io_state => objlayout_io_res * All instances of state => oir; * All instances of ol_state => oir; Big but nothing to it Signed-off-by: Boaz Harrosh <bharrosh@panasas.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
parent
96218556b0
commit
e2e04355d9
|
@ -146,7 +146,7 @@ typedef int (*objio_done_fn)(struct objio_state *ios);
|
|||
|
||||
struct objio_state {
|
||||
/* Generic layer */
|
||||
struct objlayout_io_state ol_state;
|
||||
struct objlayout_io_res oir;
|
||||
|
||||
struct page **pages;
|
||||
unsigned pgbase;
|
||||
|
@ -422,7 +422,7 @@ objio_alloc_io_state(struct pnfs_layout_hdr *pnfs_layout_type,
|
|||
ios = &aos->objios;
|
||||
|
||||
ios->layout = objio_seg;
|
||||
objlayout_init_ioerrs(&aos->objios.ol_state, objio_seg->num_comps,
|
||||
objlayout_init_ioerrs(&aos->objios.oir, objio_seg->num_comps,
|
||||
aos->ioerrs, rpcdata, pnfs_layout_type);
|
||||
|
||||
ios->pages = pages;
|
||||
|
@ -437,10 +437,9 @@ objio_alloc_io_state(struct pnfs_layout_hdr *pnfs_layout_type,
|
|||
return 0;
|
||||
}
|
||||
|
||||
void objio_free_result(struct objlayout_io_state *ol_state)
|
||||
void objio_free_result(struct objlayout_io_res *oir)
|
||||
{
|
||||
struct objio_state *ios = container_of(ol_state, struct objio_state,
|
||||
ol_state);
|
||||
struct objio_state *ios = container_of(oir, struct objio_state, oir);
|
||||
|
||||
kfree(ios);
|
||||
}
|
||||
|
@ -519,7 +518,7 @@ static int _io_check(struct objio_state *ios, bool is_write)
|
|||
|
||||
continue; /* we recovered */
|
||||
}
|
||||
objlayout_io_set_result(&ios->ol_state, i,
|
||||
objlayout_io_set_result(&ios->oir, i,
|
||||
&ios->layout->comps[i].oc_object_id,
|
||||
osd_pri_2_pnfs_err(osi.osd_err_pri),
|
||||
ios->per_dev[i].offset,
|
||||
|
@ -812,7 +811,7 @@ static int _read_done(struct objio_state *ios)
|
|||
else
|
||||
status = ret;
|
||||
|
||||
objlayout_read_done(&ios->ol_state, status, ios->sync);
|
||||
objlayout_read_done(&ios->oir, status, ios->sync);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -906,13 +905,13 @@ static int _write_done(struct objio_state *ios)
|
|||
if (likely(!ret)) {
|
||||
/* FIXME: should be based on the OSD's persistence model
|
||||
* See OSD2r05 Section 4.13 Data persistence model */
|
||||
ios->ol_state.committed = NFS_FILE_SYNC;
|
||||
ios->oir.committed = NFS_FILE_SYNC;
|
||||
status = ios->length;
|
||||
} else {
|
||||
status = ret;
|
||||
}
|
||||
|
||||
objlayout_write_done(&ios->ol_state, status, ios->sync);
|
||||
objlayout_write_done(&ios->oir, status, ios->sync);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
|
@ -179,16 +179,16 @@ void _fix_verify_io_params(struct pnfs_layout_segment *lseg,
|
|||
* I/O done common code
|
||||
*/
|
||||
static void
|
||||
objlayout_iodone(struct objlayout_io_state *state)
|
||||
objlayout_iodone(struct objlayout_io_res *oir)
|
||||
{
|
||||
if (likely(state->status >= 0)) {
|
||||
objio_free_result(state);
|
||||
if (likely(oir->status >= 0)) {
|
||||
objio_free_result(oir);
|
||||
} else {
|
||||
struct objlayout *objlay = state->objlay;
|
||||
struct objlayout *objlay = oir->objlay;
|
||||
|
||||
spin_lock(&objlay->lock);
|
||||
objlay->delta_space_valid = OBJ_DSU_INVALID;
|
||||
list_add(&objlay->err_list, &state->err_list);
|
||||
list_add(&objlay->err_list, &oir->err_list);
|
||||
spin_unlock(&objlay->lock);
|
||||
}
|
||||
}
|
||||
|
@ -200,13 +200,13 @@ objlayout_iodone(struct objlayout_io_state *state)
|
|||
* the error for later reporting at layout-return.
|
||||
*/
|
||||
void
|
||||
objlayout_io_set_result(struct objlayout_io_state *state, unsigned index,
|
||||
objlayout_io_set_result(struct objlayout_io_res *oir, unsigned index,
|
||||
struct pnfs_osd_objid *pooid, int osd_error,
|
||||
u64 offset, u64 length, bool is_write)
|
||||
{
|
||||
struct pnfs_osd_ioerr *ioerr = &state->ioerrs[index];
|
||||
struct pnfs_osd_ioerr *ioerr = &oir->ioerrs[index];
|
||||
|
||||
BUG_ON(index >= state->num_comps);
|
||||
BUG_ON(index >= oir->num_comps);
|
||||
if (osd_error) {
|
||||
ioerr->oer_component = *pooid;
|
||||
ioerr->oer_comp_offset = offset;
|
||||
|
@ -247,15 +247,15 @@ static void _rpc_read_complete(struct work_struct *work)
|
|||
}
|
||||
|
||||
void
|
||||
objlayout_read_done(struct objlayout_io_state *state, ssize_t status, bool sync)
|
||||
objlayout_read_done(struct objlayout_io_res *oir, ssize_t status, bool sync)
|
||||
{
|
||||
struct nfs_read_data *rdata = state->rpcdata;
|
||||
struct nfs_read_data *rdata = oir->rpcdata;
|
||||
|
||||
state->status = rdata->task.tk_status = status;
|
||||
oir->status = rdata->task.tk_status = status;
|
||||
if (status >= 0)
|
||||
rdata->res.count = status;
|
||||
objlayout_iodone(state);
|
||||
/* must not use state after this point */
|
||||
objlayout_iodone(oir);
|
||||
/* must not use oir after this point */
|
||||
|
||||
dprintk("%s: Return status=%zd eof=%d sync=%d\n", __func__,
|
||||
status, rdata->res.eof, sync);
|
||||
|
@ -326,17 +326,16 @@ static void _rpc_write_complete(struct work_struct *work)
|
|||
}
|
||||
|
||||
void
|
||||
objlayout_write_done(struct objlayout_io_state *state, ssize_t status,
|
||||
bool sync)
|
||||
objlayout_write_done(struct objlayout_io_res *oir, ssize_t status, bool sync)
|
||||
{
|
||||
struct nfs_write_data *wdata = state->rpcdata;
|
||||
struct nfs_write_data *wdata = oir->rpcdata;
|
||||
|
||||
state->status = wdata->task.tk_status = status;
|
||||
oir->status = wdata->task.tk_status = status;
|
||||
if (status >= 0) {
|
||||
wdata->res.count = status;
|
||||
wdata->verf.committed = state->committed;
|
||||
wdata->verf.committed = oir->committed;
|
||||
}
|
||||
objlayout_iodone(state);
|
||||
objlayout_iodone(oir);
|
||||
/* must not use oir after this point */
|
||||
|
||||
dprintk("%s: Return status %zd committed %d sync=%d\n", __func__,
|
||||
|
@ -475,14 +474,14 @@ merge_ioerr(struct pnfs_osd_ioerr *dest_err,
|
|||
static void
|
||||
encode_accumulated_error(struct objlayout *objlay, __be32 *p)
|
||||
{
|
||||
struct objlayout_io_state *state, *tmp;
|
||||
struct objlayout_io_res *oir, *tmp;
|
||||
struct pnfs_osd_ioerr accumulated_err = {.oer_errno = 0};
|
||||
|
||||
list_for_each_entry_safe(state, tmp, &objlay->err_list, err_list) {
|
||||
list_for_each_entry_safe(oir, tmp, &objlay->err_list, err_list) {
|
||||
unsigned i;
|
||||
|
||||
for (i = 0; i < state->num_comps; i++) {
|
||||
struct pnfs_osd_ioerr *ioerr = &state->ioerrs[i];
|
||||
for (i = 0; i < oir->num_comps; i++) {
|
||||
struct pnfs_osd_ioerr *ioerr = &oir->ioerrs[i];
|
||||
|
||||
if (!ioerr->oer_errno)
|
||||
continue;
|
||||
|
@ -501,8 +500,8 @@ encode_accumulated_error(struct objlayout *objlay, __be32 *p)
|
|||
|
||||
merge_ioerr(&accumulated_err, ioerr);
|
||||
}
|
||||
list_del(&state->err_list);
|
||||
objio_free_result(state);
|
||||
list_del(&oir->err_list);
|
||||
objio_free_result(oir);
|
||||
}
|
||||
|
||||
pnfs_osd_xdr_encode_ioerr(p, &accumulated_err);
|
||||
|
@ -514,7 +513,7 @@ objlayout_encode_layoutreturn(struct pnfs_layout_hdr *pnfslay,
|
|||
const struct nfs4_layoutreturn_args *args)
|
||||
{
|
||||
struct objlayout *objlay = OBJLAYOUT(pnfslay);
|
||||
struct objlayout_io_state *state, *tmp;
|
||||
struct objlayout_io_res *oir, *tmp;
|
||||
__be32 *start;
|
||||
|
||||
dprintk("%s: Begin\n", __func__);
|
||||
|
@ -523,13 +522,13 @@ objlayout_encode_layoutreturn(struct pnfs_layout_hdr *pnfslay,
|
|||
|
||||
spin_lock(&objlay->lock);
|
||||
|
||||
list_for_each_entry_safe(state, tmp, &objlay->err_list, err_list) {
|
||||
list_for_each_entry_safe(oir, tmp, &objlay->err_list, err_list) {
|
||||
__be32 *last_xdr = NULL, *p;
|
||||
unsigned i;
|
||||
int res = 0;
|
||||
|
||||
for (i = 0; i < state->num_comps; i++) {
|
||||
struct pnfs_osd_ioerr *ioerr = &state->ioerrs[i];
|
||||
for (i = 0; i < oir->num_comps; i++) {
|
||||
struct pnfs_osd_ioerr *ioerr = &oir->ioerrs[i];
|
||||
|
||||
if (!ioerr->oer_errno)
|
||||
continue;
|
||||
|
@ -553,7 +552,7 @@ objlayout_encode_layoutreturn(struct pnfs_layout_hdr *pnfslay,
|
|||
}
|
||||
|
||||
last_xdr = p;
|
||||
pnfs_osd_xdr_encode_ioerr(p, &state->ioerrs[i]);
|
||||
pnfs_osd_xdr_encode_ioerr(p, &oir->ioerrs[i]);
|
||||
}
|
||||
|
||||
/* TODO: use xdr_write_pages */
|
||||
|
@ -569,8 +568,8 @@ objlayout_encode_layoutreturn(struct pnfs_layout_hdr *pnfslay,
|
|||
encode_accumulated_error(objlay, last_xdr);
|
||||
goto loop_done;
|
||||
}
|
||||
list_del(&state->err_list);
|
||||
objio_free_result(state);
|
||||
list_del(&oir->err_list);
|
||||
objio_free_result(oir);
|
||||
}
|
||||
loop_done:
|
||||
spin_unlock(&objlay->lock);
|
||||
|
|
|
@ -74,7 +74,7 @@ OBJLAYOUT(struct pnfs_layout_hdr *lo)
|
|||
* per-I/O operation state
|
||||
* embedded in objects provider io_state data structure
|
||||
*/
|
||||
struct objlayout_io_state {
|
||||
struct objlayout_io_res {
|
||||
struct objlayout *objlay;
|
||||
|
||||
void *rpcdata;
|
||||
|
@ -93,7 +93,7 @@ struct objlayout_io_state {
|
|||
};
|
||||
|
||||
static inline
|
||||
void objlayout_init_ioerrs(struct objlayout_io_state *oir, unsigned num_comps,
|
||||
void objlayout_init_ioerrs(struct objlayout_io_res *oir, unsigned num_comps,
|
||||
struct pnfs_osd_ioerr *ioerrs, void *rpcdata,
|
||||
struct pnfs_layout_hdr *pnfs_layout_type)
|
||||
{
|
||||
|
@ -114,7 +114,10 @@ extern int objio_alloc_lseg(struct pnfs_layout_segment **outp,
|
|||
gfp_t gfp_flags);
|
||||
extern void objio_free_lseg(struct pnfs_layout_segment *lseg);
|
||||
|
||||
extern void objio_free_result(struct objlayout_io_state *state);
|
||||
/* objio_free_result will free these @oir structs recieved from
|
||||
* objlayout_{read,write}_done
|
||||
*/
|
||||
extern void objio_free_result(struct objlayout_io_res *oir);
|
||||
|
||||
extern int objio_read_pagelist(struct nfs_read_data *rdata);
|
||||
extern int objio_write_pagelist(struct nfs_write_data *wdata, int how);
|
||||
|
@ -122,7 +125,7 @@ extern int objio_write_pagelist(struct nfs_write_data *wdata, int how);
|
|||
/*
|
||||
* callback API
|
||||
*/
|
||||
extern void objlayout_io_set_result(struct objlayout_io_state *state,
|
||||
extern void objlayout_io_set_result(struct objlayout_io_res *oir,
|
||||
unsigned index, struct pnfs_osd_objid *pooid,
|
||||
int osd_error, u64 offset, u64 length, bool is_write);
|
||||
|
||||
|
@ -141,9 +144,9 @@ objlayout_add_delta_space_used(struct objlayout *objlay, s64 space_used)
|
|||
spin_unlock(&objlay->lock);
|
||||
}
|
||||
|
||||
extern void objlayout_read_done(struct objlayout_io_state *state,
|
||||
extern void objlayout_read_done(struct objlayout_io_res *oir,
|
||||
ssize_t status, bool sync);
|
||||
extern void objlayout_write_done(struct objlayout_io_state *state,
|
||||
extern void objlayout_write_done(struct objlayout_io_res *oir,
|
||||
ssize_t status, bool sync);
|
||||
|
||||
extern int objlayout_get_deviceinfo(struct pnfs_layout_hdr *pnfslay,
|
||||
|
|
Loading…
Reference in New Issue