[lkml]   [2007]   [Sep]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [RFC][PATCH 1/6] Storing ipcs into IDRs
On Fri, 31 Aug 2007 13:24:46 +0200 wrote:

> [PATCH 01/06]
> This patch introduces ipcs storage into IDRs. The main changes are:
> . This ipc_ids structure is changed: the entries array is changed into a
> root idr structure.
> . The grow_ary() routine is removed: it is not needed anymore when adding
> an ipc structure, since we are now using the IDR facility.
> . The ipc_rmid() routine interface is changed:
> . there is no need for this routine to return the pointer passed in as
> argument: it is now declared as a void
> . since the id is now part of the kern_ipc_perm structure, no need to
> have it as an argument to the routine

This is a large patch, and I have neither the time nor competence to review
it :(

I hope that someone will find the time to do a detailed review-n-test of
this code, because the IPC code is pretty touchy and isn't well-maintained,
as I'm sure you have noticed.

Meanwhile I'll queue the patches up for a bit of compile-time and runtime
testing, thanks.

> ...
> + msq = (struct msg_queue *) ipc_findkey(&msg_ids(ns), key);

As a separate cleanup: the code casts the ipc_findkey to some outer struct
in all cases. It would be nicer to convert this to container_of(). It'll
generate the same code, but it actually represents what the code is doing
and perhaps means that the code will continue to work if the `struct
kern_ipc_perm' is not at the start of the containing struct.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2007-09-10 22:13    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean