Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

unix_master(9r) [osf1 man page]

unix_master(9r) 														   unix_master(9r)

NAME
unix_master - General: Forces execution onto the master CPU SYNOPSIS
void unix_master( void ); ARGUMENTS
None DESCRIPTION
The unix_master routine forces execution of the kernel thread onto the master CPU (also called the boot CPU). In other words, unix_master binds the kernel thread to the master CPU. To release the kernel thread from the bind to the master CPU, call the unix_release routine. You can make recursive calls to unix_master as long as you make an equal number of calls to unix_release. The unix_master routine provides another way besides the simple and complex lock routines to make a kernel module symmetric multiprocessing (SMP) safe. Although calling unix_master is not optimal for performance on an SMP CPU, it does provide third-party kernel module writers with an easy way to make their modules SMP safe without using the lock routines. NOTES
Device drivers should not directly call the unix_master and unix_release routines. One exception to this recommendation is when you want a device driver's kernel threads to run only on the master CPU. This situation occurs when your driver creates and starts its own kernel threads and you set the d_funnel member of the associated dsent structure to the value DEV_FUNNEL. In this case, each kernel thread must call unix_master once to ensure that the kernel thread runs only on the master CPU. Remember to make a corresponding call to unix_release. CAUTIONS
To avoid deadlock, do not call the unix_master routine under the following circumstances: When holding a simple lock In the driver's inter- rupt service routine RETURN VALUES
None SEE ALSO
routines: unix_release(9r) unix_master(9r)

Check Out this Related Man Page

simple_lock_terminate(9r)												 simple_lock_terminate(9r)

NAME
simple_lock_terminate - General: Terminates, using a simple lock SYNOPSIS
#include <kern/lock.h> void simple_lock_terminate( simple_lock_t slock_ptr ); ARGUMENTS
Specifies a pointer to a simple lock structure. You can declare this simple lock structure by using the decl_simple_lock_data routine. DESCRIPTION
The simple_lock_terminate routine determines that the kernel module is done using the simple lock permanently. The kernel module must free the simple lock (that is, the kernel module does not hold the lock) before calling simple_lock_terminate. The kernel module must not refer- ence the specified simple lock after calling simple_lock_terminate. NOTES
You must call simple_lock_init (once only) prior to calling simple_lock_terminate to initialize the simple lock structure for the resource. A resource, from the kernel module's standpoint, is data that more than one kernel thread can manipulate. You can store the resource in global variables and in data structure members. RETURN VALUES
None FILES
SEE ALSO
Routines: decl_simple_lock_data(9r), simple_lock_init(9r), simple_lock_try(9r), simple_unlock(9r) Data Structures: slock(9s) simple_lock_terminate(9r)
Man Page

14 More Discussions You Might Find Interesting

1. Programming

make module for nic

Hello, Trying to solve a nic driver problem on RH linux with kernel 2.4.20-8. I seems that make it is looking in the place for the nic driver. Here is what I have tried and the result errors. Please ignore typos. modeprobe tulip /lib/modules/2.4.20-8/kernel/drivers/net/tulip/tulip.o:... (0 Replies)
Discussion started by: auji
0 Replies

2. UNIX for Dummies Questions & Answers

about make file

when u run the make file,what the make fill will call :( (4 Replies)
Discussion started by: kumar
4 Replies

3. UNIX for Advanced & Expert Users

kernel call problem

hi all I want to make a kernel call which takes as input an integer x and prints 2*x Anyone who knows how could i do that? (1 Reply)
Discussion started by: sasa
1 Replies

4. Solaris

how can i split the kernel invoction by app in sol9

Hi all, Recently, i am monitoring my Solaris 9 system and found that there are a lot of kernel invocation, "top" reports about 20% CPU usage on kernel, during the period. But i am not sure how i can find out which application costs the most kernel functions and the proportion. Such... (2 Replies)
Discussion started by: sleepy_11
2 Replies

5. Linux

Compile new kernel in Fedora 5

Hi All, I try to compile new kernel in FC5. New kernel version - 2.6.20.21 Operating System - Fedora 5 I have followed these steps, make menuconfig make make modules make modules_install make install Then i have changed the grub.cong and reboot the system with new kernel. The... (0 Replies)
Discussion started by: viveksnv
0 Replies

6. UNIX for Advanced & Expert Users

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... (0 Replies)
Discussion started by: marcintom
0 Replies

7. HP-UX

Bad performance but Low CPU loading?

There might be some problem with my server, because every morning at 7, it's performance become bad with no DB extra deadlock. But I just couldn't figure it out. Please give me some advise, thanks a lot... According to the CPU performace chart, Daily CPU loading Maximum: 42 %, Average:36%. ... (8 Replies)
Discussion started by: GreenShery
8 Replies

8. Solaris

Difference between CPU CHIP and CPU ID

Hi All, What is the difference between CPU CHIP and CUP ID on SUN/ Oracle M5000 servers.. Thanks in advance (3 Replies)
Discussion started by: kumarmani
3 Replies

9. Programming

HELP!!: CPU resource allocation between kernel modules and user mode process

Hi,all: I run my program which consists of one kernel module and one user mode process on a dual core server. The problem here is the kernel module consumes 100% of one core while the user mode process only consumes 10% of the other core, is there any solution that I can assign some computing... (1 Reply)
Discussion started by: neyshule
1 Replies

10. UNIX for Dummies Questions & Answers

Error while compiling the kernel 3.3.1.

Hi I m using redhat 6 with kernel release 2.6.32-71.el6.i686 I have downloaded latest kernel 3.3.1 from kernel.org . when i run make module_install i get below error. # make modules_install /usr/src/kernels/linux-3.3.1/scripts/depmod.sh: line 37: 11314 Killed ... (0 Replies)
Discussion started by: pinga123
0 Replies

11. Linux

Is it possible to insert compile module after compiled "make" without installing

Hi gud day, I would like to ask if possible to load the driver i compiled module without installing it in the ubuntu-kernel-distro/updates* or simple not executing "make install". what i mean is i compile the compat wireless driver using make and i want to try to load on the system without... (1 Reply)
Discussion started by: jao_madn
1 Replies

12. Red Hat

Kcryptd - Which kernel supports MultiThread

I am currently have Centos 5.5 which consumes more CPU waiting for Kcrypt process. Later came to know that kcrypt is single threaded and hence consumes one CPU, results in performance degradation. Does any one really knows/practically experimented multithread of Kcryptd process with any of... (1 Reply)
Discussion started by: ragavendraganes
1 Replies

13. Infrastructure Monitoring

CPU - Interrupts distribution

Hi Gurus, I have a situation runing my ETL tools on the below server. The throughput while processing data is coming very low. When i tried to analyse the CPU stats i got colleceted the mpstat. Server Physical Host Name *********com IP**.***.** OS Type Linux OS Classlinux red hat... (3 Replies)
Discussion started by: r_t_1601
3 Replies

14. AIX

CPU performance

In my oracle db server we have 15 cores (power8). The output of the vmstat is as below. System configuration: lcpu=128 mem=208800MB ent=16.00 kthr memory page faults cpu time -----------... (18 Replies)
Discussion started by: powerAIX
18 Replies