| .. | .. |
|---|
| 307 | 307 | return KDB_BADINT; |
|---|
| 308 | 308 | |
|---|
| 309 | 309 | /* |
|---|
| 310 | + * This check is redundant (since the breakpoint machinery should |
|---|
| 311 | + * be doing the same check during kdb_bp_install) but gives the |
|---|
| 312 | + * user immediate feedback. |
|---|
| 313 | + */ |
|---|
| 314 | + diag = kgdb_validate_break_address(template.bp_addr); |
|---|
| 315 | + if (diag) |
|---|
| 316 | + return diag; |
|---|
| 317 | + |
|---|
| 318 | + /* |
|---|
| 310 | 319 | * Find an empty bp structure to allocate |
|---|
| 311 | 320 | */ |
|---|
| 312 | 321 | for (bpno = 0, bp = kdb_breakpoints; bpno < KDB_MAXBPT; bpno++, bp++) { |
|---|
| .. | .. |
|---|
| 412 | 421 | * assume that the breakpoint number is desired. |
|---|
| 413 | 422 | */ |
|---|
| 414 | 423 | if (addr < KDB_MAXBPT) { |
|---|
| 415 | | - bp = &kdb_breakpoints[addr]; |
|---|
| 416 | 424 | lowbp = highbp = addr; |
|---|
| 417 | 425 | highbp++; |
|---|
| 418 | 426 | } else { |
|---|