2 ------------------------------
4 <kernver> = version of mainline Linux kernel
5 <ckrmver> = version of CKRM
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.
13 Apply ckrm/kernel/<kernver>/ckrm-<ckrmversion>.patch to a mainline kernel
14 tree with version <kernver>.
16 If CRBCE will be used, additionally apply the following patches, in order:
17 delayacctg-<ckrmversion>.patch
18 relayfs-<ckrmversion>.patch
23 Select appropriate configuration options:
27 General Setup-->Class Based Kernel Resource Management
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
34 b. To test socket_classes and multiple accept queue controller
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
42 Device Drivers-->Networking Support-->Networking options-->
43 [*] Network packet filtering (replaces ipchains)
44 [*] IP: TCP Multiple accept queues support
46 c. To test CRBCE later (requires 2a.)
48 File Systems-->Pseudo filesystems-->
49 <M> Relayfs filesystem support
50 (enable all sub fields)
53 [*] Enable delay accounting
56 3. Build, boot into kernel
60 # insmod <patchedtree>/fs/rcfs/rcfs.ko
61 # mount -t rcfs rcfs /rcfs
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.
67 5. Load numtasks and listenaq controllers
69 # insmod <patchedtree>/kernel/ckrm/ckrm_tasks.ko
70 # insmod <patchedtree>/kernel/ckrm/ckrm_listenaq.ko