Filename: tuxstor-milestones-v2.txt Date: Thursday, August 20, 2009 Document: Version 2 This document convers the development, unit tests, integration points as well as the final system integration for the TuxStor Linux project on Cougar Hardware. Included are the completed tasks on TuxRx Linux (SSC and TxRx running Linux) as well as the news tasks identified to convert the File Processor(FP) file system code and storage backend to Linux. The tasks identifed below are not in strict priority/chronological order however they are probably close. ================================ S U M M A R Y ===================================== 1.0 Linux Kernel, Mgmt-Bus, NetEEE protocol on SSC/TuxRx and RCON functions ESTIMATE: 4 Weeks ASSIGNED PERSON: William Fisher and Andy Sharp STATUS: COMPLETE 2.0 Support core dumps under TxRx Linux ESTIMATE: 3 Weeks ASSIGNED PERSON: Rendell Fong STATUS: TuxRx Linux/EEE Hybrid COMPLETE 3.0 Support kgdb/gdb debugging ESTIMATE: 3 Weeks ASSIGNED PERSON: Rendell Fong STATUS: COMPLETE 4.0 Develop/Test Control packet ops between SSC and TxRx Linux ESTIMATE: 7 Weeks ASSIGNED PERSON: William Fisher STATUS: COMPLETE 5.0 Integration Testing Control Packet forwarding between SSC and TxRx Linux ESTIMATE: 2 Weeks ASSIGNED PERSON: William Fisher STATUS: COMPLETE 6.0 Develop/Test/Integrate SSC/TuxRx daemons into TuxStor Linux Including Virtual Server, Configuration DBMS and other back-side TuxStor Linux daemons ESTIMATE: 10 Weeks ASSIGNED PERSON: Rendell Fong and Andy Sharp STATUS: In-Progress 7.0 Compile/link ACPU NFS/CIFS/NETBIOS into Linux modules ESTIMATE: 12 Weeks ASSIGNED PERSON: Andy Sharp STATUS: In-Progress 8.0 Get TuxRx software into Perforce and perform nightly builds ESTIMATE: 1 Week ASSIGNED PERSON: Larry Sheer, Andy Sharp and William Fisher STATUS: NOT_STARTED 9.0 Integrate NFS/CIFS/NETBIOS modules, ACPU polling & Pkt forwarding ESTIMATE: 1 Week ASSIGNED PERSON: Andy Sharp and William Fisher STATUS: NOT_STARTED 10.0 Develop/Integrate/Test PROM changes for 8-Way Cougar ESTIMATE: 1 Week ASSIGNED PERSON: Andy Sharp and Brian Stark STATUS: NOT_STARTED 11.0 Identify Linux kernel PCI initialization changes for FP hardware ESTIMATE: 2 Days ASSIGNED PERSON: Andy Sharp STATUS: NOT_STARTED 12.0 Linux kernel booting on 8-way Cougar hardware ESTIMATE: 1 Week ASSIGNED PERSON: Andy Sharp STATUS: NOT_STARTED 13.0 Linux core dumps and debugger support on TuxStor Linux ESTIMATE: 3 Weeks ASSIGNED PERSON: Rendell Fong STATUS: NOT_STARTED 14.0 Develop NFS/CIFS/NETBIOS Listener daemons on TuxStor Linux ESTIMATE: 1 Week ASSIGNED PERSON: William Fisher STATUS: NOT_STARTED 15.0 Convert CIFS/NFS/NETBIOS and FP code to Linux Networking ESTIMATE: 2 Weeks ASSIGNED PERSON: William Fisher STATUS: NOT_STARTED 16.0 Integration testing of Data Plane networking between SSC and TuxStor Linux ESTIMATE: 2 Weeks ASSIGNED PERSON: William Fisher STATUS: NOT_STARTED 17.0 Integration testing of Control and Data Plane networking between SSC and TuxStor Linux ESTIMATE: 1 Week ASSIGNED PERSON: William Fisher STATUS: NOT_STARTED 18.0 Design/Implement/Test fs_threads and events for TuxStor Linux ESTIMATE: 2 Weeks ASSIGNED PERSON: Maxim Kozlovsky STATUS: NOT_STARTED 19.0 Compile/Link FP filesystem and support code to TuxStor Linux ESTIMATE: 3 Weeks ASSIGNED PERSON: Maxim Kozlovsky and two FS developers STATUS: NOT_STARTED 20.0 Integrate NETBIOS/CIFS/NFS, FileSystems, networking, SSC daemons, TxRx Daemons under TuxStor Linux ESTIMATE: 2 Weeks ASSIGNED PERSON: Andy Sharp, Rendell Fong, Maxim Kozlovsky, William Fisher STATUS: NOT_STARTED 21.0 nfsperftest NETBIOS/CIFS/NFS, daemons, file system(FP) WITHOUT NETWORKING ESTIMATE: 3 Weeks ASSIGNED PERSON: Andy Sharp, Maxim Kozlovsky STATUS: NOT_STARTED 22.0 Integrate/Test NETBIOS/CIFS/NFS, Daemons, File system(FP) WITH NETWORKING ESTIMATE: 3 Weeks ASSIGNED PERSON: Maxim Kozlovsky, William Fisher and Andy Sharp STATUS: NOT_STARTED 23.0 RMC Protocol based test automation unit and system testing of entire system ESTIMATE: 2 Weeks ASSIGNED PERSON: Jan Seidel STATUS: NOT_STARTED 24.0 Test DMIP using a fully integrated set of software. ESTIMATE: 1 Week ASSIGNED PERSON: QA Person STATUS: NOT_STARTED ASSIGNMENTS SUMMARY: William Fisher 8,9,14,15,16,17,20,22 Rendell Fong 6,13,20,21 Maxim Kozlovsky 18,19,20,21 Jan Seidel 23 Andy Sharp 6,7,8,9,10,11,20,21 Larry Sheer 8 FS Developer1 19,20,21 FS Developer2 19,20,21 QA Tester 24 ================================ D E T A I L ===================================== 1.0 Linux Kernel, Mgmt-Bus, NetEEE protocol on SSC and TuxRx and RCON Functionality ------------ This milestone covers the tasks resulting in running Linux kernels on both the SSC and TuxRx sending/receiving messages via the mgmt-bus driver and protocol modules. In addition basic IP support and NFS communication between the SSC and TuxRx are supported. 1.1 Stock 2.6.22 Linux ported onto the TxRx Sibyte 1480 socket on Cougar Port the Linux 2.6.22 from SSC on TxRx cores. This should be a direct task on the order of a week. ASSIGNED PERSON: Andy Sharp ESTIMATE: 1 Week STATUS: DONE; Delayed by xem escalations, Linux 2.6.22 SMP booted on Cougar hardware, dying due to watchdog timeout; 11/20/2008; Watchdog timeout solved, 11/25/2008. 1.2 Port SSC Linux mgmt-bus network driver and NET_EEE module onto TuxRx Linux. ASSIGNED PERSON: William Fisher ESTIMATE: 2 Days STATUS: DONE mgmt_bus.c driver and neteee.c changes coded and compiled for both SSC and TxRx. Actual time was 5 days 1.3 Code extensions to the mgmt-bus driver to handle IP packets on TxRx to/from SSC. This allows the PPP mgmt bus link between TuxRx and SSC to support NetEEE, TCP/IP and NFS packets. ASSIGNED PERSON: William Fisher ESTIMATE: 3 Days STATUS: DONE mgmt_bus.c changes coded and compiled, Actual time was 2 days 1.4 Code test program to exercise mgmt-bus driver and neteee module between SSC to/from TxRx. This exercises the PPP mgmt bus link between SSC and TxRx to support NetEEE packets. ASSIGNED PERSON: William Fisher ESTIMATE: 3 Days STATUS: DONE neteee-msgtest.c coded and compiled, Actual time was 2 days 1.5 Debug and test NetEEE between SSC and TuxRx Linux'es using mgmt-bus PCI memory driver and NetEEE protocol module. This validates proper working of mailbox interrupts, device driver and protocol module on both ends. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: DONE 1.6 TuxRx IP packet forwarding to/from the SSC from it's networking interfaces, using kernel packet forwarding functions. This entails debugging the IP over mgmtbus code and using stock IP packets over link. The mgmtbus device currently supports the SIOCSIFADDR/SIOCDIFADDR ioctl's for IP address'es on the SSC today. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: DONE 1.7 Test and debug TuxRx NFS Linux Client remote mounting SSC's Compact Flash resident along with reading/writing files using NFS, etc. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: NOT_STARTED, SHELVED 1.8 Adapt and test RCON functionality under SSC to TXRX and to FP ASSIGNED PERSON: William Fisher ESTIMATE: 10 Days STATUS: DONE for both SSC <-> TXRX and SSC <-> FP cases 1.9 Linux 2.6.26 executing on only 3 of 4 Sibyte MIPS Cores This task covers restricting the Linux kernel to run on a subset of the processors and adjusting the hardware discovery/assignment changes if required. This also includes using the NFS/CIFS module(s) as the test cases. ASSIGNED PERSON: Andy Sharp ESTIMATE: 1 Week STATUS: DONE 2.0 Support core dumps under Linux ------------ Adding Linux kernel support to get kernel core dumps onto the management volume supported by the FP. The initial thinking was to adapt the EEE code to the Linux kernel. The new changes require writing the coredump info to the core volume, which can't be fully tested until the core volume can be recognized (via discovery) and accessed via the modified coredump code. A major poriton of the code has been ported to generate the coredump file, but there's a bunch more (the coredump thread) that needs to be examined. This thread interacts with the cluster db, evm and the scsi layer. It is responsible for initiating the scsi writes to be core volume during the crash and then the copy of core volume data to the mgmt volume upon system re-init. This feature can't be fully tested until well after the system can be brought up with vsvrs and volumes enabled. In addition, we need to determine if esm state info so that can be included in the coredump file as well. In the mean time, we will have to live with coredumps files generated strictly for non-fatal kernel crashes saved in the root filesystem in /var/crash. ASSIGNED PERSON: Rendell Fong ESTIMATE: 3 Weeks STATUS: DONE 3.0 Support kgdb/gdb debugging ------------ 3.1 Obtain a working kgdb debugger for development. Support the three scenario's for compatability with existing debugging support under gdb under EEE. These particular scenario's that exist today that must be supported include: a) Attaching gdb to a crashed kernel instance under TxRx and FP. b) Single step debugging using and instance under gdb on another Linux system and connecting via RCON to the remote system inside the box. c) Debugging via RCON from the SSC Linux system to allow the existing embedded shells to be work under the exception handler or equivalent to the hard polling loop task under EEE. ASSIGNED PERSON: Rendell Fong ESTIMATE: 10 Days STATUS: DONE 4.0 Develop/Test Control packet ops between SSC and TxRx Linux Instances ------------ 4.1 Add Linux support for EEE memory layout for memory regions, used by shared IPC queue's and SKB Slab allocation from specific pages. The changes includes the zone, pglist and header files and the code changes to exploit assign and use these memory regions. These include Linux changes for Shared Memory, IPC Queues and SKB allocation The EEE's virtual address assignments are: 0x01 E000 0000 Shared Memory Hole => RETAINED, skb's and buffers 0x01 F800 0000 Shared Memory Hole Ending Address, Starting at 8GB, 400MB hole 0x10 0000 0000 malloc Region => DEPRECIATED, Use Linux slab allocator 0x20 0000 0000 txrx Region => DEPRECIATED, Use Linux slab allocator 0x30 0000 0000 SAC Region => DEPRECIATED, Use Linux slab allocator 0x40 0000 0000 FP Region => DEPRECIATED, node centric allocation required. 0x50 0000 0000 Thread Stack Region => DEPRECIATED, Use Linux slab allocator 0x60 0000 0000 TxRx Cache Region => DEPRECIATED, Use Linux slab allocator 0x70 0000 0000 FP Cache Region => DEPRECIATED, Use Linux slab allocator ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: DONE 4.2 Port EEE IPC message queue code to Linux kernel. Code in particular is: sm-eee/{eee-msgs..c,eee-ipc.[hc],eee-rq.[hc],eee-test.[hc],eee-init.c} ASSIGNED PERSON: William Fisher ESTIMATE: 10 Days STATUS: DONE 4.3 Port EEE Packet Queue code and test programs to Linux kernel. sm-pkt/{pkt-queue-api.c, pkt-queue-api.h, pkt-queue-struct.h, pkt-utils.c, pkt-queue-test.c} There are some design issues remaining in several areas, including memory waiting, connection queue'ing in certain cases, various copy and flattenming procedures which use eee_desc and pkt_desc which need examination. ASSIGNED PERSON: William Fisher ESTIMATE: 10 Days STATUS: Ported pkt-queue-api.c, pkt-queue-api.h, pkt-queue-struct.h to Linux and maintain queue format's with pkt_desc embedded in skb's. STATUS: DONE 4.4 Create new RCON PacketQueue unit test code since current code has EEE(OS) dependencies. ASSIGNED PERSON: William Fisher ESTIMATE: 10 Days STATUS: NOT_STARTED 4.5 Extend Linux skb's to contain pkt_desc's. To avoid a wholesale rewrite of the pkt-queue code, which is a huge task, the pkt_desc has been embedded inside the skb and conversion procedures written to initialize it when needed. This avoids copying the data in favor of updating the various buffer pointers, lengths, flags, etc. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: DONE 4.6 Linux kernel Slab/Zone/Page changes for SKB Allocation This task includes modifying kernel slab allocator to obtain memory from the shared memory region when so designated by state flags. The changes will co-exist with standard Linux kernel memory allocation policies but use shared memory areas for IPC Queue's and skb's. The changes include adding add new status flags, creating a new ZONE_SHAREDMEM and changing the slab allocator to use the new zone and special page region. These changes support the IPC and zero-copy networking and file system operations between NCPU, ACPU and FP cores. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: 50% Complete, SHELVED DUE to TuxStor Linux direction Determined kernel changes to header files and code to "insert" a new "zone", ZONE_SHAREDMEM, in the contig_page_data structure. Identified slab allocator changes. 5.0 Integration Testing Control Packet forwarding between SSC and TxRx Linux -------- 5.1 Extend rcon shell "simple_test program to run non-fragmented packet traffic datagrams between SSC <-> TxRx (NCPU and ACPU). This tests EEE datagram packet forwarding from ACPU to/from SSC as well as SSC to/from either the NCPU and ACPU code. The test program was a rewrite of "simple_test" and an adaption of the neteee-msgtest program written to exercise the EEE protocol code. This tests local_queueA operations done by the ACPU polling code and callout functions. SSC <-> TXRX(NCPU/ACPU) Linux forwarding of EEE non-fragmented packets working. ASSIGNED PERSON: William Fisher ESTIMATE: 10 Days STATUS: DONE 5.2 Extend RCON shell 'simple_test' program running under on TxRx, so fragmented EEE packets can be send/received between SSC <-> TxRx. The test will verify large mesages requiring fragmentation of EEE datagram packets are done corrrectly and can send to/from ACPU and can receive to/from SSC and vice-versa. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: DONE 5.3 Integrate new Linux EEE forwarding code into GIT tree This supports sending/receiving EEE messages between SSC, ACPU, NCPU and FP cores. The new Linux EEE packet forwarding code, copies the data between edesc and skb's when communicating with the SSC. ASSIGNED PERSON: William Fisher ESTIMATE: 5Days STATUS: Done 5.4 Test direct IPC messaging between the SSC and FP using previous TxRx forwarding code described previously. The test program will modify the TXRX simple_test and simple_fragment code under the FP RCON shell to test these other data paths. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: NOT_STARTED 6.0 SSC/TuxRx Deamons, Virtual Server and Configuration DBMS Support ------------ 6.1 The stock SSC deamons, of which there are 6 are to be retained HOWEVER the TXRX Linux side equivalents must be developed via modifications of the existing EEE code or some hybrid development scheme. The goal is to receive and handle all the various messages sent specific to TXRX. The six SSC daemons include: 1) spm => Path discovery 2) sdm => Device Discovery 3) eva => Auto grow support 4) scccc => GUI to CLI glue support 5) vsd => cli to eee support/glue 6) ipad => cli to txrx network 7) vtmd => vsvn failure 8) cluster-daemon => Cluster DBMS There are NOT 1-1 requirements on TXRX however the two immediate ones required are the Cluster DBMS and the Virtual server. These tasks cover obtaining two major services running on the SSC communicating to TuxRx via it's counter parts. The two services are Virtual Server supporting messages described in sm-ipm/ipm.h and the Cluster DBMS Configuration service. 6.1 Develop TuxRx user level daemon and netfilter functions to implement all Virtual Server messages to/from the SSC. The message types are contained in the header file sm-ipm/ipm.h. The daemon implements the virtual server functions via appropriate network IOCTL's and using a netlink socket to setup netfilter functionalty. ASSIGNED PERSON: Rendell Fong STATUS: Started ESTIMATE: 10 Days 6.2 Develop SSC IPM test program communicating with TuxRx Virtual Server daemon by sending/receiving IPM messages between SSC and TxRx Linux. ASSIGNED PERSON: Rendell Fong STATUS: Started STATUS: Coded basic vsvr-msgtest.c program as starting SSC test program. William Fisher, 4 Days. ESTIMATE: 10 Days 6.3 Develop SSC IPM test program communicating with TuxRx Virtual Server daemon by sending/receiving IPM messages between SSC and TxRx Linux. ASSIGNED PERSON: Rendell Fong STATUS: Started STATUS: Coded basic vsvr-msgtest.c program as starting SSC test program. William Fisher, 4 Days. ESTIMATE: 10 Days 6.4 Test TuxRx code using working SSC Virtual Server. This covers testing all Virtual Server messages and ensuring correct implementation semantics. ASSIGNED PERSON: Rendell Fong STATUS: NOT_STARTED ESTIMATE: 10 Days 6.5 Virtual Server hooks into the sm-tpl and sm-pkt(requestQueue) code need to be designed and implemented. All TXRX <-> FP IPC messages contain and pass the Virtual Server ID (vsid) around. Under the BSD Protocol stack this was used to get the correct vstack instance setup. ASSIGNED PERSON: Andy Sharp ESTIMATE: TBD STATUS: NOT_STARTED 6.6 Develop TuxRx user level daemon to receive/send configuration messages sent by SSC running configuration DBMS. This user level daemon will supports the communication between SSC and TuxRx for all configuration specific message types. ASSIGNED PERSON: Andy Sharp ESTIMATE: TBD STATUS: NOT_STARTED 6.7 Develop SSC test program communicating with TuxRx Configuration daemon by sending/receiving IPM messages. Fisher coded a basic vs-mid-msgtest.c program as one SSC test program containing all the message passed between the SSC and TXRX daemon. ASSIGNED PERSON: Andy Sharp ESTIMATE: 1 Week STATUS: NOT_STARTED 6.8 Test TuxRx for Configuration Service using configuration DBMS on SSC. ASSIGNED PERSON: Andy Sharp ESTIMATE: 1 Week STATUS: NOT_STARTED 7.0 Compile/link ACPU NFS/CIFS/NETBIOS into Linux modules ------------ 7.1 Port, compile and link into a Linux kernel module the ACPU NFS/CIFS/NETBIOS and supporting software under Linux. This module runs on a dedicated core under TxRx Linux. The code uses the basic ACPU polling functions running today and services the IPC queue's and the local_QueueA control queue. This has turned out to be a very large job due to a number of reasons. They include code size, code condition on old GNU compiler lackness, header file dependencies on the EEE world, the old Makefile assumptions and general compilation problems encountered. The bulk of the problems were in the NFS code. ASSIGNED PERSON: Andy Sharp ESTIMATE: 12 Weeks STATUS: In-Progress 8.0 Get TuxRx software into Perforce and perform nightly builds ------------ 8.1 TXRX kernels are under GIT tree's 8.2 nfx_tree is under Perforce branch ASSIGNED PERSON: Larry Sheen, Andy Sharp and William Fisher ESTIMATE: 1 Week STATUS: NOT_STARTED 9.0 Integrate NFS/CIFS/NETBIOS into ACPU polling code with pkt forwarding. ------------ ASSIGNED PERSON: Andy Sharp and William Fisher ESTIMATE: 1 Week STATUS: NOT-Started 10.0 PROM changes to configure Cougar HW as 8-Way on booting ------------ 10.1 Add initialization of FP PCI specific devices FC, etc. 10.2 SSC configured in Host node and TXRX and FP in device mode verify that this is ok, going forward. 10.3 Remove mgmtbus PCI window from FP ASSIGNED PERSON: Andy Sharp ESTIMATE: 1 Week STATUS: NOT-Started 11.0 Identify Linux kernel PCI initialization changes for FP hardware ------------ 11.1 SSC configured in PCI Host node and TXRX and FP in PCI device mode, verify this is ok, going forward. 11.2 ispfc initialization 11.3 Support for PROM upgrade from SSC, is this needed for the product? ASSIGNED PERSON: Andy Sharp ESTIMATE: 2 Days STATUS: NOT-Started 12.0 Linux kernel booting on 8-way MIPS Cougar ------------ 12.1 Co-existance of FC EEE device driver(FP) under Linux 12.2 Support for CPU_PRIVATE support similar to EEE useage ASSIGNED PERSON: Andy Sharp ESTIMATE: 1 Week STATUS: NOT-Started 13.0 Linux core dumps and debugger support on 8-way MIPS Cougar ------------ 13.1 Extend core dump support to write to management volumes Adding Linux kernel support to get kernel core dumps onto the management volume supported by the FP. 13.2 Extend/adapt EEE exception handler and core shutdown to Linux 13.3 Extend kgdb/gdb debugging support to 8-Way Take the curring working kgdb debugger and extend to: Support the three scenario's for compatability with existing debugging support under gdb under EEE. These particular scenario's that exist today that must be supported. These include: a) Attaching gdb to a crashed kernel instance with the unified TxRx/FP kernel b) Single step debugging using and instance under gdb on another Linux system and connecting via RCON AND the serial debug port to the remote system. c) Debugging via RCON from the SSC Linux system to allow the existing embedded shells to be work under the Linux exception handler. ASSIGNED PERSON: Rendell Fong ESTIMATE: 3 Weeks STATUS: NOT_STARTED 14.0 Develop NFS/CIFS/NETBIOS Listener daemons on TuxStor Linux ------------ Develop FP related CIFS, NFS and NetBIOS packet Listener code to send/receive data packets to/from FP and to/from TXRX. The creation of the NFS, CIFS and NETBIOS "Listener" daemons exist FP now will run under the Linux framework. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: NOT_STARTED 15.0 Convert CIFS/NFS/NETBIOS and FP code to Linux Networking ------------ 15.1 Convert CIFS/NFS/NETBIOS to use Linux socket operations. The TPL operations need conversion and the basic thread of control between Linux softIRQ and the NAS filer threads needs to be determined in detail. 15.2 Code skb/pkt-desc handoff to pkt_queue mgr using Linux socket agent procedure framework. 15.3 Polling/Select-like interrogation of active network connections 15.4 Add TCP/IP socket support to FP code to initiate connections, terminate and interrogate connections. The EEE stack had a couple of extensions to terminate ALL sockets associated with a mounted volume, parent-child relationships applied o network sockets This task designs and implements the Linux networking stack changes to implement this. ASSIGNED PERSON: William Fisher ESTIMATE: 3 Weeks STATUS: NOT_STARTED 16.0 Integration testing of data networking traffic between SSC and TuxStor (NCPU/ACPU/FP) Linux ------------ 16.1 Develop, test and verify the NCPU/ACPU to FP messaging is working properly for both control and data packets. 16.2 Verify FP properly release's pkt_desc/skb's and buffers properly ASSIGNED PERSON: William Fisher ESTIMATE: 2 Weeks STATUS: NOT_STARTED 17.0 Integration testing Control and Data network traffic between SSC and TuxStor (NCPU/ACPU/FP) Linux ------------------------------------- 17.1 Test and verify the SSC, TusTor (NCPU/ACPU/FP) messaging is working properly for both control and data packets. ASSIGNED PERSON: William Fisher ESTIMATE: 1 Week STATUS: NOT_STARTED 18.0 Design/implement fs_threads and events to work with Linux threads ------------ 18.1 Event Manager is tightly coupled to fs thread wakeup and used by file system state machines 18.2 FP cores polling loops run under Linux fs_threads API utilizing the registered polling function table scheme. ASSIGNED PERSON: Maxim Kozlovsky ESTIMATE: 2 Weeks STATUS: NOT_STARTED 19.0 Compile/Link FP filesystem code under Linux using EEE supported API's ------------ 19.1 Assumes major EEE support API's ported and running under txrx Linux including memory allocation, registering polling functions and network driver hooks, pkt forwarding and EEE_Timers. 19.2 Enumerate all file system modules and estimate conversion time. 19.3 Examine file_lib with respect to fs_threads under Linux, MIGHT BE NO_OP 19.4 eee_timers specifics for FP centering on running where created ASSIGNED PERSON: Maxim Kozlovsky and two FS Developers ESTIMATE: 3 Weeks STATUS: NOT_STARTED 20.0 Integrate NETBIOS/CIFS/NFS, filesystem modules and networking under Linux ------------------------------------- This milestone covers integrating the NETBIOS/NFS/CIFS and FP filesystem code under Linux into a bootable kernel with the SSC, TuxStor, and networking code. ASSIGNED PERSON: Andy Sharp, Rendell Fong, Maxim Kozlovsky, William Fisher ESTIMATE: 2 Weeks STATUS: NOT_STARTED 21.0 nfsperftest NETBIOS/CIFS/NFS and storage backend WITHOUT NETWORKING Unit Testing ------------------------------------- This milestone covers performing the NETBIOS/NFS/CIFS and FP filesystem code unit testing under Linux. 21.1 Test and debug the NFS basic functions using nfsperftest under RCON test control. This verifies the basic port is correct with respect to control and data messages as parsed by the NFS code WITHOUT using a live network. 21.2 Test and debug the NFS initial functions for volume mounting, configuration information, etc. This involves the control and data steps pertaining to volume mounting, permission checking, and actual NFS control and data traffic. 21.3 Test CIFS using a larger integrated test set ASSIGNED PERSON: Andy Sharp, Rendell Fong, Maxim Kozlovsky, William Fisher ESTIMATE: 3 Weeks STATUS: NOT_STARTED 22.0 Integrate/Test NETBIOS/CIFS/NFS, File system and storage backend WITH NETWORKING ------------ 22.1 Test and debug the NETBIOS initial functions for volume mounting, configuration information, etc. This requires the basic NETBIOS ARP-like code obtains network traffic and generates the proper responses to clients. Other steps require the initial control and data steps to mount a identify CIFS's volume, including permission checking, etc. 22.2 Test and debug the CIFS initial functions for volume mounting, configuration information, etc. This requires a working NETBIOS layer and moves onto the control and data steps pertaining to volume mounting, permission checking, and actual CIFS control and data traffic. 22.3 Test NFS using a larger integrated test set ASSIGNED PERSON: Maxim Kozlovsky, William Fisher and Andy Sharp, Rendell Fong ESTIMATE: 3 Weeks STATUS: NOT_STARTED 23.0 RMC Protocol based test automation, unit/system testing of entire Linux system ------------ This task covers the RMC protocol based tests which perform both unit and system level testing by sending RMC messages directly into the kernel. This covers any Linux conversion and the actual running of the tests ASSIGNED PERSON: Jan Seidel ESTIMATE: 2 Weeks STATUS: NOT_STARTED 24.0 Test DMIP using a fully integrated set of software. ------------ ASSIGNED PERSON: QA Tester1 ESTIMATE: 1 Week STATUS: NOT_STARTED