Passing socket struct between kernel threads - module programming
I write kernel module with kernel threads using
linux/kthread.h on 2.6.* kernel
I tried to passing data between two kernel threads
with data argument of kthread_run( fun, data , NAME );
but this is not work I dont know why. I tried many possibility
and nothing works.
So I thought that maybe something like this will work
but not.
Iam sure that fun1 thread was executed before fun2, I used semaphores ( actually completion mechanism ).
Hi Everyone!
How can we make a socket() system call from a linux module executing in kernel space?
If any one knows, kindly tell me. It will be great.
I want to use the socket interface in linux kernel space for sending raw packets over the network.
Hamayun (0 Replies)
Hi All,
Is there a max number of slabs that can be used per kernel module? I'm having a tough time finding out that kind of information, but the array 'node_zonelists' (mmzone.h) has a size of 5. I just want to avoid buffer overruns and other bad stuff.
Cheers,
Brendan (4 Replies)
Hi all,
I am working on USB data monitoring on Fedora Core 9. Kernel 2.6.25 has a built-in module (the one that isn't loadable, but compiles and links statically with the kernel during compilation) to snoop USB data. It is in <kernel_source_code>/drivers/usb/mon/.
I need to know if I can... (0 Replies)
hi masters,
I am new to kernel programming and learning its trade. I am writing a module for lan bandwidth manager. I designed one module successfully for 2.4 kernel . But when I tried to upgrade it for 2.6 kernel I found that struct tq_struct is missing . Is there any suitable replacement for... (0 Replies)
EDIT: Nevermind, called a friend who is good at this stuff and he figured it out :D
Hi all,
So I'm trying to teach myself to write programs for unix in c. I am currently creating a program, and I need to pass a struct through a pipe, but I can't figure out how.
The struct I want to pass... (0 Replies)
Hi, i'm trying to copy a struct into a binary file using the unix instruction write, so i declare and fill the struct "superbloque" in one function "initSB" and then i pass the pointer to another function called bwrite (for block write) which calls write. The problem is that i call the function... (2 Replies)
Hi,
1)i wrote a program which acts lik a client gateway serving clients request and sending probe msg`s to server to chech if its active..
2)both moduels interact when run independently my problem is that when i tr to run them as two different threads in a single program(client_gateway prog to... (4 Replies)
hi there
so, i was given an assignment: implement a linux system call that blocks all packets that are sent to a given IP (i have to do it without using iptables)
i'm really new to kernel programming btw (and i'm enjoying it a lot)
so, my syscall is called ip_block() and receives a... (1 Reply)
Hi all!
I am trying to register a device in an existing device class, but I am
having trouble getting the pointer to an existing class.
I can create a class in a module, get the pointer to it and then use
it to register the device with:
*cl = class_create(THIS_MODULE, className);... (0 Replies)
Hi everyone,
I am trying to prevent the ehci_hcd kernel module to load at boot time.
Here's what I've tried so far:
1) Add the following line to /etc/modprobe.d/blacklist.conf (as suggested here):
2) Blacklisted the module by adding the following string to
3) Tried to blacklist the module... (0 Replies)
Discussion started by: gacanepa
0 Replies
LEARN ABOUT HPUX
max_thread_proc
max_thread_proc(5) File Formats Manual max_thread_proc(5)NAME
max_thread_proc - defines the maximum number of concurrent threads allowed per process.
VALUES
Failsafe
Default
Allowed values
Recommended values
DESCRIPTION
is a dynamic tunable that limits the maximum number of threads allowed per process on the system. When tuning the maximum number of
threads allowed per process will be the new value of No process will be able to create new threads such that the total count of its threads
exceeds
Who is Expected to Change This Tunable?
System administrators that run applications on their systems requiring a high number of threads per process.
Restrictions on Changing
The effect of tuning on existing processes is undefined. However, existing threads will not be effected.
When Should the Value of This Tunable Be Raised?
The value of should be raised if there is a need to run an application that requires a higher number of threads per process than what is
currently set to accommodate. Also, if thread creation fails with the value of then it could indicate that the has been reached. However,
reaching is not the only reason why a thread creation could fail with may be returned if the system tunable has been reached or memory on
the system is exhausted.
What Are the Side Effects of Raising the Value?
A group of processes may be able to exhaust the system wide limit of threads on the system.
When Should the Value of This Tunable Be Lowered?
If you feel that it is necessary to limit the number of threads allowed per process.
What Are the Side Effects of Lowering the Value?
Some applications which need a high number of threads may behave differently or fail to operate.
What Other Tunable Values Should Be Changed at the Same Time?
You may want to look at the value of
WARNINGS
All HP-UX kernel tunable parameters are release specific. This parameter may be removed or have its meaning changed in future releases of
HP-UX.
Installation of optional kernel software, from HP or other vendors, may cause changes to tunable parameter values. After installation,
some tunable parameters may no longer be at the default or recommended values. For information about the effects of installation on tun-
able values, consult the documentation for the kernel software being installed. For information about optional kernel software that was
factory installed on your system, see at
AUTHOR
was developed by HP.
SEE ALSO nkthread(5).
Tunable Kernel Parameters max_thread_proc(5)