mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-05 02:49:43 -04:00
Merge branch 'linus' into perf/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
@@ -287,18 +287,15 @@ static inline bool invalid_phys_cpuid(phys_cpuid_t phys_id)
|
||||
}
|
||||
|
||||
/* Validate the processor object's proc_id */
|
||||
bool acpi_processor_validate_proc_id(int proc_id);
|
||||
bool acpi_duplicate_processor_id(int proc_id);
|
||||
|
||||
#ifdef CONFIG_ACPI_HOTPLUG_CPU
|
||||
/* Arch dependent functions for cpu hotplug support */
|
||||
int acpi_map_cpu(acpi_handle handle, phys_cpuid_t physid, u32 acpi_id,
|
||||
int *pcpu);
|
||||
int acpi_unmap_cpu(int cpu);
|
||||
int acpi_map_cpu2node(acpi_handle handle, int cpu, int physid);
|
||||
#endif /* CONFIG_ACPI_HOTPLUG_CPU */
|
||||
|
||||
void acpi_set_processor_mapping(void);
|
||||
|
||||
#ifdef CONFIG_ACPI_HOTPLUG_IOAPIC
|
||||
int acpi_get_ioapic_id(acpi_handle handle, u32 gsi_base, u64 *phys_addr);
|
||||
#endif
|
||||
|
||||
@@ -556,7 +556,7 @@ enum ccp_engine {
|
||||
* struct ccp_cmd - CCP operation request
|
||||
* @entry: list element (ccp driver use only)
|
||||
* @work: work element used for callbacks (ccp driver use only)
|
||||
* @ccp: CCP device to be run on (ccp driver use only)
|
||||
* @ccp: CCP device to be run on
|
||||
* @ret: operation return code (ccp driver use only)
|
||||
* @flags: cmd processing flags
|
||||
* @engine: CCP operation to perform
|
||||
|
||||
@@ -1140,7 +1140,6 @@ static inline bool device_supports_offline(struct device *dev)
|
||||
extern void lock_device_hotplug(void);
|
||||
extern void unlock_device_hotplug(void);
|
||||
extern int lock_device_hotplug_sysfs(void);
|
||||
void assert_held_device_hotplug(void);
|
||||
extern int device_offline(struct device *dev);
|
||||
extern int device_online(struct device *dev);
|
||||
extern void set_primary_fwnode(struct device *dev, struct fwnode_handle *fwnode);
|
||||
|
||||
@@ -20,6 +20,8 @@ struct sock_exterr_skb {
|
||||
struct sock_extended_err ee;
|
||||
u16 addr_offset;
|
||||
__be16 port;
|
||||
u8 opt_stats:1,
|
||||
unused:7;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -87,7 +87,6 @@ struct fscrypt_operations {
|
||||
unsigned int flags;
|
||||
const char *key_prefix;
|
||||
int (*get_context)(struct inode *, void *, size_t);
|
||||
int (*prepare_context)(struct inode *);
|
||||
int (*set_context)(struct inode *, const void *, size_t, void *);
|
||||
int (*dummy_context)(struct inode *);
|
||||
bool (*is_encrypted)(struct inode *);
|
||||
|
||||
@@ -143,15 +143,6 @@ struct gpio_desc *devm_fwnode_get_index_gpiod_from_child(struct device *dev,
|
||||
struct fwnode_handle *child,
|
||||
enum gpiod_flags flags,
|
||||
const char *label);
|
||||
/* FIXME: delete this helper when users are switched over */
|
||||
static inline struct gpio_desc *devm_get_gpiod_from_child(struct device *dev,
|
||||
const char *con_id, struct fwnode_handle *child)
|
||||
{
|
||||
return devm_fwnode_get_index_gpiod_from_child(dev, con_id,
|
||||
0, child,
|
||||
GPIOD_ASIS,
|
||||
"?");
|
||||
}
|
||||
|
||||
#else /* CONFIG_GPIOLIB */
|
||||
|
||||
@@ -444,13 +435,6 @@ struct gpio_desc *devm_fwnode_get_index_gpiod_from_child(struct device *dev,
|
||||
return ERR_PTR(-ENOSYS);
|
||||
}
|
||||
|
||||
/* FIXME: delete this when all users are switched over */
|
||||
static inline struct gpio_desc *devm_get_gpiod_from_child(struct device *dev,
|
||||
const char *con_id, struct fwnode_handle *child)
|
||||
{
|
||||
return ERR_PTR(-ENOSYS);
|
||||
}
|
||||
|
||||
#endif /* CONFIG_GPIOLIB */
|
||||
|
||||
static inline
|
||||
|
||||
@@ -88,6 +88,7 @@ enum hwmon_temp_attributes {
|
||||
#define HWMON_T_CRIT_HYST BIT(hwmon_temp_crit_hyst)
|
||||
#define HWMON_T_EMERGENCY BIT(hwmon_temp_emergency)
|
||||
#define HWMON_T_EMERGENCY_HYST BIT(hwmon_temp_emergency_hyst)
|
||||
#define HWMON_T_ALARM BIT(hwmon_temp_alarm)
|
||||
#define HWMON_T_MIN_ALARM BIT(hwmon_temp_min_alarm)
|
||||
#define HWMON_T_MAX_ALARM BIT(hwmon_temp_max_alarm)
|
||||
#define HWMON_T_CRIT_ALARM BIT(hwmon_temp_crit_alarm)
|
||||
|
||||
@@ -845,6 +845,13 @@ struct vmbus_channel {
|
||||
* link up channels based on their CPU affinity.
|
||||
*/
|
||||
struct list_head percpu_list;
|
||||
|
||||
/*
|
||||
* Defer freeing channel until after all cpu's have
|
||||
* gone through grace period.
|
||||
*/
|
||||
struct rcu_head rcu;
|
||||
|
||||
/*
|
||||
* For performance critical channels (storage, networking
|
||||
* etc,), Hyper-V has a mechanism to enhance the throughput
|
||||
@@ -1430,9 +1437,6 @@ extern bool vmbus_prep_negotiate_resp(struct icmsg_hdr *icmsghdrp, u8 *buf,
|
||||
const int *srv_version, int srv_vercnt,
|
||||
int *nego_fw_version, int *nego_srv_version);
|
||||
|
||||
void hv_event_tasklet_disable(struct vmbus_channel *channel);
|
||||
void hv_event_tasklet_enable(struct vmbus_channel *channel);
|
||||
|
||||
void hv_process_channel_removal(struct vmbus_channel *channel, u32 relid);
|
||||
|
||||
void vmbus_setevent(struct vmbus_channel *channel);
|
||||
|
||||
@@ -62,7 +62,7 @@ void iio_swd_group_init_type_name(struct iio_sw_device *d,
|
||||
const char *name,
|
||||
struct config_item_type *type)
|
||||
{
|
||||
#ifdef CONFIG_CONFIGFS_FS
|
||||
#if IS_ENABLED(CONFIG_CONFIGFS_FS)
|
||||
config_group_init_type_name(&d->group, name, type);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -125,9 +125,16 @@ enum iommu_attr {
|
||||
};
|
||||
|
||||
/* These are the possible reserved region types */
|
||||
#define IOMMU_RESV_DIRECT (1 << 0)
|
||||
#define IOMMU_RESV_RESERVED (1 << 1)
|
||||
#define IOMMU_RESV_MSI (1 << 2)
|
||||
enum iommu_resv_type {
|
||||
/* Memory regions which must be mapped 1:1 at all times */
|
||||
IOMMU_RESV_DIRECT,
|
||||
/* Arbitrary "never map this or give it to a device" address ranges */
|
||||
IOMMU_RESV_RESERVED,
|
||||
/* Hardware MSI region (untranslated) */
|
||||
IOMMU_RESV_MSI,
|
||||
/* Software-managed MSI translation window */
|
||||
IOMMU_RESV_SW_MSI,
|
||||
};
|
||||
|
||||
/**
|
||||
* struct iommu_resv_region - descriptor for a reserved memory region
|
||||
@@ -142,7 +149,7 @@ struct iommu_resv_region {
|
||||
phys_addr_t start;
|
||||
size_t length;
|
||||
int prot;
|
||||
int type;
|
||||
enum iommu_resv_type type;
|
||||
};
|
||||
|
||||
#ifdef CONFIG_IOMMU_API
|
||||
@@ -288,7 +295,8 @@ extern void iommu_get_resv_regions(struct device *dev, struct list_head *list);
|
||||
extern void iommu_put_resv_regions(struct device *dev, struct list_head *list);
|
||||
extern int iommu_request_dm_for_dev(struct device *dev);
|
||||
extern struct iommu_resv_region *
|
||||
iommu_alloc_resv_region(phys_addr_t start, size_t length, int prot, int type);
|
||||
iommu_alloc_resv_region(phys_addr_t start, size_t length, int prot,
|
||||
enum iommu_resv_type type);
|
||||
extern int iommu_get_group_resv_regions(struct iommu_group *group,
|
||||
struct list_head *head);
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
struct kmem_cache;
|
||||
struct page;
|
||||
struct vm_struct;
|
||||
struct task_struct;
|
||||
|
||||
#ifdef CONFIG_KASAN
|
||||
|
||||
|
||||
@@ -162,8 +162,8 @@ int kvm_io_bus_read(struct kvm_vcpu *vcpu, enum kvm_bus bus_idx, gpa_t addr,
|
||||
int len, void *val);
|
||||
int kvm_io_bus_register_dev(struct kvm *kvm, enum kvm_bus bus_idx, gpa_t addr,
|
||||
int len, struct kvm_io_device *dev);
|
||||
int kvm_io_bus_unregister_dev(struct kvm *kvm, enum kvm_bus bus_idx,
|
||||
struct kvm_io_device *dev);
|
||||
void kvm_io_bus_unregister_dev(struct kvm *kvm, enum kvm_bus bus_idx,
|
||||
struct kvm_io_device *dev);
|
||||
struct kvm_io_device *kvm_io_bus_get_dev(struct kvm *kvm, enum kvm_bus bus_idx,
|
||||
gpa_t addr);
|
||||
|
||||
|
||||
@@ -476,6 +476,7 @@ enum {
|
||||
enum {
|
||||
MLX4_INTERFACE_STATE_UP = 1 << 0,
|
||||
MLX4_INTERFACE_STATE_DELETION = 1 << 1,
|
||||
MLX4_INTERFACE_STATE_NOWAIT = 1 << 2,
|
||||
};
|
||||
|
||||
#define MSTR_SM_CHANGE_MASK (MLX4_EQ_PORT_INFO_MSTR_SM_SL_CHANGE_MASK | \
|
||||
|
||||
@@ -76,22 +76,12 @@ struct gpmc_timings;
|
||||
struct omap_nand_platform_data;
|
||||
struct omap_onenand_platform_data;
|
||||
|
||||
#if IS_ENABLED(CONFIG_MTD_NAND_OMAP2)
|
||||
extern int gpmc_nand_init(struct omap_nand_platform_data *d,
|
||||
struct gpmc_timings *gpmc_t);
|
||||
#if IS_ENABLED(CONFIG_MTD_ONENAND_OMAP2)
|
||||
extern int gpmc_onenand_init(struct omap_onenand_platform_data *d);
|
||||
#else
|
||||
static inline int gpmc_nand_init(struct omap_nand_platform_data *d,
|
||||
struct gpmc_timings *gpmc_t)
|
||||
#define board_onenand_data NULL
|
||||
static inline int gpmc_onenand_init(struct omap_onenand_platform_data *d)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if IS_ENABLED(CONFIG_MTD_ONENAND_OMAP2)
|
||||
extern void gpmc_onenand_init(struct omap_onenand_platform_data *d);
|
||||
#else
|
||||
#define board_onenand_data NULL
|
||||
static inline void gpmc_onenand_init(struct omap_onenand_platform_data *d)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -31,31 +31,26 @@ static inline int device_reset_optional(struct device *dev)
|
||||
|
||||
static inline int reset_control_reset(struct reset_control *rstc)
|
||||
{
|
||||
WARN_ON(1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int reset_control_assert(struct reset_control *rstc)
|
||||
{
|
||||
WARN_ON(1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int reset_control_deassert(struct reset_control *rstc)
|
||||
{
|
||||
WARN_ON(1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int reset_control_status(struct reset_control *rstc)
|
||||
{
|
||||
WARN_ON(1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void reset_control_put(struct reset_control *rstc)
|
||||
{
|
||||
WARN_ON(1);
|
||||
}
|
||||
|
||||
static inline int __must_check device_reset(struct device *dev)
|
||||
@@ -74,14 +69,14 @@ static inline struct reset_control *__of_reset_control_get(
|
||||
const char *id, int index, bool shared,
|
||||
bool optional)
|
||||
{
|
||||
return ERR_PTR(-ENOTSUPP);
|
||||
return optional ? NULL : ERR_PTR(-ENOTSUPP);
|
||||
}
|
||||
|
||||
static inline struct reset_control *__devm_reset_control_get(
|
||||
struct device *dev, const char *id,
|
||||
int index, bool shared, bool optional)
|
||||
{
|
||||
return ERR_PTR(-ENOTSUPP);
|
||||
return optional ? NULL : ERR_PTR(-ENOTSUPP);
|
||||
}
|
||||
|
||||
#endif /* CONFIG_RESET_CONTROLLER */
|
||||
|
||||
@@ -50,4 +50,10 @@
|
||||
/* device can't handle Link Power Management */
|
||||
#define USB_QUIRK_NO_LPM BIT(10)
|
||||
|
||||
/*
|
||||
* Device reports its bInterval as linear frames instead of the
|
||||
* USB 2.0 calculation.
|
||||
*/
|
||||
#define USB_QUIRK_LINEAR_FRAME_INTR_BINTERVAL BIT(11)
|
||||
|
||||
#endif /* __LINUX_USB_QUIRKS_H */
|
||||
|
||||
@@ -48,6 +48,8 @@ struct virtio_vsock_pkt {
|
||||
struct virtio_vsock_hdr hdr;
|
||||
struct work_struct work;
|
||||
struct list_head list;
|
||||
/* socket refcnt not held, only use for cancellation */
|
||||
struct vsock_sock *vsk;
|
||||
void *buf;
|
||||
u32 len;
|
||||
u32 off;
|
||||
@@ -56,6 +58,7 @@ struct virtio_vsock_pkt {
|
||||
|
||||
struct virtio_vsock_pkt_info {
|
||||
u32 remote_cid, remote_port;
|
||||
struct vsock_sock *vsk;
|
||||
struct msghdr *msg;
|
||||
u32 pkt_len;
|
||||
u16 type;
|
||||
|
||||
@@ -100,6 +100,9 @@ struct vsock_transport {
|
||||
void (*destruct)(struct vsock_sock *);
|
||||
void (*release)(struct vsock_sock *);
|
||||
|
||||
/* Cancel all pending packets sent on vsock. */
|
||||
int (*cancel_pkt)(struct vsock_sock *vsk);
|
||||
|
||||
/* Connections. */
|
||||
int (*connect)(struct vsock_sock *);
|
||||
|
||||
|
||||
@@ -244,7 +244,7 @@ extern s32 (*nf_ct_nat_offset)(const struct nf_conn *ct,
|
||||
u32 seq);
|
||||
|
||||
/* Fake conntrack entry for untracked connections */
|
||||
DECLARE_PER_CPU(struct nf_conn, nf_conntrack_untracked);
|
||||
DECLARE_PER_CPU_ALIGNED(struct nf_conn, nf_conntrack_untracked);
|
||||
static inline struct nf_conn *nf_ct_untracked_get(void)
|
||||
{
|
||||
return raw_cpu_ptr(&nf_conntrack_untracked);
|
||||
|
||||
@@ -103,6 +103,35 @@ struct nft_regs {
|
||||
};
|
||||
};
|
||||
|
||||
/* Store/load an u16 or u8 integer to/from the u32 data register.
|
||||
*
|
||||
* Note, when using concatenations, register allocation happens at 32-bit
|
||||
* level. So for store instruction, pad the rest part with zero to avoid
|
||||
* garbage values.
|
||||
*/
|
||||
|
||||
static inline void nft_reg_store16(u32 *dreg, u16 val)
|
||||
{
|
||||
*dreg = 0;
|
||||
*(u16 *)dreg = val;
|
||||
}
|
||||
|
||||
static inline void nft_reg_store8(u32 *dreg, u8 val)
|
||||
{
|
||||
*dreg = 0;
|
||||
*(u8 *)dreg = val;
|
||||
}
|
||||
|
||||
static inline u16 nft_reg_load16(u32 *sreg)
|
||||
{
|
||||
return *(u16 *)sreg;
|
||||
}
|
||||
|
||||
static inline u8 nft_reg_load8(u32 *sreg)
|
||||
{
|
||||
return *(u8 *)sreg;
|
||||
}
|
||||
|
||||
static inline void nft_data_copy(u32 *dst, const struct nft_data *src,
|
||||
unsigned int len)
|
||||
{
|
||||
@@ -203,7 +232,6 @@ struct nft_set_elem {
|
||||
struct nft_set;
|
||||
struct nft_set_iter {
|
||||
u8 genmask;
|
||||
bool flush;
|
||||
unsigned int count;
|
||||
unsigned int skip;
|
||||
int err;
|
||||
|
||||
@@ -9,12 +9,13 @@ nft_set_pktinfo_ipv6(struct nft_pktinfo *pkt,
|
||||
struct sk_buff *skb,
|
||||
const struct nf_hook_state *state)
|
||||
{
|
||||
unsigned int flags = IP6_FH_F_AUTH;
|
||||
int protohdr, thoff = 0;
|
||||
unsigned short frag_off;
|
||||
|
||||
nft_set_pktinfo(pkt, skb, state);
|
||||
|
||||
protohdr = ipv6_find_hdr(pkt->skb, &thoff, -1, &frag_off, NULL);
|
||||
protohdr = ipv6_find_hdr(pkt->skb, &thoff, -1, &frag_off, &flags);
|
||||
if (protohdr < 0) {
|
||||
nft_set_pktinfo_proto_unspec(pkt, skb);
|
||||
return;
|
||||
@@ -32,6 +33,7 @@ __nft_set_pktinfo_ipv6_validate(struct nft_pktinfo *pkt,
|
||||
const struct nf_hook_state *state)
|
||||
{
|
||||
#if IS_ENABLED(CONFIG_IPV6)
|
||||
unsigned int flags = IP6_FH_F_AUTH;
|
||||
struct ipv6hdr *ip6h, _ip6h;
|
||||
unsigned int thoff = 0;
|
||||
unsigned short frag_off;
|
||||
@@ -50,7 +52,7 @@ __nft_set_pktinfo_ipv6_validate(struct nft_pktinfo *pkt,
|
||||
if (pkt_len + sizeof(*ip6h) > skb->len)
|
||||
return -1;
|
||||
|
||||
protohdr = ipv6_find_hdr(pkt->skb, &thoff, -1, &frag_off, NULL);
|
||||
protohdr = ipv6_find_hdr(pkt->skb, &thoff, -1, &frag_off, &flags);
|
||||
if (protohdr < 0)
|
||||
return -1;
|
||||
|
||||
|
||||
@@ -83,6 +83,7 @@ struct sctp_bind_addr;
|
||||
struct sctp_ulpq;
|
||||
struct sctp_ep_common;
|
||||
struct crypto_shash;
|
||||
struct sctp_stream;
|
||||
|
||||
|
||||
#include <net/sctp/tsnmap.h>
|
||||
@@ -753,6 +754,8 @@ struct sctp_transport {
|
||||
/* Is the Path MTU update pending on this tranport */
|
||||
pmtu_pending:1,
|
||||
|
||||
dst_pending_confirm:1, /* need to confirm neighbour */
|
||||
|
||||
/* Has this transport moved the ctsn since we last sacked */
|
||||
sack_generation:1;
|
||||
u32 dst_cookie;
|
||||
@@ -806,8 +809,6 @@ struct sctp_transport {
|
||||
|
||||
__u32 burst_limited; /* Holds old cwnd when max.burst is applied */
|
||||
|
||||
__u32 dst_pending_confirm; /* need to confirm neighbour */
|
||||
|
||||
/* Destination */
|
||||
struct dst_entry *dst;
|
||||
/* Source address. */
|
||||
|
||||
@@ -1863,6 +1863,9 @@ struct ib_port_immutable {
|
||||
};
|
||||
|
||||
struct ib_device {
|
||||
/* Do not access @dma_device directly from ULP nor from HW drivers. */
|
||||
struct device *dma_device;
|
||||
|
||||
char name[IB_DEVICE_NAME_MAX];
|
||||
|
||||
struct list_head event_handler_list;
|
||||
@@ -3007,7 +3010,7 @@ static inline int ib_req_ncomp_notif(struct ib_cq *cq, int wc_cnt)
|
||||
*/
|
||||
static inline int ib_dma_mapping_error(struct ib_device *dev, u64 dma_addr)
|
||||
{
|
||||
return dma_mapping_error(&dev->dev, dma_addr);
|
||||
return dma_mapping_error(dev->dma_device, dma_addr);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3021,7 +3024,7 @@ static inline u64 ib_dma_map_single(struct ib_device *dev,
|
||||
void *cpu_addr, size_t size,
|
||||
enum dma_data_direction direction)
|
||||
{
|
||||
return dma_map_single(&dev->dev, cpu_addr, size, direction);
|
||||
return dma_map_single(dev->dma_device, cpu_addr, size, direction);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3035,7 +3038,7 @@ static inline void ib_dma_unmap_single(struct ib_device *dev,
|
||||
u64 addr, size_t size,
|
||||
enum dma_data_direction direction)
|
||||
{
|
||||
dma_unmap_single(&dev->dev, addr, size, direction);
|
||||
dma_unmap_single(dev->dma_device, addr, size, direction);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3052,7 +3055,7 @@ static inline u64 ib_dma_map_page(struct ib_device *dev,
|
||||
size_t size,
|
||||
enum dma_data_direction direction)
|
||||
{
|
||||
return dma_map_page(&dev->dev, page, offset, size, direction);
|
||||
return dma_map_page(dev->dma_device, page, offset, size, direction);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3066,7 +3069,7 @@ static inline void ib_dma_unmap_page(struct ib_device *dev,
|
||||
u64 addr, size_t size,
|
||||
enum dma_data_direction direction)
|
||||
{
|
||||
dma_unmap_page(&dev->dev, addr, size, direction);
|
||||
dma_unmap_page(dev->dma_device, addr, size, direction);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3080,7 +3083,7 @@ static inline int ib_dma_map_sg(struct ib_device *dev,
|
||||
struct scatterlist *sg, int nents,
|
||||
enum dma_data_direction direction)
|
||||
{
|
||||
return dma_map_sg(&dev->dev, sg, nents, direction);
|
||||
return dma_map_sg(dev->dma_device, sg, nents, direction);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3094,7 +3097,7 @@ static inline void ib_dma_unmap_sg(struct ib_device *dev,
|
||||
struct scatterlist *sg, int nents,
|
||||
enum dma_data_direction direction)
|
||||
{
|
||||
dma_unmap_sg(&dev->dev, sg, nents, direction);
|
||||
dma_unmap_sg(dev->dma_device, sg, nents, direction);
|
||||
}
|
||||
|
||||
static inline int ib_dma_map_sg_attrs(struct ib_device *dev,
|
||||
@@ -3102,7 +3105,8 @@ static inline int ib_dma_map_sg_attrs(struct ib_device *dev,
|
||||
enum dma_data_direction direction,
|
||||
unsigned long dma_attrs)
|
||||
{
|
||||
return dma_map_sg_attrs(&dev->dev, sg, nents, direction, dma_attrs);
|
||||
return dma_map_sg_attrs(dev->dma_device, sg, nents, direction,
|
||||
dma_attrs);
|
||||
}
|
||||
|
||||
static inline void ib_dma_unmap_sg_attrs(struct ib_device *dev,
|
||||
@@ -3110,7 +3114,7 @@ static inline void ib_dma_unmap_sg_attrs(struct ib_device *dev,
|
||||
enum dma_data_direction direction,
|
||||
unsigned long dma_attrs)
|
||||
{
|
||||
dma_unmap_sg_attrs(&dev->dev, sg, nents, direction, dma_attrs);
|
||||
dma_unmap_sg_attrs(dev->dma_device, sg, nents, direction, dma_attrs);
|
||||
}
|
||||
/**
|
||||
* ib_sg_dma_address - Return the DMA address from a scatter/gather entry
|
||||
@@ -3152,7 +3156,7 @@ static inline void ib_dma_sync_single_for_cpu(struct ib_device *dev,
|
||||
size_t size,
|
||||
enum dma_data_direction dir)
|
||||
{
|
||||
dma_sync_single_for_cpu(&dev->dev, addr, size, dir);
|
||||
dma_sync_single_for_cpu(dev->dma_device, addr, size, dir);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3167,7 +3171,7 @@ static inline void ib_dma_sync_single_for_device(struct ib_device *dev,
|
||||
size_t size,
|
||||
enum dma_data_direction dir)
|
||||
{
|
||||
dma_sync_single_for_device(&dev->dev, addr, size, dir);
|
||||
dma_sync_single_for_device(dev->dma_device, addr, size, dir);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3182,7 +3186,7 @@ static inline void *ib_dma_alloc_coherent(struct ib_device *dev,
|
||||
dma_addr_t *dma_handle,
|
||||
gfp_t flag)
|
||||
{
|
||||
return dma_alloc_coherent(&dev->dev, size, dma_handle, flag);
|
||||
return dma_alloc_coherent(dev->dma_device, size, dma_handle, flag);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3196,7 +3200,7 @@ static inline void ib_dma_free_coherent(struct ib_device *dev,
|
||||
size_t size, void *cpu_addr,
|
||||
dma_addr_t dma_handle)
|
||||
{
|
||||
dma_free_coherent(&dev->dev, size, cpu_addr, dma_handle);
|
||||
dma_free_coherent(dev->dma_device, size, cpu_addr, dma_handle);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -4,7 +4,12 @@
|
||||
#include <linux/types.h>
|
||||
#include <target/target_core_base.h>
|
||||
|
||||
#define TRANSPORT_FLAG_PASSTHROUGH 1
|
||||
#define TRANSPORT_FLAG_PASSTHROUGH 0x1
|
||||
/*
|
||||
* ALUA commands, state checks and setup operations are handled by the
|
||||
* backend module.
|
||||
*/
|
||||
#define TRANSPORT_FLAG_PASSTHROUGH_ALUA 0x2
|
||||
|
||||
struct request_queue;
|
||||
struct scatterlist;
|
||||
|
||||
@@ -299,7 +299,7 @@ struct t10_alua_tg_pt_gp {
|
||||
struct list_head tg_pt_gp_lun_list;
|
||||
struct se_lun *tg_pt_gp_alua_lun;
|
||||
struct se_node_acl *tg_pt_gp_alua_nacl;
|
||||
struct delayed_work tg_pt_gp_transition_work;
|
||||
struct work_struct tg_pt_gp_transition_work;
|
||||
struct completion *tg_pt_gp_transition_complete;
|
||||
};
|
||||
|
||||
|
||||
@@ -730,9 +730,11 @@ __SYSCALL(__NR_pkey_mprotect, sys_pkey_mprotect)
|
||||
__SYSCALL(__NR_pkey_alloc, sys_pkey_alloc)
|
||||
#define __NR_pkey_free 290
|
||||
__SYSCALL(__NR_pkey_free, sys_pkey_free)
|
||||
#define __NR_statx 291
|
||||
__SYSCALL(__NR_statx, sys_statx)
|
||||
|
||||
#undef __NR_syscalls
|
||||
#define __NR_syscalls 291
|
||||
#define __NR_syscalls 292
|
||||
|
||||
/*
|
||||
* All syscalls below here should go away really,
|
||||
|
||||
@@ -33,8 +33,8 @@ extern "C" {
|
||||
#define OMAP_PARAM_CHIPSET_ID 1 /* ie. 0x3430, 0x4430, etc */
|
||||
|
||||
struct drm_omap_param {
|
||||
uint64_t param; /* in */
|
||||
uint64_t value; /* in (set_param), out (get_param) */
|
||||
__u64 param; /* in */
|
||||
__u64 value; /* in (set_param), out (get_param) */
|
||||
};
|
||||
|
||||
#define OMAP_BO_SCANOUT 0x00000001 /* scanout capable (phys contiguous) */
|
||||
@@ -53,18 +53,18 @@ struct drm_omap_param {
|
||||
#define OMAP_BO_TILED (OMAP_BO_TILED_8 | OMAP_BO_TILED_16 | OMAP_BO_TILED_32)
|
||||
|
||||
union omap_gem_size {
|
||||
uint32_t bytes; /* (for non-tiled formats) */
|
||||
__u32 bytes; /* (for non-tiled formats) */
|
||||
struct {
|
||||
uint16_t width;
|
||||
uint16_t height;
|
||||
__u16 width;
|
||||
__u16 height;
|
||||
} tiled; /* (for tiled formats) */
|
||||
};
|
||||
|
||||
struct drm_omap_gem_new {
|
||||
union omap_gem_size size; /* in */
|
||||
uint32_t flags; /* in */
|
||||
uint32_t handle; /* out */
|
||||
uint32_t __pad;
|
||||
__u32 flags; /* in */
|
||||
__u32 handle; /* out */
|
||||
__u32 __pad;
|
||||
};
|
||||
|
||||
/* mask of operations: */
|
||||
@@ -74,33 +74,33 @@ enum omap_gem_op {
|
||||
};
|
||||
|
||||
struct drm_omap_gem_cpu_prep {
|
||||
uint32_t handle; /* buffer handle (in) */
|
||||
uint32_t op; /* mask of omap_gem_op (in) */
|
||||
__u32 handle; /* buffer handle (in) */
|
||||
__u32 op; /* mask of omap_gem_op (in) */
|
||||
};
|
||||
|
||||
struct drm_omap_gem_cpu_fini {
|
||||
uint32_t handle; /* buffer handle (in) */
|
||||
uint32_t op; /* mask of omap_gem_op (in) */
|
||||
__u32 handle; /* buffer handle (in) */
|
||||
__u32 op; /* mask of omap_gem_op (in) */
|
||||
/* TODO maybe here we pass down info about what regions are touched
|
||||
* by sw so we can be clever about cache ops? For now a placeholder,
|
||||
* set to zero and we just do full buffer flush..
|
||||
*/
|
||||
uint32_t nregions;
|
||||
uint32_t __pad;
|
||||
__u32 nregions;
|
||||
__u32 __pad;
|
||||
};
|
||||
|
||||
struct drm_omap_gem_info {
|
||||
uint32_t handle; /* buffer handle (in) */
|
||||
uint32_t pad;
|
||||
uint64_t offset; /* mmap offset (out) */
|
||||
__u32 handle; /* buffer handle (in) */
|
||||
__u32 pad;
|
||||
__u64 offset; /* mmap offset (out) */
|
||||
/* note: in case of tiled buffers, the user virtual size can be
|
||||
* different from the physical size (ie. how many pages are needed
|
||||
* to back the object) which is returned in DRM_IOCTL_GEM_OPEN..
|
||||
* This size here is the one that should be used if you want to
|
||||
* mmap() the buffer:
|
||||
*/
|
||||
uint32_t size; /* virtual size for mmap'ing (out) */
|
||||
uint32_t __pad;
|
||||
__u32 size; /* virtual size for mmap'ing (out) */
|
||||
__u32 __pad;
|
||||
};
|
||||
|
||||
#define DRM_OMAP_GET_PARAM 0x00
|
||||
|
||||
@@ -713,33 +713,6 @@ enum btrfs_err_code {
|
||||
BTRFS_ERROR_DEV_ONLY_WRITABLE,
|
||||
BTRFS_ERROR_DEV_EXCL_RUN_IN_PROGRESS
|
||||
};
|
||||
/* An error code to error string mapping for the kernel
|
||||
* error codes
|
||||
*/
|
||||
static inline char *btrfs_err_str(enum btrfs_err_code err_code)
|
||||
{
|
||||
switch (err_code) {
|
||||
case BTRFS_ERROR_DEV_RAID1_MIN_NOT_MET:
|
||||
return "unable to go below two devices on raid1";
|
||||
case BTRFS_ERROR_DEV_RAID10_MIN_NOT_MET:
|
||||
return "unable to go below four devices on raid10";
|
||||
case BTRFS_ERROR_DEV_RAID5_MIN_NOT_MET:
|
||||
return "unable to go below two devices on raid5";
|
||||
case BTRFS_ERROR_DEV_RAID6_MIN_NOT_MET:
|
||||
return "unable to go below three devices on raid6";
|
||||
case BTRFS_ERROR_DEV_TGT_REPLACE:
|
||||
return "unable to remove the dev_replace target dev";
|
||||
case BTRFS_ERROR_DEV_MISSING_NOT_FOUND:
|
||||
return "no missing devices found to remove";
|
||||
case BTRFS_ERROR_DEV_ONLY_WRITABLE:
|
||||
return "unable to remove the only writeable device";
|
||||
case BTRFS_ERROR_DEV_EXCL_RUN_IN_PROGRESS:
|
||||
return "add/delete/balance/replace/resize operation "\
|
||||
"in progress";
|
||||
default:
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
#define BTRFS_IOC_SNAP_CREATE _IOW(BTRFS_IOCTL_MAGIC, 1, \
|
||||
struct btrfs_ioctl_vol_args)
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#define MLX5_ABI_USER_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/if_ether.h> /* For ETH_ALEN. */
|
||||
|
||||
enum {
|
||||
MLX5_QP_FLAG_SIGNATURE = 1 << 0,
|
||||
@@ -66,7 +67,7 @@ struct mlx5_ib_alloc_ucontext_req {
|
||||
};
|
||||
|
||||
enum mlx5_lib_caps {
|
||||
MLX5_LIB_CAP_4K_UAR = (u64)1 << 0,
|
||||
MLX5_LIB_CAP_4K_UAR = (__u64)1 << 0,
|
||||
};
|
||||
|
||||
struct mlx5_ib_alloc_ucontext_req_v2 {
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
#define DECON_FRAMEFIFO_STATUS 0x0524
|
||||
#define DECON_CMU 0x1404
|
||||
#define DECON_UPDATE 0x1410
|
||||
#define DECON_CRFMID 0x1414
|
||||
#define DECON_UPDATE_SCHEME 0x1438
|
||||
#define DECON_VIDCON1 0x2000
|
||||
#define DECON_VIDCON2 0x2004
|
||||
@@ -126,6 +127,10 @@
|
||||
|
||||
/* VIDINTCON0 */
|
||||
#define VIDINTCON0_FRAMEDONE (1 << 17)
|
||||
#define VIDINTCON0_FRAMESEL_BP (0 << 15)
|
||||
#define VIDINTCON0_FRAMESEL_VS (1 << 15)
|
||||
#define VIDINTCON0_FRAMESEL_AC (2 << 15)
|
||||
#define VIDINTCON0_FRAMESEL_FP (3 << 15)
|
||||
#define VIDINTCON0_INTFRMEN (1 << 12)
|
||||
#define VIDINTCON0_INTEN (1 << 0)
|
||||
|
||||
@@ -142,6 +147,13 @@
|
||||
#define STANDALONE_UPDATE_F (1 << 0)
|
||||
|
||||
/* DECON_VIDCON1 */
|
||||
#define VIDCON1_LINECNT_MASK (0x0fff << 16)
|
||||
#define VIDCON1_I80_ACTIVE (1 << 15)
|
||||
#define VIDCON1_VSTATUS_MASK (0x3 << 13)
|
||||
#define VIDCON1_VSTATUS_VS (0 << 13)
|
||||
#define VIDCON1_VSTATUS_BP (1 << 13)
|
||||
#define VIDCON1_VSTATUS_AC (2 << 13)
|
||||
#define VIDCON1_VSTATUS_FP (3 << 13)
|
||||
#define VIDCON1_VCLK_MASK (0x3 << 9)
|
||||
#define VIDCON1_VCLK_RUN_VDEN_DISABLE (0x3 << 9)
|
||||
#define VIDCON1_VCLK_HOLD (0x0 << 9)
|
||||
|
||||
Reference in New Issue
Block a user