Re: [Linux-streams] Re: [PATCH] Re: export of sys_call_tabl

From: Petr Vandrovec (VANDROVE@vc.cvut.cz)
Date: Thu Oct 10 2002 - 11:25:14 EST


On 10 Oct 02 at 11:01, David Grothe wrote:
>
> Does this patch address your suggestions? This has been tested on 2.4.19.

Well, it can be that way. But if you are allowing
register_streams_calls(NULL, NULL), maybe you can move
unregister_streams_calls() to the headers and make it inline.

And you are returning while holding streams_call_sem semaphore
when failing with -EBUSY. It is not good idea.
                                Petr Vandrovec
                                vandrove@vc.cvut.cz

+int register_streams_calls(int (*putpmsg) (int, void *, void *, int, int),
+ int (*getpmsg) (int, void *, void *, int, int))
+{
+ down_write(&streams_call_sem) ; /* should return int, but doesn't */
+ if ( (putpmsg != NULL && do_putpmsg != NULL)
+ || (getpmsg != NULL && do_getpmsg != NULL)
+ )
+ return -EBUSY;
+ do_putpmsg = putpmsg;
+ do_getpmsg = getpmsg;
+ up_write(&streams_call_sem);
+ return 0 ;
+}
+
+void unregister_streams_calls(void)
+{
+ register_streams_calls(NULL, NULL);
+}
+
 asmlinkage long sys_ni_syscall(void)
 {
    return -ENOSYS;
-
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/



This archive was generated by hypermail 2b29 : Tue Oct 15 2002 - 22:00:37 EST