IP Library Granted Patent US 12,499,073
Granted Patent B2
US 12,499,073 · App. 18/090,222 · Granted Dec 16, 2025

Network interface device

Inventors: Steven Leslie Pope (Cambridge, GB); Derek Edward Roberts (Cambridge, GB); David James Riddoch (Cambridgeshire, GB); Ripduman Singh Sohan (San Jose, CA)
Assignee: XILINX, INC.
G06F13/42G06F9/45558G06F2009/45595
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,499,073
App. No.
18/090,222
Granted
Dec 16, 2025
Kind
B2
Abstract

A network interface device comprises at least one processor configured to validate at least a part of a context associated with a queue pair, the context being fetched from a memory on a host device.

Claims (28)

1 . A network interface device comprising:

at least one processor configured to:

fetch a context associated with a queue pair from a memory on a host device; and

validate at least a part of the context associated with the queue pair based on confirming a value of a field of the context is outside an allowed range of values for that field and one of:

update the value of the field of the context to a value in the allowed range based on confirming that the value of the field is outside the allowed range of values for that field; or

use a value in the allowed range based on confirming that the value of the field of the context is outside the allowed range of values for that field instead of the value in the field.

2 . The network interface device as claimed in claim 1 , wherein the at least one processor is configured to validate at least a part of the context by determining if the respective part of the context contains one or more invalid values.

3 . The network interface device as claimed in claim 2 , wherein the at least one processor is configured to replace one or more invalid values in the context with one or more valid values when it is determined that the part of the context contains invalid values.

4 . The network interface device as claimed in claim 3 , wherein the at least one processor is configured to replace one or more invalid values in the context with one or more values associated with a function with which the queue pair is associated.

5 . The network interface device as claimed in claim 4 , wherein the function comprises a virtual machine associated with the queue pair.

6 . The network interface device as claimed in claim 4 , wherein the function comprises an interface associated with the queue pair.

7 . The network interface device as claimed in claim 2 , wherein the at least one processor is configured use one or more valid values, when it is determined that the part of the context contains one or more invalid values, instead of the invalid values.

8 . The network interface device as claimed in claim 1 , wherein the at least one processor is configured to validate at least a part of the context by determining if one or more values in the context meet one or more criteria.

9 . The network interface device as claimed in claim 8 , wherein determining if one or more values in the context meet one or more criteria comprises determining if a queue pair is permitted to access a resource referenced in the queue pair context.

10 . The network interface device as claimed in claim 8 , wherein determining if one or more values in the context meet one or more criteria comprises determining if a resource referenced in the queue pair context is owned by a function which is associated with the queue pair.

11 . The network interface device as claimed in claim 8 , wherein the at least one processor is configured to abort an operation associated with the queue pair context when the one or more criteria are not met.

12 . The network interface device as claimed in claim 8 , wherein determining if one or more values in the context meet one or more criteria comprises determining if a value of a field of the context is outside an allowed range of values for that field.

13 . A method comprising:

fetching a context associated with a queue pair from a memory on a host device; and

validating at least a part of the context associated with the queue pair based on confirming a value of a field of the context is outside an allowed range of values for that field and one of:

updating the value of the field of the context to a value in the allowed range based on confirming that the value of the field is outside the allowed range of values for that field; or

using a value in the allowed range based on confirming that the value of the field of the context is outside the allowed range of values for that field instead of the value in the field.

14 . The method as claimed in claim 13 , comprising validating at least a part of the context by determining if the respective part of the context contains one or more invalid values.

15 . The method as claimed in claim 14 , comprising replacing one or more invalid values in the context with one or more valid values when it is determined that the part of the context contains invalid values.

16 . The method as claimed in claim 13 , comprising validating at least a part of the context by determining if one or more values in the context meet one or more criteria.

17 . The method as claimed in claim 16 , wherein determining if one or more values in the context meet one or more criteria comprises determining if a value of a field of the context is outside an allowed range of values for that field.

18 . The network interface device as claimed in claim 1 , wherein the validating is based on confirming that a given resource referenced by the context is owned by an interface that owns the queue pair.

19 . The network interface device as claimed in claim 1 , wherein the context comprises a pointer to an event queue, wherein the validating is based on confirming that the queue pair and the event queue are owned by a common function.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2023
From: POPE, STEVEN LESLIE; ROBERTS, DEREK EDWARD; RIDDOCH, DAVID JAMES; SOHAN, RIPDUMAN SINGH
To: XILINX, INC.
Reel/Frame 062700/0125 →
Continuity (1)
Related Publication 20240220440A1 · Jul 4, 2024
References Cited (9)
US 7159111B1 · Ganapathy · 2007 [cited by examiner]
US 7448044B1 · Rust · 2008 [cited by examiner]
US 20020141424A1 · Gasbarro · 2002 [cited by examiner]
US 20040049600A1 · Boyd · 2004 [cited by examiner]
US 20040193908A1 · Garcia · 2004 [cited by examiner]
US 20080126509A1 · Subramanian · 2008 [cited by examiner]
US 20130159568A1 · Shahar · 2013 [cited by examiner]
US 20130315237A1 · Kagan · 2013 [cited by examiner]
US 20160212214A1 · Rahman · 2016 [cited by examiner]
Cited By (1)
US 12,587,516