MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / createSysDev

Function createSysDev

source/kernel/sys/sysdev.cpp:23–45  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

21#include "kstat.h"
22
23std::shared_ptr<FsNode> createSysDev(const std::shared_ptr<FsNode> sysNode) {
24 std::shared_ptr<FsNode> devNode = sysNode->getChildByName(B("dev"));
25 if (!devNode) {
26 devNode = Fs::addFileNode(B("/sys/dev"), B(""), B(""), true, sysNode);
27 }
28
29 std::shared_ptr<FsNode> blockNode = devNode->getChildByName(B("block"));
30 if (!blockNode) {
31 blockNode = Fs::addFileNode(B("/sys/dev/block"), B(""), B(""), true, devNode);
32 }
33
34 Fs::addDynamicLinkFile(B("/sys/dev/block/8:0"), k_mdev(0, 0), blockNode, false, B("../../devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda"));
35 Fs::addDynamicLinkFile(B("/sys/dev/block/8:1"), k_mdev(0, 0), blockNode, false, B("../../devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda/sda1"));
36
37 std::shared_ptr<FsNode> charNode = devNode->getChildByName(B("char"));
38 if (!charNode) {
39 charNode = Fs::addFileNode(B("/sys/dev/char"), B(""), B(""), true, devNode);
40 }
41 Fs::addDynamicLinkFile(B("/sys/dev/char/189:0"), k_mdev(0, 0), charNode, false, B("../../devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb1"));
42 Fs::addDynamicLinkFile(B("/sys/dev/char/189:1"), k_mdev(0, 0), charNode, false, B("../../devices/pci0000:00/0000:00:11.0/0000:02:00.0/usb1/1-1"));
43
44 return devNode;
45}

Callers 1

createSysfsFunction · 0.85

Calls 2

BFunction · 0.85
getChildByNameMethod · 0.80

Tested by

no test coverage detected