📄 changelog
字号:
08-Aug-2006----------- - Some work on PA-4B (Munich32 chip).09-Aug-2006----------- - Continuing on PA-4B (trying to understand TP3420).10-Aug-2006----------- - C7200: Added PA Mgmt IRQ support (required for PA-4B, seen on a real c7200 with PA-4B offered by Vernon Missouri). - Added TP3420 definitions.15-Aug-2006----------- - Continuing on PA-4B. Better understanding of the TX ring. Fixed interrupt queue management. 19-Aug-2006----------- - Added hv_vm.c module to handle generic VM operations. - Added hv_c3600.c module for the Cisco 3600 platform. - Fixed a bug in VTTY flushing.20-Aug-2006----------- - Added code to gen_eth module for Cygwin to prevent WinPCAP from giving back transmitted packets. It requires WinPCAP 0.4-alpha1 or better. TODO: need to be tested! 21-Aug-2006----------- - Fixed C3660 boot. Trying to understand/discover the hardware. Environmental monitor should be ok.24-Aug-2006----------- - Added NS16552 flush optimization (Peter Ross). - Fixed missing periodic task removal in NS16552.26-Aug-2006----------- - C3660: * Better understanding of NM presence / EEPROM registers. * Analyzed registers used when a Net IRQ is triggered.28-Aug-2006----------- - C3660: Network Modules are now working! Remaining stuff: OIR.29-Aug-2006----------- - Added more generic code to handle Cisco EEPROM to change easily chassis MAC addresses. - Updated README with C3600 information. - Updated hypervisor documentation (README.hypervisor). - Added dated package build to the Makefile (make packdev) - Checked WinPCAP fix of 20-Aug-2006: working. - Added the capability for high priority IRQ (like NetIO IRQ) to break the idle loop. Great latency improvement with NetIO IRQ. - C3600: the DUART irq is now higly prioritized. It gives better console reactivity. 30-Aug-2006----------- - Huge performance improvement on dec21140 and am79c971 drivers, by transmitting up to 16 packets in one TX ring scan pass. - Added the same to Serial driver (untested). - Added "unicast limiter" feature to the am79c971 driver, similarly to the dec21140 driver. Not having this caused the virtual instances to see unrelated host traffic when using linux_eth/gen_eth NIO and consequently a bad performance was obtained. Thanks to Greg for noticing that. - Beginning of rework of PCI subsystem for PCI bridge support. (Greg noticed that with 12.2T releases, the PCI bus numbering is different for the C3660). 31-Aug-2006----------- - Finished the PCI subsystem rework. - C7200: Fixed PCI bridge use for midplanes (std: dec21050, vxr: dec21150).01-Sep-2006----------- - Finally fixed the Serial problem on C3620 platform (hack in the driver to trigger interrupts differently). - Cleanup for VM PCI bus pool and C7200 "hidden" I/O bridge was missing.03-Sep-2006----------- - Added safety checks to the PCI bus management. - Added a PLX9060 device (very basic for now). - Rewritten the PA-POS-OC3 driver to use the new PLX9060 driver. - Cleanup: removed use of c7200 bay info in drivers (everything uses PCI for configuration). - C7200: removed the bay module which contained static definitions of PCI bus, physical addresses for PA, ... Now everything is handled dynamically by the PCI subsystem and the remaining drivers (PA-4B, PA-POS-OC3) have been fixed. - C3600: removed PCI bus info from the bay module (due to PCI bridge new code).04-Sep-2006----------- - Fixed some typos in comments. - Added a standalone utility to extract IOS configuration from an NVRAM file. - Removed pcireg.h (from NetBSD) which was just used for one definition. - Added a "COPYING" file for the GPLv2 licence.05-Sep-2006----------- - Added basic packet filtering framework, to simulate packet loss or alteration. - Hypervisor commands now supports a variable number of parameters. - bugfix: doing a "sh run" and then pressing "Escape" was causing trouble to the VTTY (the state machine was in an incorrect state). 06-Sep-2006----------- - Removed erroneous special handling of intra-page jumps in delay slots. (problem with c3640 12.0(7)T IP+ image).07-Sep-2006----------- - C3600: processors ID are now correct. - Avoid removing the JIT block of the caller with the "cache" instruction. - Added "hypervisor version" to allow clients (Dynagen) to know the current version. - Added missing explanation for "-P <platform>" command line parameter. - C7200: Fixed incorrect cleanup of IO PCI bridge.08-Sep-2006----------- - Better code for VM error messages. - Fixed the write attempts to ROM at startup.09-Sep-2006----------- - C3600: added support for io memory size, which prevents Smart Init from running (hypervisor command: c3600 set_iomem <router> <val>). - C3600: fixed incorrect handling of commands for this platform, which caused port 0 to be disabled when manipulating other ports.11-Sep-2006----------- - Fixed loop overflow in idle pc computation. - Added base64 encoding/decoding module from Yannick Le Teigner. - Added hypervisor commands "vm push_config" and "vm extract_config" to manage IOS configurations. Extracting to base64 is ok (verified with a third party decoder: http://www.opinionatedgeek.com/dotnet/tools/Base64Decode/Default.aspx ) - C3600: NVRAM checksum is now correctly computed.12-Sep-2006----------- - Following a suggestion of Yannick Le Teigner, applied the optimization principle to PA-A1 card already used in dec21140, ... Latency is clearly better (on my system, this dropped from about 150ms to 50 ms).14-Sep-2006----------- - Incorrect display of device name in PLX9060 driver. - Added manpages provided by Erik Wenzel (erik@debian.org). Many thanks to him for this and for his work on packaging for Debian. - Final 0.2.5 release. - C7200: Added missing NVRAM checksum.15/21-Sep-2006----------- - Working on NM-16ESW. 22-Sep-2006----------- - NM-16ESW: interfaces are now up (handles specifically the appropriate MII register).23/25-Sep-2006-------------- - Still continuing on the NM-16ESW (first packets received/transmitted).26-Sep-2006----------- - NM-16ESW: seems to be working! (although there are still a lot of things to do).28-Sep-2006----------- - Added a hack to allow Ethernet NM to work correctly in 3620/3640 (seen when directly attached to the real network with very few packets incoming). - NM-16ESW: proper support for tx ring scatter/gather support. - NM-16ESW: fixed a bug in ARL insertion. - NM-16ESW: send directly BPDU packets to the CPU.29-Sep-2006----------- - NM-16ESW: added support for "trunks" (ie etherchannel). - Added "Ctrl+p" sequence key to dump Port Adapter / Network Module info (only NM-16ESW reports something at this time).30-Sep-2006----------- - NM-16ESW: proper management of station movement (etherchannel is handled).01-Oct-2006----------- - NM-16ESW: added register handling.02-Oct-2006----------- - NM-16ESW: playing with the port mirroring feature. 04-Oct-2006----------- - Finally understood how to handle link status changes! Now, "shut"/"no shut" is working. Better understanding of MII registers in general.05-Oct-2006----------- - Fixed bug described in BTS entry #65 (in the case where two virtual addresses point at the same physical address, the JIT can use inappropriate block). This was a "silent" bug.07-Oct-2006----------- - Modified the hypervisor parser to allow long lines (to upload IOS configs).09-Oct-2006----------- - NM-16ESW: added ingress and egress port mirroring (todo: BPDU and CDP packets shouldn't be replicated).10-Oct-2006----------- - 0.2.6-RC1 release. - NM-16ESW: implemented ARL count. Fixed the MAC address table display problems.11-Oct-2006----------- - C3600: fixed NVRAM configuration export. - Merged a patch for Solaris/x86 from Damjan Marion. - Cleaned the EEPROM stuff to have something more generic. - NM-16ESW: base MAC address is now automatically generated.12-Oct-2006----------- - NM-16ESW: added support to discard input packets.13-Oct-2006----------- - NM-16ESW: modified the discard support to let BPDU packets arrive to the CPU. - Added online setup of idle-pc through the hypervisor command "vm set_idle_pc_online <vm_name> <cpu_id>". - Values computed for idle-pc are now stored in the virtual MIPS CPU and can be known through the hypervisor command "vm show_idle_pc_prop <vm_name> <cpu_id>".15-Oct-2006----------- - Added a timer module. - NM-16ESW: added an ARL ager that removes expired MAC addresses.18-Oct-2006----------- - Added hypervisor commands to tune idle-pc parameters ("vm set_idle_max" and "vm set_idle_sleep_time"). - Centralized NM/PA EEPROM to have common definitions for platforms with the same type of network interfaces. - 0.2.6-RC2 release.19-Oct-2006----------- - C2691: added sketelon code. - C2691: working DUART. - C2691: added mainboard EEPROM.20-Oct-2006----------- - Bugfix: dec21140 and amd79c97x were incorrectly discarding frames based on the source address, preventing HSRP/VRRP to work (BTS entry #75). - C2691: added hypervisor module to handle instances.22-Oct-2006----------- - C2691: trying to understand the network interrupt mechanism.23-Oct-2006----------- - C2691: fixed Galileo interrupt (IRQ 3), allowing packets to be received! - Added a basic GT96100 system controller (for C2691). - GT96100: added MII registers. - Added a basic Flash device to be used as ROM+NVRAM for C2691. - C2691: NVRAM (simulated from flash) is now ok. - C2691: Analyzed environmental monitor register. No warning anymore.24-Oct-2006----------- - C2691: NVRAM config export is working, config import requires more work (since write operations to flash are not immediate). - Allowed Galileo DMA IRQ to preempt the idle loop. - Fixed ATA Flash "current of sectors per card" which must be in LSW/MSW order and not MSW/LSW. - Added another ATA Flash access method (for c2691). - C2691: added support for CompactFlash.25-Oct-2006----------- - GT96100: added some definitions for the Ethernet part.26-Oct-2006----------- - Working on TX part for GT96100. Unfortunately, don't know yet how to signal an interrupt for it on the 2691 platform :(27-Oct-2006----------- - C2691: found how to announce correctly NM presence in slot 1. - GT96100: finally found how to notify appropriately the network interrupt: the Serial Cause Register has to be handled. - C2691: added the glue code to set up GT96100 ethernet ports. - GT96100: added RX part. Packets are now sucessfully handled. - C2691: better understanding of network interrupt status registers. - C2691: added correct flash code detection. - GT96100: fixed the "PHY reset" problem. - C2691: added default correct chassis base MAC address.28-Oct-2006----------- - GT96100: added hash function (Mode 0 ok, Mode 1 to fix) for Ethernet address filtering + appropriate definitions.29-Oct-2006----------- - GT96100: fixed hash mode 1 (not tested). - GT96100: added address filtering process.30-Oct-2006----------- - GT96100: added minimal MIB counters. - Implemented LBA mode for PCMCIA ATA disk devices and fixed data access. - Changed the default idle sleep time from 50ms to 30ms to avoid timer IRQ loss and timer drift. - Added hypervisor command "vm show_timer_drift <vm_instance> <cpu_id>" to display potential problem with a given idle-pc value. - C2691: added proper support for IO memory. - NM-16ESW: generalized code to support multiple platforms. - C2691: added support for NM-16ESW.31-Oct-2006----------- - C3725: initial support. Hardware very similar to c2691: Cisco rocks! - C3745: added skeleton. - C3745: fixed GT96100 address. - C3745: added PCI bridges. - C3745: Network Modules are working! - C3745: CompactFlash working.01-Nov-2006----------- - C3745: finally understood how to handle the system EEPROMs. - Updated documentation (README). - GT96100: minor enhancement of interrupt handling.02-Nov-2006----------- - Added support for "ghost" RAM: instances use a RAM file (previously created) and use copy-on-write on it. It allows to share common memory between instances and so less memory is used.03-Nov-2006----------- - Better support for ghost RAM, added hypervisor commands "vm set_ghost_status" and "vm set_ghost_file".04-Nov-2006----------- - NM-16ESW: fixed incorrect BPDU handling (which caused to add a 2nd 802.1Q tag to BPDU packets) and now 0100.0ccc.cccd is recognized as a BPDU MAC address (BTS entry #). - DEC21140: fixed CSR8 handling (missed frame counter), which returned an undefined value (BTS entry #81). - Merged a patch from Rostislav Opocensky who added support for C3600 in nvram_export utility. - Re-enaebled debugging info for NM-16ESW on 2691/3600/37xx.05-Nov-2006----------- - NM-16ESW: fixed a crash due to incomplete device removal.06-Nov-2006----------- - Validated use of Serial interfaces with 2691/3725/3745. - Correct config register handling for 3600/2691/3725/3745 platforms (config register setting was ignored). - Added detection of empty NVRAM for 2691/3725/3745 to set the ignore config flag in the config register (to boot faster). - C3745: Fixed NVRAM properties. - C7200/C3600: rewrite of configuration push into NVRAM (can now be done offline). - C2691/C3725/C3745: added support for config push into ROM flash (simulated NVRAM).07-Nov-2006----------- - Modified config export from NVRAM for all platforms (can now be done offline). - Better handling of base MAC address (2691/3725/3745 + NM-16ESW).08-Nov-2006----------- - Rework of the MTS subsystem (generalization of MTS64 algorithms to MTS32 which was broken). - Fast memory operations for 32-bit mode.09-Nov-2006----------- - Rewrite of the MIPS TLB lookup operation.10-Nov-2006----------- - Fixed another bug in TLB lookup. - Beginning of work for PA-MC-8TE1 support. - Added hypervisor commands to send messages to instances VTTY. - Working on PLX PCI9054 for PA-MC-8TE1.11-Nov-2006----------- - Continuing a bit on PA-MC-8TE1. 14-Nov-2006----------- - Correct handling of VPN2 mask for TLB lookup. - bugfix: support of c3745 was missing in the hypervisor. - Merged a patch from Akim Dreyer for Debian support.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -