[PATCH] Replacement of IPC char* context to sid for improved performance
Dustin Kirkland
dustin.kirkland at us.ibm.com
Fri Mar 31 15:16:52 UTC 2006
On Fri, 2006-03-31 at 08:28 -0500, Steve Grubb wrote:
> On Friday 31 March 2006 01:11, Dustin Kirkland wrote:
> > Steve, if you could (a) take a close look at this patch and ensure that
> > I'm closely following your model, and (b) build this patch and run
> > similar performance benchmarks, that would be great. I'm traveling
> > tomorrow and will be out of pocket for the next few days.
>
> I needed a patch to do this yesterday and created a patch I was going to send
> out this morning. It is nearly identical to your patch, but I think you
> eliminated a function that I missed. I'll reconcile the differences and post
> a patch in a few minutes.
>
> The only other item left is to find a test case to performance test with.
Here's a very basic one that I've used. It only hits one ipc call, but
it does trigger the audit hooks in msgsnd
# gcc -o test_msgget test_msgget.c
# auditctl -a exit,always -S ipc
# tail /var/log/audit/audit.log
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include <sys/errno.h>
#include <sys/stat.h>
#include <stdio.h>
int main() {
int rc = 0;
int msgid = 0;
int mode;
mode = S_IRWXU;
if( ( msgid = msgget( IPC_PRIVATE, mode ) ) == -1 ) {
printf("ERROR: Unable to allocate new message queue: errno=%i\n", errno );
goto EXIT;
}
if( ( rc = msgctl( msgid, IPC_RMID, 0 ) ) == -1 ) {
printf( "Error removing message queue with ID = [%d]: errno = [%i]\n", msgid, errno );
goto EXIT;
}
EXIT:
return rc;
}
More information about the Linux-audit
mailing list