Blame view

fs/verity/init.c 1.14 KB
671e67b47   Eric Biggers   fs-verity: add Kc...
1
2
  // SPDX-License-Identifier: GPL-2.0
  /*
c864727cb   Eric Biggers   fs-verity: remove...
3
   * fs-verity module initialization and logging
671e67b47   Eric Biggers   fs-verity: add Kc...
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
   *
   * Copyright 2019 Google LLC
   */
  
  #include "fsverity_private.h"
  
  #include <linux/ratelimit.h>
  
  void fsverity_msg(const struct inode *inode, const char *level,
  		  const char *fmt, ...)
  {
  	static DEFINE_RATELIMIT_STATE(rs, DEFAULT_RATELIMIT_INTERVAL,
  				      DEFAULT_RATELIMIT_BURST);
  	struct va_format vaf;
  	va_list args;
  
  	if (!__ratelimit(&rs))
  		return;
  
  	va_start(args, fmt);
  	vaf.fmt = fmt;
  	vaf.va = &args;
  	if (inode)
  		printk("%sfs-verity (%s, inode %lu): %pV
  ",
  		       level, inode->i_sb->s_id, inode->i_ino, &vaf);
  	else
  		printk("%sfs-verity: %pV
  ", level, &vaf);
  	va_end(args);
  }
  
  static int __init fsverity_init(void)
  {
fd2d1acfc   Eric Biggers   fs-verity: add th...
38
  	int err;
671e67b47   Eric Biggers   fs-verity: add Kc...
39
  	fsverity_check_hash_algs();
fd2d1acfc   Eric Biggers   fs-verity: add th...
40
41
42
  	err = fsverity_init_info_cache();
  	if (err)
  		return err;
8a1d0f9ca   Eric Biggers   fs-verity: add da...
43
44
45
  	err = fsverity_init_workqueue();
  	if (err)
  		goto err_exit_info_cache;
432434c9f   Eric Biggers   fs-verity: suppor...
46
47
48
  	err = fsverity_init_signature();
  	if (err)
  		goto err_exit_workqueue;
671e67b47   Eric Biggers   fs-verity: add Kc...
49
50
51
  	pr_debug("Initialized fs-verity
  ");
  	return 0;
8a1d0f9ca   Eric Biggers   fs-verity: add da...
52

432434c9f   Eric Biggers   fs-verity: suppor...
53
54
  err_exit_workqueue:
  	fsverity_exit_workqueue();
8a1d0f9ca   Eric Biggers   fs-verity: add da...
55
56
57
  err_exit_info_cache:
  	fsverity_exit_info_cache();
  	return err;
671e67b47   Eric Biggers   fs-verity: add Kc...
58
59
  }
  late_initcall(fsverity_init)