forked from luck/tmp_suning_uos_patched
RDMA/core: Use sizeof_field() helper
Make use of the sizeof_field() helper instead of an open-coded version. Link: https://lore.kernel.org/r/20200527144152.GA22605@embeddedor Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
This commit is contained in:
parent
ebd6e96b33
commit
bebcfe85f4
|
@ -190,7 +190,7 @@ static u32 tid;
|
||||||
|
|
||||||
#define PATH_REC_FIELD(field) \
|
#define PATH_REC_FIELD(field) \
|
||||||
.struct_offset_bytes = offsetof(struct sa_path_rec, field), \
|
.struct_offset_bytes = offsetof(struct sa_path_rec, field), \
|
||||||
.struct_size_bytes = sizeof((struct sa_path_rec *)0)->field, \
|
.struct_size_bytes = sizeof_field(struct sa_path_rec, field), \
|
||||||
.field_name = "sa_path_rec:" #field
|
.field_name = "sa_path_rec:" #field
|
||||||
|
|
||||||
static const struct ib_field path_rec_table[] = {
|
static const struct ib_field path_rec_table[] = {
|
||||||
|
@ -292,7 +292,7 @@ static const struct ib_field path_rec_table[] = {
|
||||||
.struct_offset_bytes = \
|
.struct_offset_bytes = \
|
||||||
offsetof(struct sa_path_rec, field), \
|
offsetof(struct sa_path_rec, field), \
|
||||||
.struct_size_bytes = \
|
.struct_size_bytes = \
|
||||||
sizeof((struct sa_path_rec *)0)->field, \
|
sizeof_field(struct sa_path_rec, field), \
|
||||||
.field_name = "sa_path_rec:" #field
|
.field_name = "sa_path_rec:" #field
|
||||||
|
|
||||||
static const struct ib_field opa_path_rec_table[] = {
|
static const struct ib_field opa_path_rec_table[] = {
|
||||||
|
@ -420,7 +420,7 @@ static const struct ib_field opa_path_rec_table[] = {
|
||||||
|
|
||||||
#define MCMEMBER_REC_FIELD(field) \
|
#define MCMEMBER_REC_FIELD(field) \
|
||||||
.struct_offset_bytes = offsetof(struct ib_sa_mcmember_rec, field), \
|
.struct_offset_bytes = offsetof(struct ib_sa_mcmember_rec, field), \
|
||||||
.struct_size_bytes = sizeof ((struct ib_sa_mcmember_rec *) 0)->field, \
|
.struct_size_bytes = sizeof_field(struct ib_sa_mcmember_rec, field), \
|
||||||
.field_name = "sa_mcmember_rec:" #field
|
.field_name = "sa_mcmember_rec:" #field
|
||||||
|
|
||||||
static const struct ib_field mcmember_rec_table[] = {
|
static const struct ib_field mcmember_rec_table[] = {
|
||||||
|
@ -504,7 +504,7 @@ static const struct ib_field mcmember_rec_table[] = {
|
||||||
|
|
||||||
#define SERVICE_REC_FIELD(field) \
|
#define SERVICE_REC_FIELD(field) \
|
||||||
.struct_offset_bytes = offsetof(struct ib_sa_service_rec, field), \
|
.struct_offset_bytes = offsetof(struct ib_sa_service_rec, field), \
|
||||||
.struct_size_bytes = sizeof ((struct ib_sa_service_rec *) 0)->field, \
|
.struct_size_bytes = sizeof_field(struct ib_sa_service_rec, field), \
|
||||||
.field_name = "sa_service_rec:" #field
|
.field_name = "sa_service_rec:" #field
|
||||||
|
|
||||||
static const struct ib_field service_rec_table[] = {
|
static const struct ib_field service_rec_table[] = {
|
||||||
|
@ -552,7 +552,7 @@ static const struct ib_field service_rec_table[] = {
|
||||||
|
|
||||||
#define CLASSPORTINFO_REC_FIELD(field) \
|
#define CLASSPORTINFO_REC_FIELD(field) \
|
||||||
.struct_offset_bytes = offsetof(struct ib_class_port_info, field), \
|
.struct_offset_bytes = offsetof(struct ib_class_port_info, field), \
|
||||||
.struct_size_bytes = sizeof((struct ib_class_port_info *)0)->field, \
|
.struct_size_bytes = sizeof_field(struct ib_class_port_info, field), \
|
||||||
.field_name = "ib_class_port_info:" #field
|
.field_name = "ib_class_port_info:" #field
|
||||||
|
|
||||||
static const struct ib_field ib_classport_info_rec_table[] = {
|
static const struct ib_field ib_classport_info_rec_table[] = {
|
||||||
|
@ -630,7 +630,7 @@ static const struct ib_field ib_classport_info_rec_table[] = {
|
||||||
.struct_offset_bytes =\
|
.struct_offset_bytes =\
|
||||||
offsetof(struct opa_class_port_info, field), \
|
offsetof(struct opa_class_port_info, field), \
|
||||||
.struct_size_bytes = \
|
.struct_size_bytes = \
|
||||||
sizeof((struct opa_class_port_info *)0)->field, \
|
sizeof_field(struct opa_class_port_info, field), \
|
||||||
.field_name = "opa_class_port_info:" #field
|
.field_name = "opa_class_port_info:" #field
|
||||||
|
|
||||||
static const struct ib_field opa_classport_info_rec_table[] = {
|
static const struct ib_field opa_classport_info_rec_table[] = {
|
||||||
|
@ -710,7 +710,7 @@ static const struct ib_field opa_classport_info_rec_table[] = {
|
||||||
|
|
||||||
#define GUIDINFO_REC_FIELD(field) \
|
#define GUIDINFO_REC_FIELD(field) \
|
||||||
.struct_offset_bytes = offsetof(struct ib_sa_guidinfo_rec, field), \
|
.struct_offset_bytes = offsetof(struct ib_sa_guidinfo_rec, field), \
|
||||||
.struct_size_bytes = sizeof((struct ib_sa_guidinfo_rec *) 0)->field, \
|
.struct_size_bytes = sizeof_field(struct ib_sa_guidinfo_rec, field), \
|
||||||
.field_name = "sa_guidinfo_rec:" #field
|
.field_name = "sa_guidinfo_rec:" #field
|
||||||
|
|
||||||
static const struct ib_field guidinfo_rec_table[] = {
|
static const struct ib_field guidinfo_rec_table[] = {
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
|
|
||||||
#define STRUCT_FIELD(header, field) \
|
#define STRUCT_FIELD(header, field) \
|
||||||
.struct_offset_bytes = offsetof(struct ib_unpacked_ ## header, field), \
|
.struct_offset_bytes = offsetof(struct ib_unpacked_ ## header, field), \
|
||||||
.struct_size_bytes = sizeof ((struct ib_unpacked_ ## header *) 0)->field, \
|
.struct_size_bytes = sizeof_field(struct ib_unpacked_ ## header, field), \
|
||||||
.field_name = #header ":" #field
|
.field_name = #header ":" #field
|
||||||
|
|
||||||
static const struct ib_field lrh_table[] = {
|
static const struct ib_field lrh_table[] = {
|
||||||
|
|
|
@ -3741,7 +3741,7 @@ static int ib_uverbs_ex_modify_cq(struct uverbs_attr_bundle *attrs)
|
||||||
#define UAPI_DEF_WRITE_IO(req, resp) \
|
#define UAPI_DEF_WRITE_IO(req, resp) \
|
||||||
.write.has_resp = 1 + \
|
.write.has_resp = 1 + \
|
||||||
BUILD_BUG_ON_ZERO(offsetof(req, response) != 0) + \
|
BUILD_BUG_ON_ZERO(offsetof(req, response) != 0) + \
|
||||||
BUILD_BUG_ON_ZERO(sizeof(((req *)0)->response) != \
|
BUILD_BUG_ON_ZERO(sizeof_field(req, response) != \
|
||||||
sizeof(u64)), \
|
sizeof(u64)), \
|
||||||
.write.req_size = sizeof(req), .write.resp_size = sizeof(resp)
|
.write.req_size = sizeof(req), .write.resp_size = sizeof(resp)
|
||||||
|
|
||||||
|
|
|
@ -137,7 +137,7 @@ EXPORT_SYMBOL(_uverbs_alloc);
|
||||||
static bool uverbs_is_attr_cleared(const struct ib_uverbs_attr *uattr,
|
static bool uverbs_is_attr_cleared(const struct ib_uverbs_attr *uattr,
|
||||||
u16 len)
|
u16 len)
|
||||||
{
|
{
|
||||||
if (uattr->len > sizeof(((struct ib_uverbs_attr *)0)->data))
|
if (uattr->len > sizeof_field(struct ib_uverbs_attr, data))
|
||||||
return ib_is_buffer_cleared(u64_to_user_ptr(uattr->data) + len,
|
return ib_is_buffer_cleared(u64_to_user_ptr(uattr->data) + len,
|
||||||
uattr->len - len);
|
uattr->len - len);
|
||||||
|
|
||||||
|
|
|
@ -420,9 +420,9 @@ struct uapi_definition {
|
||||||
.scope = UAPI_SCOPE_OBJECT, \
|
.scope = UAPI_SCOPE_OBJECT, \
|
||||||
.needs_fn_offset = \
|
.needs_fn_offset = \
|
||||||
offsetof(struct ib_device_ops, ibdev_fn) + \
|
offsetof(struct ib_device_ops, ibdev_fn) + \
|
||||||
BUILD_BUG_ON_ZERO( \
|
BUILD_BUG_ON_ZERO(sizeof_field(struct ib_device_ops, \
|
||||||
sizeof(((struct ib_device_ops *)0)->ibdev_fn) != \
|
ibdev_fn) != \
|
||||||
sizeof(void *)), \
|
sizeof(void *)), \
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -435,9 +435,9 @@ struct uapi_definition {
|
||||||
.scope = UAPI_SCOPE_METHOD, \
|
.scope = UAPI_SCOPE_METHOD, \
|
||||||
.needs_fn_offset = \
|
.needs_fn_offset = \
|
||||||
offsetof(struct ib_device_ops, ibdev_fn) + \
|
offsetof(struct ib_device_ops, ibdev_fn) + \
|
||||||
BUILD_BUG_ON_ZERO( \
|
BUILD_BUG_ON_ZERO(sizeof_field(struct ib_device_ops, \
|
||||||
sizeof(((struct ib_device_ops *)0)->ibdev_fn) != \
|
ibdev_fn) != \
|
||||||
sizeof(void *)), \
|
sizeof(void *)), \
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Call a function to determine if the entire object is supported or not */
|
/* Call a function to determine if the entire object is supported or not */
|
||||||
|
|
Loading…
Reference in New Issue
Block a user