Re: [git pull] kgdb light, v5

2008-02-10 Thread Ingo Molnar
* Jan Kiszka <[EMAIL PROTECTED]> wrote: > Maybe, maybe not. I followed the comment in the original code, saying > that we need word-wise access for I/O memory poking. Can I assume > across a all archs that __copy_to/from_user will not perform byte > accesses if count is 2, 4, or 8? I would be

Re: [git pull] kgdb light, v5

2008-02-10 Thread Ingo Molnar
* Ingo Molnar <[EMAIL PROTECTED]> wrote: > all other places already use probe_kernel_{read|write}. (Now, there > are a few stray TASK_SIZE checks still, i'll double check them and > convert them to access_ok() checks.) all the TASK_SIZE checks relate to the soft breakpoint write accesses. and

Re: [git pull] kgdb light, v5

2008-02-10 Thread Ingo Molnar
* Linus Torvalds <[EMAIL PROTECTED]> wrote: > > +static int kgdb_get_mem(char *addr, unsigned char *buf, int count) > > { > > + if ((unsigned long)addr < TASK_SIZE) > > + return -EFAULT; > > > > + return probe_kernel_read(buf, addr, count); > > } > > Ok, so this is a pretty fun

Re: [git pull] kgdb light, v5

2008-02-10 Thread Jan Kiszka
Linus Torvalds wrote: On Sun, 10 Feb 2008, Jan Kiszka wrote: +static int kgdb_get_mem(char *addr, unsigned char *buf, int count) { + if ((unsigned long)addr < TASK_SIZE) + return -EFAULT; + return probe_kernel_read(buf, addr, count); } Ok, so this is a pretty function

Re: [git pull] kgdb light, v5

2008-02-10 Thread Ingo Molnar
* Linus Torvalds <[EMAIL PROTECTED]> wrote: > > +static int kgdb_get_mem(char *addr, unsigned char *buf, int count) > > { > > + if ((unsigned long)addr < TASK_SIZE) > > + return -EFAULT; > > > > + return probe_kernel_read(buf, addr, count); > > Ok, so this is a pretty function a

Re: [git pull] kgdb light, v5

2008-02-10 Thread Linus Torvalds
On Sun, 10 Feb 2008, Jan Kiszka wrote: > > +static int kgdb_get_mem(char *addr, unsigned char *buf, int count) > { > + if ((unsigned long)addr < TASK_SIZE) > + return -EFAULT; > > + return probe_kernel_read(buf, addr, count); > } Ok, so this is a pretty function after all

Re: [git pull] kgdb light, v5

2008-02-10 Thread Ingo Molnar
* Jan Kiszka <[EMAIL PROTECTED]> wrote: > [This still runs fine here, but sharp eyes are always welcome!] > > Cleanup of the way kgdb > - accesses unsafe memory via probe_kernel_* > - converts to/from hex representation > - passes errors due to such accesses around > > At this chance I also

Re: [git pull] kgdb light, v5

2008-02-10 Thread Sam Ravnborg
> > so lets please all keep that goal in mind. This is not about "will we > have KGDB support or not", this is about "WHERE will we have KGDB > support", and i strongly support the notion that it should be in the > core kernel, where we can keep it clean, tidy and architecturally agile. I thin

Re: [git pull] kgdb light, v5

2008-02-10 Thread Ray Lee
On Feb 10, 2008 9:39 AM, Jan Kiszka <[EMAIL PROTECTED]> wrote: > Ray Lee wrote: > > unsigned int void u64_to_hex(u64 val, unsigned char *buf) > > { > > int i; > > for (i=15; i>=0; i--) { > > buf[i] = hexchars[ val & 0x0f ]; > > val >>= 4; > >

Re: [git pull] kgdb light, v5

2008-02-10 Thread Jan Kiszka
[This still runs fine here, but sharp eyes are always welcome!] Cleanup of the way kgdb - accesses unsafe memory via probe_kernel_* - converts to/from hex representation - passes errors due to such accesses around At this chance I also fix kgdb_ebin2mem, which was broken /wrt escape sequence

Re: [git pull] kgdb light, v5

2008-02-10 Thread Jan Kiszka
Ray Lee wrote: > On Feb 10, 2008 8:36 AM, Ingo Molnar <[EMAIL PROTECTED]> wrote: >> +#ifdef CONFIG_64BIT >> + } else if ((count == 8) && (((long)mem & 7) == 0)) { >> + u64 tmp_ll; >> + if (probe_kernel_address(mem, tmp_ll)) >> + return ERR_PTR

Re: [git pull] kgdb light, v5

2008-02-10 Thread Ray Lee
On Feb 10, 2008 8:36 AM, Ingo Molnar <[EMAIL PROTECTED]> wrote: > +#ifdef CONFIG_64BIT > + } else if ((count == 8) && (((long)mem & 7) == 0)) { > + u64 tmp_ll; > + if (probe_kernel_address(mem, tmp_ll)) > + return ERR_PTR(-EINVAL); > + > +