Patent ID: 8954997
Filing Date: 2015-02-10
Classification: G06F,H04L

Abstract:
1. A method, in a data processing system, for providing resource affinity for multi-queue network adapters via dynamic reconfiguration, the method comprising: allocating, by a device driver in the data processing system, an initial queue pair within a memory, wherein each queue pair is a transmit/receive queue pair; determining, by the device driver, whether workload of the data processing system has risen above a predetermined high threshold; responsive to the workload rising above the predetermined high threshold, allocating and initializing, by the device driver, an additional queue pair in the memory; programming, by the device driver, a receive side scaling (RSS) mechanism in a network adapter to allow for dynamic insertion of an additional processing engine associated with the additional queue pair; enabling, by the device driver, transmit tuple hashing to the additional queue pair; determining, by the device driver, whether the workload has fallen below a predetermined low threshold; responsive to the workload falling below the predetermined low threshold, determining, by the device driver, whether there is only one queue pair remaining allocated in the memory; responsive to more than one queue pair remaining allocated in the memory, reprogramming, by the device driver, the RSS mechanism in the network adapter to allow for deletion of an allocated queue pair; disabling, by the device driver, transmit tuple hashing to an identified queue pair; determining, by the device driver, whether the workload to the identified queue pair has quiesced; and responsive to the workload to the identified quiescing, removing, by the device driver, the identified queue pair from memory, thereby freeing up memory used by the identified queue pair.