This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Harden tests that deal with memory regions


On 01/23/2017 09:24 PM, Luis Machado wrote:

> 2017-01-23  Luis Machado  <lgustavo@codesourcery.com>
> 
> 	* lib/gdb-memory.exp: New file.

Do we need "gdb-" in the file name?

What other procedures to you envision being placed here?  Should
this have "regions" in the file name, like "memory-regions.exp"?
The file's intro comment talks about memory regions.

> 	* lib/gdb.exp: Load gdb-memory.exp

Missing period.

> --- a/gdb/testsuite/gdb.base/breakpoint-in-ro-region.exp
> +++ b/gdb/testsuite/gdb.base/breakpoint-in-ro-region.exp
> @@ -137,6 +137,9 @@ if ![get_function_bounds "main" main_lo main_hi] {
>      return -1
>  }
>  
> +# Delete all memory regions.
> +delete_memory_regions
> +

The comment as-is practically just reads the function name
in English.  The important detail missing here
is "target-supplied".  So:

 # Delete all target-supplied memory regions.
 delete_memory_regions

Likewise in the other spot.

>  gdb_test_no_output "mem 0x30 0x0 ro"
>  with_test_prefix "0x30 0x0" {
>      region_fail "0x20 0x50"
> diff --git a/gdb/testsuite/lib/gdb-memory.exp b/gdb/testsuite/lib/gdb-memory.exp
> new file mode 100644
> index 0000000..3377011
> --- /dev/null
> +++ b/gdb/testsuite/lib/gdb-memory.exp
> @@ -0,0 +1,38 @@
> +# Copyright 2017 Free Software Foundation, Inc.

The file's non-boilerplate code is copyright 2012, so
preserve that.  (git show 1591a1e8)

> +
> +# This program is free software; you can redistribute it and/or modify
> +# it under the terms of the GNU General Public License as published by
> +# the Free Software Foundation; either version 3 of the License, or
> +# (at your option) any later version.
> +#
> +# This program is distributed in the hope that it will be useful,
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +# GNU General Public License for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program.  If not, see <http://www.gnu.org/licenses/>.
> +
> +# This file was written by Fred Fish. (fnf@cygnus.com)

No it wasn't.

> +
> +# Generic gdb subroutines that should work for any target.  If these
> +# need to be modified for any target, it can be done with a variable
> +# or by passing arguments.

Stale comment.

> +
> +# This file holds functions and data dealing with memory regions manipulation.
> +
> +# Deletes all the memory regions GDB currently knows about.
> +
> +proc delete_memory_regions {} {

Thanks,
Pedro Alves


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]