Welcome to the Linux Foundation Forum!

PIPE questions for Linux 2.4 setup

We wanted to increase PIPE_SIZE (from 4K to 8K on linux 2.4 on an AMD LX800 system).

The result is a segmentation error as soon as Read() is reading more data than 4K from the pipe.

So pipe data seems to be damaged.

If we change PIPE_SIZE back tot 4K everything is running fine.

Question-1: Any suggestion to prevent this segmentation error ?

* PIPE_SIZE

If you look in the linux kernel code for PIPE_SIZE

("include/linux/pipe_fs_i.h") you find:

#define PIPE_SIZE PAGE_SIZE

I don't know if #define PIPE_SIZE PAGE_SIZE is necessary or just a simple shortcut.

Question-2: Is it OK if PIPE_SIZE > PAGE_SIZE ?

* PAGE_SIZE

Question-3: Is it OK to increase Page_size on linux 2.4 on AMD LX800 system ?

Which aspects are limiting the user to config the PAGE_SIZE ?

Comments

  • Posts: 5
    Hi,

    There's a patch to increase pipe capacity at http://lse.sourceforge.net/pipe/.

    Pipe capacity, however, is not the same as PIPE_BUF, which is the maximum size of a guaranteed atomic write (please correct me on this if I'm wrong).

    The patch above doesn't affect PIPE_BUF though.

    Judging from the code of the patch, however, the approach they took is to allocate multiple pages to increase PIPE_SIZE. So my partially educated guess would be answering your Q2 with a 'no' :)

    If you don't mind me asking, why do you need to increase the page size?

    Cheers,
    Vlad

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training