Doorbell mechanism
First Claim
1. A method capable of writing doorbell information, comprising:
- creating one or more protection domains;
creating one or more data structures, wherein each of the data structures is associated with at least one protection domain;
updating one of the data structures;
computing a doorbell structure address for a doorbell structure associated with the updated data structure; and
writing doorbell information at the computed doorbell structure address.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided are techniques for writing doorbell information. In accordance with certain techniques, one or more protection domains are created. One or more data structures are created, wherein each of the data structures is associated with at least one protection domain. One of the data structures is updated. A doorbell structure address for a doorbell structure associated with the updated data structure is computed. Doorbell information is written at the computed doorbell structure address. In accordance with certain other techniques, doorbell information is received. A doorbell structure address is decoded from the doorbell information. A first protection domain identifier is determined from the doorbell structure address. A resource context of a data structure is determined from the doorbell information. The resource context at the doorbell address is read to determine a second protection domain identifier. The first protection domain identifier and the second protection domain identifier are compared to determine whether to update the resource context of the doorbell structure. Other embodiments are described and claimed.
79 Citations
24 Claims
-
1. A method capable of writing doorbell information, comprising:
-
creating one or more protection domains;
creating one or more data structures, wherein each of the data structures is associated with at least one protection domain;
updating one of the data structures;
computing a doorbell structure address for a doorbell structure associated with the updated data structure; and
writing doorbell information at the computed doorbell structure address. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method capable of writing doorbell information, comprising:
-
receiving doorbell information;
decoding a doorbell structure address from the doorbell information;
determining a first protection domain identifier from the doorbell structure address;
determining a resource context of a data structure from the doorbell information;
reading the resource context to determine a second protection domain identifier; and
comparing the first protection domain identifier and the second protection domain identifier to determine whether to update the resource context. - View Dependent Claims (7, 8)
-
-
9. A system for writing doorbell information, comprising:
-
a motherboard;
an Input/Output device including a doorbell space and coupled to a bus; and
an Input/Output device driver coupled to the bus and coupled to the motherboard;
wherein the Input/Output device driver is operable to;
create one or more protection domains in the doorbell space;
create one or more data structures, wherein each of the data structures is associated with at least one protection domain;
update one of the data structures;
compute a doorbell structure address for a doorbell structure associated with the updated data structure; and
write doorbell information at the computed doorbell structure address. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A system for writing doorbell information, comprising:
-
a motherboard;
a doorbell space partitioned into one or more protection domains; and
an Input/Output controller coupled to the doorbell space and coupled to the motherboard;
wherein the Input/Output controller is operable to;
receive doorbell information;
decode a doorbell address from the doorbell information;
determine a first protection domain identifier from the doorbell structure address;
determine a resource context of a data structure from the doorbell information;
read the resource context to determine a second protection domain identifier; and
compare the first protection domain identifier and the second protection domain identifier to determine whether to update the resource context. - View Dependent Claims (15, 16)
-
-
17. An article of manufacture for writing doorbell information, wherein the article of manufacture comprises a computer readable medium storing instructions, and wherein the article of manufacture is operable to:
-
create one or more protection domains;
create one or more data structures, wherein each of the data structures is associated with at least one protection domain;
update one of the data structures;
compute a doorbell structure address for a doorbell structure associated with the updated data structure; and
write doorbell information at the computed doorbell structure address. - View Dependent Claims (18, 19, 20, 21)
-
-
22. An article of manufacture for transmitting data, wherein the article of manufacture comprises a computer readable medium storing instructions, and wherein the article of manufacture is operable to:
-
receive doorbell information;
decode a doorbell address from the doorbell information;
determine a first protection domain identifier from the doorbell structure address;
determine a resource context of a data structure from the doorbell information;
read the resource context to determine a second protection domain identifier; and
compare the first protection domain identifier and the second protection domain identifier to determine whether to update the resource context. - View Dependent Claims (23, 24)
-
Specification