lkml.org 
[lkml]   [2001]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectIPC usage inside of kernel module
Date
Hello everybody !

I needed to implement an IPC connectiovity between module and
userspace daemon, and came to this horrible code (after looking to
sys_msgsnd() ):
...
copy_to_user(msg_buf, &hlb1, sizeof(struct linfs_buffer));
hi1 = sys_ipc(MSGSND, msgq_id, message_size, 0, \
(struct msgbuf *)msg_buf, 0);
...
msg_buf is in userspace, hlb1 - module's prepared message (struct msgbuf ).
Well, it works :) . Messages are delivered,
but the whole construction looks rather ugly. The worst part of it is
sys_msgsnd() does then copy_from_user to kmalloc()'ed buffer, just to enqueue
message. Can somebody tell me, is there any other way to implement IPC
functionality , without rewriting sys_msgsnd() and accompanying functions
(load_msg etc.) inside of my module ?

With all the best, yarick at relex dot ru
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:26    [W:0.020 / U:0.444 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site