Messages in this thread |  | | Date | Sun, 11 Nov 2001 08:36:50 +0100 | From | Thorsten Kukuk <> | Subject | Re: Bug in /proc/lvm/global (garbage printed) |
| |
On Sat, Nov 10, Andreas Dilger wrote:
> On Nov 10, 2001 12:06 +0100, Thorsten Kukuk wrote: > > The problem is in the _proc_read_global function. This function does > > not use the "page" parameter to return the data. Instead it allocates > > it's own buffer and change to "start" parameter to point to it. > > > > --- drivers/md/lvm-fs.c 2001/11/09 19:00:38 1.1 > > +++ drivers/md/lvm-fs.c 2001/11/09 20:50:16 > > @@ -482,11 +480,15 @@ > > buf = NULL; > > return 0; > > } > > - *start = &buf[pos]; > > - if (sz - pos < count) > > + /* *start = &buf[pos]; */ > > + if (sz - pos < count) { > > + memcpy (page, &buf[pos], sz - pos); > > return sz - pos; > > - else > > + } > > + else { > > + memcpy (page, &buf[pos], count); > > return count; > > + } > > > > #undef LVM_PROC_BUF > > } > > What version of LVM do you have? This code looks different than mine. > The file lvm-fs.c does not exist in Linus kernels, only in patched kernels.
This is from LVM 1.0.1-rc4. But all previous versions have the same problem, the function here is lvm_proc_get_global_info() in drivers/md/lvm.c. The fix is also the same.
Thorsten
-- Thorsten Kukuk http://www.suse.de/~kukuk/ kukuk@suse.de SuSE GmbH Deutschherrenstr. 15-19 D-90429 Nuernberg -------------------------------------------------------------------- Key fingerprint = A368 676B 5E1B 3E46 CFCE 2D97 F8FD 4E23 56C6 FB4B - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |