.. | .. |
---|
192 | 192 | |
---|
193 | 193 | while ((name = kdb_walk_kallsyms(&pos))) { |
---|
194 | 194 | if (strncmp(name, prefix_name, prefix_len) == 0) { |
---|
195 | | - strcpy(ks_namebuf, name); |
---|
| 195 | + strscpy(ks_namebuf, name, sizeof(ks_namebuf)); |
---|
196 | 196 | /* Work out the longest name that matches the prefix */ |
---|
197 | 197 | if (++number == 1) { |
---|
198 | 198 | prev_len = min_t(int, max_len-1, |
---|
.. | .. |
---|
325 | 325 | */ |
---|
326 | 326 | int kdb_getarea_size(void *res, unsigned long addr, size_t size) |
---|
327 | 327 | { |
---|
328 | | - int ret = probe_kernel_read((char *)res, (char *)addr, size); |
---|
| 328 | + int ret = copy_from_kernel_nofault((char *)res, (char *)addr, size); |
---|
329 | 329 | if (ret) { |
---|
330 | 330 | if (!KDB_STATE(SUPPRESS)) { |
---|
331 | 331 | kdb_printf("kdb_getarea: Bad address 0x%lx\n", addr); |
---|
.. | .. |
---|
350 | 350 | */ |
---|
351 | 351 | int kdb_putarea_size(unsigned long addr, void *res, size_t size) |
---|
352 | 352 | { |
---|
353 | | - int ret = probe_kernel_read((char *)addr, (char *)res, size); |
---|
| 353 | + int ret = copy_to_kernel_nofault((char *)addr, (char *)res, size); |
---|
354 | 354 | if (ret) { |
---|
355 | 355 | if (!KDB_STATE(SUPPRESS)) { |
---|
356 | 356 | kdb_printf("kdb_putarea: Bad address 0x%lx\n", addr); |
---|
.. | .. |
---|
432 | 432 | *word = w8; |
---|
433 | 433 | break; |
---|
434 | 434 | } |
---|
435 | | - /* drop through */ |
---|
| 435 | + fallthrough; |
---|
436 | 436 | default: |
---|
437 | 437 | diag = KDB_BADWIDTH; |
---|
438 | 438 | kdb_printf("kdb_getphysword: bad width %ld\n", (long) size); |
---|
.. | .. |
---|
481 | 481 | *word = w8; |
---|
482 | 482 | break; |
---|
483 | 483 | } |
---|
484 | | - /* drop through */ |
---|
| 484 | + fallthrough; |
---|
485 | 485 | default: |
---|
486 | 486 | diag = KDB_BADWIDTH; |
---|
487 | 487 | kdb_printf("kdb_getword: bad width %ld\n", (long) size); |
---|
.. | .. |
---|
525 | 525 | diag = kdb_putarea(addr, w8); |
---|
526 | 526 | break; |
---|
527 | 527 | } |
---|
528 | | - /* drop through */ |
---|
| 528 | + fallthrough; |
---|
529 | 529 | default: |
---|
530 | 530 | diag = KDB_BADWIDTH; |
---|
531 | 531 | kdb_printf("kdb_putword: bad width %ld\n", (long) size); |
---|
.. | .. |
---|
624 | 624 | char state; |
---|
625 | 625 | unsigned long tmp; |
---|
626 | 626 | |
---|
627 | | - if (!p || probe_kernel_read(&tmp, (char *)p, sizeof(unsigned long))) |
---|
| 627 | + if (!p || |
---|
| 628 | + copy_from_kernel_nofault(&tmp, (char *)p, sizeof(unsigned long))) |
---|
628 | 629 | return 'E'; |
---|
629 | 630 | |
---|
630 | 631 | cpu = kdb_process_cpu(p); |
---|