<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/hyperv/pcib, branch main</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>bus_alloc_resource: Pass rid by value to BUS_ALLOC_RESOURCE DEVMETHOD</title>
<updated>2025-12-09T20:00:06+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2025-12-09T19:59:21+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=575639548cef58590a1d70c29e47aae0e8d44153'/>
<id>575639548cef58590a1d70c29e47aae0e8d44153</id>
<content type='text'>
The wrapper functions such as bus_alloc_resource_any() still support
passing the rid by value or pointer, but the underlying implementation
now passes by value.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D53402
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The wrapper functions such as bus_alloc_resource_any() still support
passing the rid by value or pointer, but the underlying implementation
now passes by value.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D53402
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace calls to bus_generic_attach with bus_attach_children</title>
<updated>2024-12-06T22:26:16+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2024-12-06T22:26:16+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=18250ec6c089c0c50cbd9fd87d78e03ff89916df'/>
<id>18250ec6c089c0c50cbd9fd87d78e03ff89916df</id>
<content type='text'>
Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D47675
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D47675
</pre>
</div>
</content>
</entry>
<entry>
<title>newbus: globally replace device_add_child(..., -1) with DEVICE_UNIT_ANY</title>
<updated>2024-07-25T04:22:58+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2024-07-25T04:22:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=5b56413d04e608379c9a306373554a8e4d321bc0'/>
<id>5b56413d04e608379c9a306373554a8e4d321bc0</id>
<content type='text'>
Sponsored by:		Netflix
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Sponsored by:		Netflix
</pre>
</div>
</content>
</entry>
<entry>
<title>Retire non-NEW_PCIB code and remove config option</title>
<updated>2024-07-18T17:55:12+00:00</updated>
<author>
<name>Jessica Clarke</name>
<email>jrtc27@FreeBSD.org</email>
</author>
<published>2024-07-18T17:55:12+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=8415a654d02e1c4268885e667c539873db570576'/>
<id>8415a654d02e1c4268885e667c539873db570576</id>
<content type='text'>
All architectures enable NEW_PCIB in DEFAULTS (arm being the most recent
to do so in 121be555997b (arm: Set NEW_PCIB in DEFAULTS rather than a
subset of kernel configs")), so it's time we removed the legacy code
that no longer sees much testing and has a significant maintenance
burden.

Reviewed by:	jhb, andrew, emaste
Differential Revision:	https://reviews.freebsd.org/D32954
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
All architectures enable NEW_PCIB in DEFAULTS (arm being the most recent
to do so in 121be555997b (arm: Set NEW_PCIB in DEFAULTS rather than a
subset of kernel configs")), so it's time we removed the legacy code
that no longer sees much testing and has a significant maintenance
burden.

Reviewed by:	jhb, andrew, emaste
Differential Revision:	https://reviews.freebsd.org/D32954
</pre>
</div>
</content>
</entry>
<entry>
<title>new-bus: Remove the 'rid' and 'type' arguments from BUS_RELEASE_RESOURCE</title>
<updated>2024-03-13T22:05:54+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2024-03-13T22:05:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=9dbf5b0e6876d8c93890754bcc9c748339de79c0'/>
<id>9dbf5b0e6876d8c93890754bcc9c748339de79c0</id>
<content type='text'>
The public bus_release_resource() API still accepts both forms, but
the internal kobj method no longer passes the arguments.
Implementations which need the rid or type now use rman_get_rid() or
rman_get_type() to fetch the value from the allocated resource.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D44131
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The public bus_release_resource() API still accepts both forms, but
the internal kobj method no longer passes the arguments.
Implementations which need the rid or type now use rman_get_rid() or
rman_get_type() to fetch the value from the allocated resource.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D44131
</pre>
</div>
</content>
</entry>
<entry>
<title>new-bus: Remove the 'rid' and 'type' arguments from BUS_*ACTIVATE_RESOURCE</title>
<updated>2024-03-13T22:05:54+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2024-03-13T22:05:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2baed46e85d33b1f99e6f96033acc85a9a6fbba4'/>
<id>2baed46e85d33b1f99e6f96033acc85a9a6fbba4</id>
<content type='text'>
The public bus_activate/deactivate_resource() API still accepts both
forms, but the internal kobj methods no longer pass the arguments.
Implementations which need the rid or type now use rman_get_rid() or
rman_get_type() to fetch the value from the allocated resource.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D44130
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The public bus_activate/deactivate_resource() API still accepts both
forms, but the internal kobj methods no longer pass the arguments.
Implementations which need the rid or type now use rman_get_rid() or
rman_get_type() to fetch the value from the allocated resource.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D44130
</pre>
</div>
</content>
</entry>
<entry>
<title>new-bus: Remove the 'type' argument from BUS_ADJUST_RESOURCE</title>
<updated>2024-03-13T22:05:54+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2024-03-13T22:05:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=fef01f0498aa7b256bc37bbf28ee0e8ac9b2536f'/>
<id>fef01f0498aa7b256bc37bbf28ee0e8ac9b2536f</id>
<content type='text'>
The public bus_adjust_resource() API still accepts both forms, but the
internal kobj method no longer passes the argument.  Implementations
which need the type now use rman_get_type() to fetch the value from
the allocated resource.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D44128
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The public bus_adjust_resource() API still accepts both forms, but the
internal kobj method no longer passes the argument.  Implementations
which need the type now use rman_get_type() to fetch the value from
the allocated resource.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D44128
</pre>
</div>
</content>
</entry>
<entry>
<title>Hyper-V: vPCI: fix cpu id mis-mapping in vmbus_pcib_map_msi()</title>
<updated>2024-03-08T10:16:10+00:00</updated>
<author>
<name>Wei Hu</name>
<email>whu@FreeBSD.org</email>
</author>
<published>2024-03-08T10:00:25+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=999174ba03642fa63c9654752993a62db461afc9'/>
<id>999174ba03642fa63c9654752993a62db461afc9</id>
<content type='text'>
The msi address contains apic id. The code in vmbus_pcib_map_msi()
treats it as cpu id, which could cause mis-configuration of msix
IRQs, leading to missing interrupts for SRIOV devices. This happens
when apic id is not the same as cpu id on certain large VM sizes
with multiple numa domains in Azure. Fix this issue by correctly
mapping apic ids to cpu ids.

On vPCI version before 1.4, it only supports up to 64 vcpus
for msi/msix interrupt. This change also adds a check and returns
error if the vcpu_id is greater than 63.

Reported by:	NetApp
Tested by:	whu
MFC after:	1 week
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The msi address contains apic id. The code in vmbus_pcib_map_msi()
treats it as cpu id, which could cause mis-configuration of msix
IRQs, leading to missing interrupts for SRIOV devices. This happens
when apic id is not the same as cpu id on certain large VM sizes
with multiple numa domains in Azure. Fix this issue by correctly
mapping apic ids to cpu ids.

On vPCI version before 1.4, it only supports up to 64 vcpus
for msi/msix interrupt. This change also adds a check and returns
error if the vcpu_id is greater than 63.

Reported by:	NetApp
Tested by:	whu
MFC after:	1 week
</pre>
</div>
</content>
</entry>
<entry>
<title>hyperv vmbus_pcib: Use pci_domain_*_bus for PCI_RES_BUS resources</title>
<updated>2024-01-23T17:35:58+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2024-01-23T17:35:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=9c4effb1063d49748b4b7da4cc54f508ccad41fc'/>
<id>9c4effb1063d49748b4b7da4cc54f508ccad41fc</id>
<content type='text'>
Specifically for bus_activate/adjust/deactivate_bus methods.

Differential Revision:	https://reviews.freebsd.org/D43431
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Specifically for bus_activate/adjust/deactivate_bus methods.

Differential Revision:	https://reviews.freebsd.org/D43431
</pre>
</div>
</content>
</entry>
<entry>
<title>hyperv/vmbus: Flip a message to only be emitted on failure</title>
<updated>2023-09-11T08:51:46+00:00</updated>
<author>
<name>Li-Wen Hsu</name>
<email>lwhsu@FreeBSD.org</email>
</author>
<published>2023-09-11T08:51:46+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=4196186dbfd0949cfa2c51979fb169b7a79a80e4'/>
<id>4196186dbfd0949cfa2c51979fb169b7a79a80e4</id>
<content type='text'>
This message is not very useful when things are working well.
Flip its meaning and let it only be emitted on failure.

While here, pet style(9).

Reviewed by:	mhorne, whu
Differential Revision:	https://reviews.freebsd.org/D41788
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This message is not very useful when things are working well.
Flip its meaning and let it only be emitted on failure.

While here, pet style(9).

Reviewed by:	mhorne, whu
Differential Revision:	https://reviews.freebsd.org/D41788
</pre>
</div>
</content>
</entry>
</feed>
