On Fri, Feb 08, 2002 at 05:16:00PM +0100, Geert Uytterhoeven wrote:
> On Fri, 8 Feb 2002, Steven J. Hill wrote:
> > Just more clean ups. I tested it, it works.
> >
> > -Steve
> >
> > diff -urN -X cvs-exc.txt mipslinux-2.4.17-xfs/arch/mips/kernel/gdb-stub.c
> > settop/arch/mips/kernel/gdb-stub.c
> > --- mipslinux-2.4.17-xfs/arch/mips/kernel/gdb-stub.c Thu Nov 29
> > 09:13:08 2001
> > +++ settop/arch/mips/kernel/gdb-stub.c Fri Feb 8 09:14:52 2002
> > @@ -306,7 +306,7 @@
> > unsigned char ch;
> >
> > while (count-- > 0) {
> > - if (kgdb_read_byte(mem++, &ch) != 0)
> > + if (kgdb_read_byte((unsigned *) mem++, (unsigned *) &ch) != 0)
> > return 0;
> > *buf++ = hexchars[ch >> 4];
> > *buf++ = hexchars[ch & 0xf];
> > @@ -332,7 +332,7 @@
> > {
> > ch = hex(*buf++) << 4;
> > ch |= hex(*buf++);
> > - if (kgdb_write_byte(ch, mem++) != 0)
> > + if (kgdb_write_byte((unsigned) ch, (unsigned *) mem++) != 0)
> > return 0;
> > }
> >
>
> Wouldn't it be better to change the prototypes
>
> | int kgdb_read_byte(unsigned *address, unsigned *dest);
> | int kgdb_write_byte(unsigned val, unsigned *dest);
>
> instead?
>
> If these routines work on bytes, why have them taking unsigned (wasn't plain
> `unsigned' deprecated in some recent C standard?) parameters instead of char
> parameters?
Because Ralf dropped one of my patches, or messed up a merge, or more
likely I simply sent him a bad patch. My working directory from when I
remember writing those functions says unsigned char...
--
Daniel Jacobowitz Carnegie Mellon University
MontaVista Software Debian GNU/Linux Developer
|