minor doctools fix: extension filter optional.
NET rx, NIC: prepare replace rx buffer

	SUMMARY

		It would be fastest if net_rx_packet called by the NIC ISRs
		would receive a new buffer address to replace in the descriptor
		array for the NIC, as this removes the need to allocate and copy
		the buffer on each packet reception.

		This commit assumes that net_rx_packet_task returns a new
		buffer pointer and updates the NICs accordingly. For now,
		the buffer is still copied and returned unmodified.

		The RTL8139 poses a problem however, as it is designed to use
		a continuous buffer and does not seem to provide a way to
		mark parts of the buffer as reserved; however, further
		investigation is needed.

kernel/net/net.s:
	document esi return value.

kernel/nic/am72c971.s:
kernel/nic/i8254.s:
	update packet buffer address after calling net_rx_packet;

kernel/nic/rtl8239.s:
	don't send EOI when using IRQ sharing and document possible problem
	in the order of acknowleding interrupts. Packet buffer is continuous
	and not updated.
[minor] add shell var handler for ethdump

kernel/net/net.s:
	on scheduling the packet handler task, set up a shell environment
	variable handler for ethdump, parsing the string into a byte.

	update net_rx_packet_task to check the byte rather than verify
	the existence of the environment variable to improve speed.
FIX network packet handler mutex issue

	SUMMARY

		This fixes the issue as described a few commits ago,
		where the NET mutex was unable to be locked if a network
		interrupt occurred suspending the task holding the NET
		mutex.

		This commit addresses two potential problems: the first is
		the use of the MEM mutex which is widespread througout the
		kernel. This reduces the chance of network packets locking
		the system.

		Second, the network packet handler disables interrupts while
		the NET mutex is held, preventing NIC IRQs from executing
		and attempting to acquire the lock.

DOC/Scheduling.txt:
	Add section describing execution path of network packet processing.

kernel/net/net.s:
	remove use of mdup requiring MEM mutex, except for first packet.

	disable interrupts in the netq task while fetching queue head.