On 7/21/2025 4:21 PM, Paul Moore wrote: > Move the lsm_order_parse() function near the other lsm_order_*() > functions to improve readability. > > No code changes. > > Signed-off-by: Paul Moore <p...@paul-moore.com>
Reviewed-by: Casey Schaufler <ca...@schaufler-ca.com> > --- > security/lsm_init.c | 138 ++++++++++++++++++++++---------------------- > 1 file changed, 69 insertions(+), 69 deletions(-) > > diff --git a/security/lsm_init.c b/security/lsm_init.c > index 7e794f4515ea..ada9b5448409 100644 > --- a/security/lsm_init.c > +++ b/security/lsm_init.c > @@ -169,75 +169,6 @@ static void __init lsm_order_append(struct lsm_info > *lsm, const char *src) > lsm_pr_dbg("enabling LSM %s:%s\n", src, lsm->id->name); > } > > -/** > - * lsm_blob_size_update - Update the LSM blob size and offset information > - * @sz_req: the requested additional blob size > - * @sz_cur: the existing blob size > - */ > -static void __init lsm_blob_size_update(unsigned int *sz_req, > - unsigned int *sz_cur) > -{ > - unsigned int offset; > - > - if (*sz_req == 0) > - return; > - > - offset = ALIGN(*sz_cur, sizeof(void *)); > - *sz_cur = offset + *sz_req; > - *sz_req = offset; > -} > - > -/** > - * lsm_prepare - Prepare the LSM framework for a new LSM > - * @lsm: LSM definition > - */ > -static void __init lsm_prepare(struct lsm_info *lsm) > -{ > - struct lsm_blob_sizes *blobs = lsm->blobs; > - > - if (!blobs) > - return; > - > - /* Register the LSM blob sizes. */ > - blobs = lsm->blobs; > - lsm_blob_size_update(&blobs->lbs_cred, &blob_sizes.lbs_cred); > - lsm_blob_size_update(&blobs->lbs_file, &blob_sizes.lbs_file); > - lsm_blob_size_update(&blobs->lbs_ib, &blob_sizes.lbs_ib); > - /* inode blob gets an rcu_head in addition to LSM blobs. */ > - if (blobs->lbs_inode && blob_sizes.lbs_inode == 0) > - blob_sizes.lbs_inode = sizeof(struct rcu_head); > - lsm_blob_size_update(&blobs->lbs_inode, &blob_sizes.lbs_inode); > - lsm_blob_size_update(&blobs->lbs_ipc, &blob_sizes.lbs_ipc); > - lsm_blob_size_update(&blobs->lbs_key, &blob_sizes.lbs_key); > - lsm_blob_size_update(&blobs->lbs_msg_msg, &blob_sizes.lbs_msg_msg); > - lsm_blob_size_update(&blobs->lbs_perf_event, > - &blob_sizes.lbs_perf_event); > - lsm_blob_size_update(&blobs->lbs_sock, &blob_sizes.lbs_sock); > - lsm_blob_size_update(&blobs->lbs_superblock, > - &blob_sizes.lbs_superblock); > - lsm_blob_size_update(&blobs->lbs_task, &blob_sizes.lbs_task); > - lsm_blob_size_update(&blobs->lbs_tun_dev, &blob_sizes.lbs_tun_dev); > - lsm_blob_size_update(&blobs->lbs_xattr_count, > - &blob_sizes.lbs_xattr_count); > - lsm_blob_size_update(&blobs->lbs_bdev, &blob_sizes.lbs_bdev); > -} > - > -/** > - * lsm_init_single - Initialize a given LSM > - * @lsm: LSM definition > - */ > -static void __init lsm_init_single(struct lsm_info *lsm) > -{ > - int ret; > - > - if (!lsm_is_enabled(lsm)) > - return; > - > - lsm_pr_dbg("initializing %s\n", lsm->id->name); > - ret = lsm->init(); > - WARN(ret, "%s failed to initialize: %d\n", lsm->id->name, ret); > -} > - > /** > * lsm_order_parse - Parse the comma delimited LSM list > * @list: LSM list > @@ -308,6 +239,75 @@ static void __init lsm_order_parse(const char *list, > const char *src) > } > } > > +/** > + * lsm_blob_size_update - Update the LSM blob size and offset information > + * @sz_req: the requested additional blob size > + * @sz_cur: the existing blob size > + */ > +static void __init lsm_blob_size_update(unsigned int *sz_req, > + unsigned int *sz_cur) > +{ > + unsigned int offset; > + > + if (*sz_req == 0) > + return; > + > + offset = ALIGN(*sz_cur, sizeof(void *)); > + *sz_cur = offset + *sz_req; > + *sz_req = offset; > +} > + > +/** > + * lsm_prepare - Prepare the LSM framework for a new LSM > + * @lsm: LSM definition > + */ > +static void __init lsm_prepare(struct lsm_info *lsm) > +{ > + struct lsm_blob_sizes *blobs = lsm->blobs; > + > + if (!blobs) > + return; > + > + /* Register the LSM blob sizes. */ > + blobs = lsm->blobs; > + lsm_blob_size_update(&blobs->lbs_cred, &blob_sizes.lbs_cred); > + lsm_blob_size_update(&blobs->lbs_file, &blob_sizes.lbs_file); > + lsm_blob_size_update(&blobs->lbs_ib, &blob_sizes.lbs_ib); > + /* inode blob gets an rcu_head in addition to LSM blobs. */ > + if (blobs->lbs_inode && blob_sizes.lbs_inode == 0) > + blob_sizes.lbs_inode = sizeof(struct rcu_head); > + lsm_blob_size_update(&blobs->lbs_inode, &blob_sizes.lbs_inode); > + lsm_blob_size_update(&blobs->lbs_ipc, &blob_sizes.lbs_ipc); > + lsm_blob_size_update(&blobs->lbs_key, &blob_sizes.lbs_key); > + lsm_blob_size_update(&blobs->lbs_msg_msg, &blob_sizes.lbs_msg_msg); > + lsm_blob_size_update(&blobs->lbs_perf_event, > + &blob_sizes.lbs_perf_event); > + lsm_blob_size_update(&blobs->lbs_sock, &blob_sizes.lbs_sock); > + lsm_blob_size_update(&blobs->lbs_superblock, > + &blob_sizes.lbs_superblock); > + lsm_blob_size_update(&blobs->lbs_task, &blob_sizes.lbs_task); > + lsm_blob_size_update(&blobs->lbs_tun_dev, &blob_sizes.lbs_tun_dev); > + lsm_blob_size_update(&blobs->lbs_xattr_count, > + &blob_sizes.lbs_xattr_count); > + lsm_blob_size_update(&blobs->lbs_bdev, &blob_sizes.lbs_bdev); > +} > + > +/** > + * lsm_init_single - Initialize a given LSM > + * @lsm: LSM definition > + */ > +static void __init lsm_init_single(struct lsm_info *lsm) > +{ > + int ret; > + > + if (!lsm_is_enabled(lsm)) > + return; > + > + lsm_pr_dbg("initializing %s\n", lsm->id->name); > + ret = lsm->init(); > + WARN(ret, "%s failed to initialize: %d\n", lsm->id->name, ret); > +} > + > /** > * lsm_static_call_init - Initialize a LSM's static calls > * @hl: LSM hook list