Added some debug printk's for shares_write problems that Steve is seeing
[linux-2.6.git] / Documentation / ckrm / installation
1 Kernel installation
2 ------------------------------
3
4 <kernver> = version of mainline Linux kernel
5 <ckrmver> = version of CKRM
6
7 Note: It is expected that CKRM versions will change fairly rapidly. Hence once
8 a CKRM version has been released for some <kernver>, it will only be made
9 available for future <kernver>'s until the next CKRM version is released. 
10
11 1. Patch 
12
13     Apply ckrm/kernel/<kernver>/ckrm-<ckrmversion>.patch to a mainline kernel
14     tree with version <kernver>. 
15
16     If CRBCE will be used, additionally apply the following patches, in order: 
17        delayacctg-<ckrmversion>.patch 
18        relayfs-<ckrmversion>.patch
19     
20  
21 2. Configure
22
23 Select appropriate configuration options:
24
25 a. for taskclasses 
26
27    General Setup-->Class Based Kernel Resource Management
28
29    [*] Class Based Kernel Resource Management
30    <M> Resource Class File System (User API)
31    [*]   Class Manager for Task Groups  
32    <M>     Number of Tasks Resource Manager
33
34 b. To test socket_classes and multiple accept queue controller 
35
36    General Setup-->Class Based Kernel Resource Management
37    [*] Class Based Kernel Resource Management
38    <M> Resource Class File System (User API)
39    [*]   Class Manager for socket groups
40    <M>     Multiple Accept Queues Resource Manager    
41    
42    Device Drivers-->Networking Support-->Networking options-->
43    [*] Network packet filtering (replaces ipchains)  
44    [*] IP: TCP Multiple accept queues support
45
46 c. To test CRBCE later (requires 2a.)
47
48    File Systems-->Pseudo filesystems-->
49    <M> Relayfs filesystem support 
50    (enable all sub fields)
51    
52    General Setup-->
53    [*] Enable delay accounting
54    
55
56 3. Build, boot into kernel
57
58 4. Enable rcfs
59
60     # insmod <patchedtree>/fs/rcfs/rcfs.ko
61     # mount -t rcfs rcfs /rcfs
62  
63     This will create the directories /rcfs/taskclass and
64     /rcfs/socketclass which are the "roots" of subtrees for creating
65     taskclasses and socketclasses respectively.
66         
67 5. Load numtasks and listenaq controllers
68
69     # insmod <patchedtree>/kernel/ckrm/ckrm_tasks.ko
70     # insmod <patchedtree>/kernel/ckrm/ckrm_listenaq.ko