__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __FS_CEPH_PAGELIST_H
#define __FS_CEPH_PAGELIST_H
#include <asm/byteorder.h>
#include <linux/refcount.h>
#include <linux/list.h>
#include <linux/types.h>
struct ceph_pagelist {
struct list_head head;
void *mapped_tail;
size_t length;
size_t room;
struct list_head free_list;
size_t num_pages_free;
refcount_t refcnt;
};
struct ceph_pagelist *ceph_pagelist_alloc(gfp_t gfp_flags);
extern void ceph_pagelist_release(struct ceph_pagelist *pl);
extern int ceph_pagelist_append(struct ceph_pagelist *pl, const void *d, size_t l);
extern int ceph_pagelist_reserve(struct ceph_pagelist *pl, size_t space);
extern int ceph_pagelist_free_reserve(struct ceph_pagelist *pl);
static inline int ceph_pagelist_encode_64(struct ceph_pagelist *pl, u64 v)
{
__le64 ev = cpu_to_le64(v);
return ceph_pagelist_append(pl, &ev, sizeof(ev));
}
static inline int ceph_pagelist_encode_32(struct ceph_pagelist *pl, u32 v)
{
__le32 ev = cpu_to_le32(v);
return ceph_pagelist_append(pl, &ev, sizeof(ev));
}
static inline int ceph_pagelist_encode_16(struct ceph_pagelist *pl, u16 v)
{
__le16 ev = cpu_to_le16(v);
return ceph_pagelist_append(pl, &ev, sizeof(ev));
}
static inline int ceph_pagelist_encode_8(struct ceph_pagelist *pl, u8 v)
{
return ceph_pagelist_append(pl, &v, 1);
}
static inline int ceph_pagelist_encode_string(struct ceph_pagelist *pl,
char *s, u32 len)
{
int ret = ceph_pagelist_encode_32(pl, len);
if (ret)
return ret;
if (len)
return ceph_pagelist_append(pl, s, len);
return 0;
}
#endif
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| auth.h | File | 6.59 KB | 0644 |
|
| buffer.h | File | 833 B | 0644 |
|
| ceph_debug.h | File | 2.44 KB | 0644 |
|
| ceph_features.h | File | 8.68 KB | 0644 |
|
| ceph_frag.h | File | 1.97 KB | 0644 |
|
| ceph_fs.h | File | 28.65 KB | 0644 |
|
| ceph_hash.h | File | 472 B | 0644 |
|
| cls_lock_client.h | File | 1.72 KB | 0644 |
|
| debugfs.h | File | 362 B | 0644 |
|
| decode.h | File | 9.94 KB | 0644 |
|
| libceph.h | File | 10.05 KB | 0644 |
|
| messenger.h | File | 19.31 KB | 0644 |
|
| mon_client.h | File | 3.84 KB | 0644 |
|
| msgpool.h | File | 811 B | 0644 |
|
| msgr.h | File | 7.16 KB | 0644 |
|
| osd_client.h | File | 18.13 KB | 0644 |
|
| osdmap.h | File | 9.06 KB | 0644 |
|
| pagelist.h | File | 1.53 KB | 0644 |
|
| rados.h | File | 18.85 KB | 0644 |
|
| string_table.h | File | 1.3 KB | 0644 |
|
| striper.h | File | 1.74 KB | 0644 |
|
| types.h | File | 558 B | 0644 |
|