Page MenuHomeFreeBSD

D29676.id.diff
No OneTemporary

D29676.id.diff

diff --git a/share/man/man9/device.9 b/share/man/man9/device.9
--- a/share/man/man9/device.9
+++ b/share/man/man9/device.9
@@ -35,7 +35,7 @@
.Nm device
.Nd an abstract representation of a device
.Sh SYNOPSIS
-.Vt typedef struct device *device_t ;
+.Vt typedef struct _device *device_t ;
.Sh DESCRIPTION
The device object represents a piece of hardware attached to the
system such as an expansion card, the bus which that card is plugged
diff --git a/share/man/man9/rman.9 b/share/man/man9/rman.9
--- a/share/man/man9/rman.9
+++ b/share/man/man9/rman.9
@@ -88,12 +88,12 @@
.Ft "struct resource *"
.Fo rman_reserve_resource
.Fa "struct rman *rm" "rman_res_t start" "rman_res_t end" "rman_res_t count"
-.Fa "u_int flags" "struct device *dev"
+.Fa "u_int flags" "device_t dev"
.Fc
.Ft "struct resource *"
.Fo rman_reserve_resource_bound
.Fa "struct rman *rm" "rman_res_t start" "rman_res_t end" "rman_res_t count"
-.Fa "rman_res_t bound" "u_int flags" "struct device *dev"
+.Fa "rman_res_t bound" "u_int flags" "device_t dev"
.Fc
.Ft uint32_t
.Fn rman_make_alignment_flags "uint32_t size"
@@ -101,7 +101,7 @@
.Fn rman_get_start "struct resource *r"
.Ft rman_res_t
.Fn rman_get_end "struct resource *r"
-.Ft "struct device *"
+.Ft "device_t"
.Fn rman_get_device "struct resource *r"
.Ft rman_res_t
.Fn rman_get_size "struct resource *r"
diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c
--- a/sys/kern/subr_bus.c
+++ b/sys/kern/subr_bus.c
@@ -95,7 +95,7 @@
*/
typedef TAILQ_HEAD(devclass_list, devclass) devclass_list_t;
typedef TAILQ_HEAD(driver_list, driverlink) driver_list_t;
-typedef TAILQ_HEAD(device_list, device) device_list_t;
+typedef TAILQ_HEAD(device_list, _device) device_list_t;
struct devclass {
TAILQ_ENTRY(devclass) link;
@@ -112,9 +112,12 @@
};
/**
- * @brief Implementation of device.
+ * @brief Implementation of _device.
+ *
+ * The structure is named "_device" instead of "device" to avoid type confusion
+ * caused by other subsystems defining a (struct device).
*/
-struct device {
+struct _device {
/*
* A device is a kernel object. The first field must be the
* current ops table for the object.
@@ -124,8 +127,8 @@
/*
* Device hierarchy.
*/
- TAILQ_ENTRY(device) link; /**< list of devices in parent */
- TAILQ_ENTRY(device) devlink; /**< global device list membership */
+ TAILQ_ENTRY(_device) link; /**< list of devices in parent */
+ TAILQ_ENTRY(_device) devlink; /**< global device list membership */
device_t parent; /**< parent of this device */
device_list_t children; /**< list of child devices */
@@ -853,7 +856,7 @@
/* End of /dev/devctl code */
-static TAILQ_HEAD(,device) bus_data_devices;
+static struct device_list bus_data_devices;
static int bus_data_generation = 1;
static kobj_method_t null_methods[] = {
diff --git a/sys/powerpc/include/bus_dma.h b/sys/powerpc/include/bus_dma.h
--- a/sys/powerpc/include/bus_dma.h
+++ b/sys/powerpc/include/bus_dma.h
@@ -33,8 +33,6 @@
#include <sys/bus_dma.h>
#include <sys/bus_dma_internal.h>
-struct device;
-
-int bus_dma_tag_set_iommu(bus_dma_tag_t, struct device *iommu, void *cookie);
+int bus_dma_tag_set_iommu(bus_dma_tag_t, device_t iommu, void *cookie);
#endif /* _POWERPC_BUS_DMA_H_ */
diff --git a/sys/sys/pcpu.h b/sys/sys/pcpu.h
--- a/sys/sys/pcpu.h
+++ b/sys/sys/pcpu.h
@@ -187,7 +187,7 @@
STAILQ_ENTRY(pcpu) pc_allcpu;
struct lock_list_entry *pc_spinlocks;
long pc_cp_time[CPUSTATES]; /* statclock ticks */
- struct device *pc_device;
+ struct _device *pc_device; /* CPU device handle */
void *pc_netisr; /* netisr SWI cookie */
int pc_unused1; /* unused field */
int pc_domain; /* Memory domain. */
diff --git a/sys/sys/systm.h b/sys/sys/systm.h
--- a/sys/sys/systm.h
+++ b/sys/sys/systm.h
@@ -626,9 +626,8 @@
/*
* APIs to manage deprecation and obsolescence.
*/
-struct device;
void _gone_in(int major, const char *msg);
-void _gone_in_dev(struct device *dev, int major, const char *msg);
+void _gone_in_dev(device_t dev, int major, const char *msg);
#ifdef NO_OBSOLETE_CODE
#define __gone_ok(m, msg) \
_Static_assert(m < P_OSREL_MAJOR(__FreeBSD_version)), \
@@ -641,5 +640,4 @@
#endif /* _KERNEL */
__NULLABILITY_PRAGMA_POP
-
#endif /* !_SYS_SYSTM_H_ */
diff --git a/sys/sys/types.h b/sys/sys/types.h
--- a/sys/sys/types.h
+++ b/sys/sys/types.h
@@ -272,7 +272,7 @@
#ifdef _KERNEL
typedef int boolean_t;
-typedef struct device *device_t;
+typedef struct _device *device_t;
typedef __intfptr_t intfptr_t;
/*

File Metadata

Mime Type
text/plain
Expires
Mon, Jan 19, 11:22 PM (10 h, 40 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27756383
Default Alt Text
D29676.id.diff (4 KB)

Event Timeline