Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pci_create_slot(9) [centos man page]

PCI_CREATE_SLOT(9)						Hardware Interfaces						PCI_CREATE_SLOT(9)

NAME
pci_create_slot - create or increment refcount for physical PCI slot SYNOPSIS
struct pci_slot * pci_create_slot(struct pci_bus * parent, int slot_nr, const char * name, struct hotplug_slot * hotplug); ARGUMENTS
parent struct pci_bus of parent bridge slot_nr PCI_SLOT(pci_dev->devfn) or -1 for placeholder name user visible string presented in /sys/bus/pci/slots/<name> hotplug set if caller is hotplug driver, NULL otherwise DESCRIPTION
PCI slots have first class attributes such as address, speed, width, and a struct pci_slot is used to manage them. This interface will either return a new struct pci_slot to the caller, or if the pci_slot already exists, its refcount will be incremented. Slots are uniquely identified by a pci_bus, slot_nr tuple. There are known platforms with broken firmware that assign the same name to multiple slots. Workaround these broken platforms by renaming the slots on behalf of the caller. If firmware assigns name N to MULTIPLE SLOTS
The first slot is assigned N The second slot is assigned N-1 The third slot is assigned N-2 etc. PLACEHOLDER SLOTS
In most cases, pci_bus, slot_nr will be sufficient to uniquely identify a slot. There is one notable exception - pSeries (rpaphp), where the slot_nr cannot be determined until a device is actually inserted into the slot. In this scenario, the caller may pass -1 for slot_nr. The following semantics are imposed when the caller passes slot_nr == -1. First, we no longer check for an existing struct pci_slot, as there may be many slots with slot_nr of -1. The other change in semantics is user-visible, which is the 'address' parameter presented in sysfs will CONSIST SOLELY OF A DDDD
bb tuple, where dddd is the PCI domain of the struct pci_bus and bb is the bus number. In other words, the devfn of the 'placeholder' slot will not be displayed. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 PCI_CREATE_SLOT(9)

Check Out this Related Man Page

assign_cpu_to_pset(3)					     Library Functions Manual					     assign_cpu_to_pset(3)

NAME
assign_cpu_to_pset - Assigns a processor to a processor set LIBRARY
Pset Library (libpset.a) Mach Library (libmach.a) SYNOPSIS
#include <sys/types.h> #include <sys/processor.h> int assign_cpu_to_pset( unsigned long cpu, long pset_id , long option ); PARAMETERS
Processor or processors to assign to the specified processor set. Processor set identifier, which is returned by the create_pset function. Specifies a bit mask. Currently, only the ANY_CPU bit is supported. If this bit is set, the value specified by the cpu variable is the number of processors to be assigned to the specified processor set from the default processor set. If the ANY_CPU bit is not set, the value specified by the cpu variable is the mask of processors to be assigned to the processor set. DESCRIPTION
The assign_cpu_to_pset function removes processors from their current processor set and assigns them to the processor set specified by the pset_id variable. This function requires root privileges. If the ANY_CPU option is specified, the number of processors specified by the cpu variable are assigned from the default processor set to the processor set that is specified with the pset_id variable. If the specified number of processors are not available in the default pro- cessor set, an error is returned and no processors are assigned. If the ANY_CPU option is not set, the value specified by the cpu variable is a mask of processors to be assigned to the specified processor set. For example, if you specify a cpu value of 6, then processors 2 and 3 are assigned to the processor set. Note that processors are not required to start in slot 0 on some platforms. For example, you may see a three-processor system with proces- sors in slots 6, 7, and 8. The console assigns the master processor at power up, which is usually the processor in slot 0 if it is occu- pied. However, there is no requirement that slot 0 must be populated or that the master is the first processor on the bus. In the example of the three-processor (slots 6, 7, and 8) system, the master processor will be the one in slot 6. Processor assignments are logged in the /var/adm/wtmp file. RETURN VALUES
If the processor assignment is successful, the assign_cpu_to_pset function returns zero (0). If the assignment is unsuccessful, the func- tion returns a negative number. Use the print_pset_error function to print a message that describes the error. FILES
/var/adm/wtmp RELATED INFORMATION
bind_to_cpu(3), create_pset(3), destroy_pset(3), assign_pid_to_pset(3), print_pset_error(3), processor_sets(4), pset_create(1) delim off assign_cpu_to_pset(3)
Man Page