In the general use case struct file_operations should be a const object. Check for and warn where it is not. As suggested by Steven and Ingo.
Showing the changes to scripts/checkpatch.pl (1 of 1 file). Show all
Unified · Split
| @@ -2509,6 +2509,11 @@ sub process { · 2508 unmodified lines | ||
| 2509 | 2509 | if ($line =~ /^.\s*__initcall\s*\(/) { |
| 2510 | 2510 | WARN("please use device_initcall() instead of __initcall()\n" . $herecurr); |
| 2511 | 2511 | } |
| 2512 | +# check for struct file_operations, ensure they are const. | |
| 2513 | + if ($line =~ /\bstruct\s+file_operations\b/ && | |
| 2514 | + $line !~ /\bconst\b/) { | |
| 2515 | + WARN("struct file_operations should normally be const\n" . $herecurr); | |
| 2516 | + } | |
| 2512 | 2517 | |
| 2513 | 2518 | # use of NR_CPUS is usually wrong |
| 2514 | 2519 | # ignore definitions of NR_CPUS and usage to define arrays as likely right |