Opened 13 years ago

Closed 10 years ago

#915 closed bug (fixed)

Remove buffer size limit for ports

Reported by: axeld Owned by: axeld
Priority: normal Milestone: R1
Component: System/Kernel Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

The current port implementation has an upper limit for the size of the transferred message (PORT_MAX_MESSAGE_SIZE) of 64kB. The BeOS documentation clearly states that there is no such limit, so it has to be removed (or at least substantially lifted).

In BeOS, the limit seems to be around 2 MB per message, and a total of 8 MB for all ports at once.

Additionally, you could also implement things like shared memory to save allocating and copying big chunks of memory in the kernel for large messages when possible.

Change History (3)

comment:1 Changed 12 years ago by wkornewald

Summary: Remove buffer size limit for portsRemove buffer size limit for ports (easy)

comment:2 Changed 12 years ago by wkornewald

Summary: Remove buffer size limit for ports (easy)Remove buffer size limit for ports

comment:3 Changed 10 years ago by axeld

Resolution: fixed
Status: newclosed
Version: R1/pre-alpha1R1/Development

The port message size is now limited to 256k, and there is a global limit of 64 MB of messages in all ports in the system.

Having a limit makes sense, since this is a restricted shared resource. BMessages already use areas for larger messages.

Note: See TracTickets for help on using tickets.