Commit f9ff368
committed
msm: camera: common: synchronization in CRM close and subdev register
There is a chance of a race condition where cam_register_subdev
and cam_req_mgr_close may be invoked simultaneously.
In such cases, v4l2 subdev registration may be in progress
in cam_register_subdev while cam_req_mgr_close attempts to
shut down the subdev, potentially causing a panic during
boot up.
Enhanced mutex locking by replacing dev_lock with cam_lock
to avoid such conditions and ensure proper synchronization
between subdev registration and shutdown.
CRs-Fixed: 4235165
Change-Id: I8ac389af6875b8e20583082e078ee9fa4e56138e
Signed-off-by: Keval Sanghvi <ksanghvi@qti.qualcomm.com>1 parent 8b1dfea commit f9ff368
4 files changed
Lines changed: 24 additions & 0 deletions
File tree
- camera_kt/drivers/cam_req_mgr
- camera/drivers/cam_req_mgr
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
214 | 214 | | |
215 | 215 | | |
216 | 216 | | |
| 217 | + | |
217 | 218 | | |
218 | 219 | | |
219 | 220 | | |
220 | 221 | | |
221 | 222 | | |
| 223 | + | |
222 | 224 | | |
223 | 225 | | |
224 | 226 | | |
| |||
255 | 257 | | |
256 | 258 | | |
257 | 259 | | |
| 260 | + | |
258 | 261 | | |
259 | 262 | | |
260 | 263 | | |
| |||
920 | 923 | | |
921 | 924 | | |
922 | 925 | | |
| 926 | + | |
923 | 927 | | |
924 | 928 | | |
925 | 929 | | |
| |||
969 | 973 | | |
970 | 974 | | |
971 | 975 | | |
| 976 | + | |
972 | 977 | | |
973 | 978 | | |
974 | 979 | | |
| |||
979 | 984 | | |
980 | 985 | | |
981 | 986 | | |
| 987 | + | |
982 | 988 | | |
983 | 989 | | |
984 | 990 | | |
985 | 991 | | |
| 992 | + | |
986 | 993 | | |
987 | 994 | | |
988 | 995 | | |
| |||
1012 | 1019 | | |
1013 | 1020 | | |
1014 | 1021 | | |
| 1022 | + | |
1015 | 1023 | | |
1016 | 1024 | | |
1017 | 1025 | | |
| |||
1070 | 1078 | | |
1071 | 1079 | | |
1072 | 1080 | | |
| 1081 | + | |
1073 | 1082 | | |
1074 | 1083 | | |
1075 | 1084 | | |
| |||
1093 | 1102 | | |
1094 | 1103 | | |
1095 | 1104 | | |
| 1105 | + | |
1096 | 1106 | | |
1097 | 1107 | | |
1098 | 1108 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
34 | 35 | | |
35 | 36 | | |
36 | 37 | | |
| 38 | + | |
37 | 39 | | |
38 | 40 | | |
39 | 41 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
202 | 202 | | |
203 | 203 | | |
204 | 204 | | |
| 205 | + | |
205 | 206 | | |
206 | 207 | | |
207 | 208 | | |
208 | 209 | | |
209 | 210 | | |
| 211 | + | |
210 | 212 | | |
211 | 213 | | |
212 | 214 | | |
| |||
243 | 245 | | |
244 | 246 | | |
245 | 247 | | |
| 248 | + | |
246 | 249 | | |
247 | 250 | | |
248 | 251 | | |
| |||
810 | 813 | | |
811 | 814 | | |
812 | 815 | | |
| 816 | + | |
813 | 817 | | |
814 | 818 | | |
815 | 819 | | |
| |||
860 | 864 | | |
861 | 865 | | |
862 | 866 | | |
| 867 | + | |
863 | 868 | | |
864 | 869 | | |
865 | 870 | | |
| |||
870 | 875 | | |
871 | 876 | | |
872 | 877 | | |
| 878 | + | |
873 | 879 | | |
874 | 880 | | |
875 | 881 | | |
876 | 882 | | |
| 883 | + | |
877 | 884 | | |
878 | 885 | | |
879 | 886 | | |
| |||
892 | 899 | | |
893 | 900 | | |
894 | 901 | | |
| 902 | + | |
895 | 903 | | |
896 | 904 | | |
897 | 905 | | |
| |||
960 | 968 | | |
961 | 969 | | |
962 | 970 | | |
| 971 | + | |
963 | 972 | | |
964 | 973 | | |
965 | 974 | | |
| |||
977 | 986 | | |
978 | 987 | | |
979 | 988 | | |
| 989 | + | |
980 | 990 | | |
981 | 991 | | |
982 | 992 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
| 36 | + | |
35 | 37 | | |
36 | 38 | | |
37 | 39 | | |
| |||
0 commit comments