1 void something();
2 
3 int kmap(int p);
4 int kunmap(int p);
5 int kmap_atomic(int p);
6 int kunmap_atomic(int p);
7 
8 int page;
9 int x;
10 int y;
11 int z;
12 
func(void)13 void func(void)
14 {
15 	x = kmap(page);
16 	kunmap(page);
17 	kunmap(x);
18 	y = kmap_atomic(z);
19 	kunmap_atomic(y);
20 	kunmap_atomic(z);
21 }
22 /*
23  * check-name: smatch check kunmap
24  * check-command: smatch -p=kernel sm_check_kunmap.c
25  *
26  * check-output-start
27 sm_check_kunmap.c:17 func() warn: passing the wrong variable to kunmap()
28 sm_check_kunmap.c:20 func() warn: passing the wrong variable to kmap_atomic()
29  * check-output-end
30  */
31