Re: 4096 byte limit to /proc/PID/environ ?

From: James Pearson
Date: Thu Aug 30 2007 - 10:24:17 EST


H. Peter Anvin wrote:
Guy Streeter wrote:

On 6/1/06, James Pearson <james-p@xxxxxxxxxxxxxxxxxx> wrote:

H. Peter Anvin wrote:

I think this is the wrong approach.

Many of these should probably be converted to seq_file, but in the
particular case of environ, the right approach is to observe the fact
that reading environ is just like reading /proc/PID/mem, except:

a. the access restrictions are less strict, and
b. there is a range restriction, which needs to be enforced, and
c. there is an offset.

Pretty much, take the guts from /proc/PID/mem and generalize it
slightly, and you have the code that can run either /proc/PID/mem or
/proc/PID/environ.

The following patch is based on the /proc/PID/mem code appears to work fine.


This thread has gone stale. The PAGE_SIZE limit still exists. Is this
solution acceptable?



Can we avoid the code duplication?

There isn't that much that is duplicated - and there are also bits of the /proc/PID/mem code that are not needed in this case, so I'm not really sure if it is worth doing.

I did submit a patch a few months ago - see:

<http://marc.info/?l=linux-kernel&m=117862109623007&w=2>

James Pearson
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/