- 595 名前:592 mailto:sage [2006/10/28(土) 18:37:02 ]
- どもです。
uio->uio_offset との比較が怪しかったので、 procfs_docpuinfo() を真似て解決しました。 # ずれるだろうけど張っとく % diff -u sys/miscfs/procfs/procfs_linux.c.bak sys/miscfs/procfs/procfs_linux.c --- sys/miscfs/procfs/procfs_linux.c.bak Sat Oct 28 16:48:43 2006 +++ sys/miscfs/procfs/procfs_linux.c Sat Oct 28 18:21:38 2006 @@ -89,9 +89,11 @@ PGTOKB(uvmexp.swpages), PGTOKB(uvmexp.swpages - uvmexp.swpginuse)); - if (len <= 0 || len >= sizeof buf || - len <= uio->uio_offset || uio->uio_resid == 0) + if (len <= 0 || len >= sizeof buf || uio->uio_resid == 0) return EINVAL; + + if (sizeof buf < uio->uio_offset) + return 0; len -= uio->uio_offset; cp = buf + uio->uio_offset;
|

|