README_OSD revision 1.1 1
2 -------------------------
3 Installing the OSD System
4 -------------------------
5
6 1. Build kernel version 2.4 w/ SMP mode disabled and make sure the
7 directory /usr/src/linux points to this build.
8 2. Modify initiator.h and initiator.c (as per the README) to point to
9 your intended target.
10 3. Run 'make osd' to build all the OSD executables. In particular,
11 you need uosd, so.o, intel_iscsi.o and osdfs.o.
12 4. Run 'make all' to build the remaining executables.
13 5. Select a machine as the target and run "uosd -f" as root on this
14 machine. This will create files and directories in /tmp.
15
16 ----------------------
17 Testing the OSD System
18 ----------------------
19
20 6. Run utest to make sure the target is working OK.
21 7. Do an "insmod ./so.o" to install the Linux SCSI upper layer driver for OSD.
22 8. Do an "insmod ./intel_iscsi.o" to install the kernel mode iSCSI initiator.
23 9. Do an "insmod ./osdfs.o" to install the file system.
24 10. Make the OSD device with "mknod /dev/so0 b 232 0".
25 11. Do a "mount -t osdfs /dev/so0 /mnt" to mount the filesystem.
26 12. Go to /mnt and run "echo Hello, World! > foo" to create an object
27 on the OSD.
28 13. Do a "cat foo" to read the object. you should see "Hello, world!"
29
30 From here you should be able to use /mnt as you would any filesystem.
31
32 --------------------
33 2.4.18 Modifications
34 --------------------
35
36 include/scsi/scsi.h:143
37 #define TYPE_OSD 0x0e
38
39 drivers/scsi/scsi.h:92:
40 #define MAX_SCSI_DEVICE_CODE 15
41
42 drivers/scsi/scsi.h:354:
43 #define MAX_COMMAND_SIZE 256
44
45 drivers/scsi/scsi.c:145:
46 "OSD ",
47
48 drivers/scsi/scsi_dma.c:248:
49 SDpnt->type == TYPE_DISK || SDpnt->type == TYPE_MOD || SDpnt->type == TYPE_OSD) {
50
51 drivers/scsi/scsi_scan.c:644:
52 case TYPE_OSD:
53
54 ----------
55 Hints/Tips
56 ----------
57
58 -Field testing on some workstations resulted in compiling errors if highmem support in the kernel as enabled
59