Merge branches 'cxgb3', 'endian', 'ipath', 'ipoib', 'iser', 'mad', 'misc', 'mlx4', 'mthca', 'nes' and 'sysfs' into for-next
此提交包含在:

@@ -772,8 +772,8 @@ void ipath_get_eeprom_info(struct ipath_devdata *dd)
|
||||
"0x%x, not 0x%x\n", csum, ifp->if_csum);
|
||||
goto done;
|
||||
}
|
||||
if (*(__be64 *) ifp->if_guid == 0ULL ||
|
||||
*(__be64 *) ifp->if_guid == __constant_cpu_to_be64(-1LL)) {
|
||||
if (*(__be64 *) ifp->if_guid == cpu_to_be64(0) ||
|
||||
*(__be64 *) ifp->if_guid == ~cpu_to_be64(0)) {
|
||||
ipath_dev_err(dd, "Invalid GUID %llx from flash; "
|
||||
"ignoring\n",
|
||||
*(unsigned long long *) ifp->if_guid);
|
||||
|
@@ -455,7 +455,7 @@ static void init_shadow_tids(struct ipath_devdata *dd)
|
||||
if (!addrs) {
|
||||
ipath_dev_err(dd, "failed to allocate shadow dma handle "
|
||||
"array, no expected sends!\n");
|
||||
vfree(dd->ipath_pageshadow);
|
||||
vfree(pages);
|
||||
dd->ipath_pageshadow = NULL;
|
||||
return;
|
||||
}
|
||||
|
@@ -37,10 +37,10 @@
|
||||
#include "ipath_verbs.h"
|
||||
#include "ipath_common.h"
|
||||
|
||||
#define IB_SMP_UNSUP_VERSION __constant_htons(0x0004)
|
||||
#define IB_SMP_UNSUP_METHOD __constant_htons(0x0008)
|
||||
#define IB_SMP_UNSUP_METH_ATTR __constant_htons(0x000C)
|
||||
#define IB_SMP_INVALID_FIELD __constant_htons(0x001C)
|
||||
#define IB_SMP_UNSUP_VERSION cpu_to_be16(0x0004)
|
||||
#define IB_SMP_UNSUP_METHOD cpu_to_be16(0x0008)
|
||||
#define IB_SMP_UNSUP_METH_ATTR cpu_to_be16(0x000C)
|
||||
#define IB_SMP_INVALID_FIELD cpu_to_be16(0x001C)
|
||||
|
||||
static int reply(struct ib_smp *smp)
|
||||
{
|
||||
@@ -789,12 +789,12 @@ static int recv_subn_set_pkeytable(struct ib_smp *smp,
|
||||
return recv_subn_get_pkeytable(smp, ibdev);
|
||||
}
|
||||
|
||||
#define IB_PMA_CLASS_PORT_INFO __constant_htons(0x0001)
|
||||
#define IB_PMA_PORT_SAMPLES_CONTROL __constant_htons(0x0010)
|
||||
#define IB_PMA_PORT_SAMPLES_RESULT __constant_htons(0x0011)
|
||||
#define IB_PMA_PORT_COUNTERS __constant_htons(0x0012)
|
||||
#define IB_PMA_PORT_COUNTERS_EXT __constant_htons(0x001D)
|
||||
#define IB_PMA_PORT_SAMPLES_RESULT_EXT __constant_htons(0x001E)
|
||||
#define IB_PMA_CLASS_PORT_INFO cpu_to_be16(0x0001)
|
||||
#define IB_PMA_PORT_SAMPLES_CONTROL cpu_to_be16(0x0010)
|
||||
#define IB_PMA_PORT_SAMPLES_RESULT cpu_to_be16(0x0011)
|
||||
#define IB_PMA_PORT_COUNTERS cpu_to_be16(0x0012)
|
||||
#define IB_PMA_PORT_COUNTERS_EXT cpu_to_be16(0x001D)
|
||||
#define IB_PMA_PORT_SAMPLES_RESULT_EXT cpu_to_be16(0x001E)
|
||||
|
||||
struct ib_perf {
|
||||
u8 base_version;
|
||||
@@ -884,19 +884,19 @@ struct ib_pma_portcounters {
|
||||
__be32 port_rcv_packets;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
#define IB_PMA_SEL_SYMBOL_ERROR __constant_htons(0x0001)
|
||||
#define IB_PMA_SEL_LINK_ERROR_RECOVERY __constant_htons(0x0002)
|
||||
#define IB_PMA_SEL_LINK_DOWNED __constant_htons(0x0004)
|
||||
#define IB_PMA_SEL_PORT_RCV_ERRORS __constant_htons(0x0008)
|
||||
#define IB_PMA_SEL_PORT_RCV_REMPHYS_ERRORS __constant_htons(0x0010)
|
||||
#define IB_PMA_SEL_PORT_XMIT_DISCARDS __constant_htons(0x0040)
|
||||
#define IB_PMA_SEL_LOCAL_LINK_INTEGRITY_ERRORS __constant_htons(0x0200)
|
||||
#define IB_PMA_SEL_EXCESSIVE_BUFFER_OVERRUNS __constant_htons(0x0400)
|
||||
#define IB_PMA_SEL_PORT_VL15_DROPPED __constant_htons(0x0800)
|
||||
#define IB_PMA_SEL_PORT_XMIT_DATA __constant_htons(0x1000)
|
||||
#define IB_PMA_SEL_PORT_RCV_DATA __constant_htons(0x2000)
|
||||
#define IB_PMA_SEL_PORT_XMIT_PACKETS __constant_htons(0x4000)
|
||||
#define IB_PMA_SEL_PORT_RCV_PACKETS __constant_htons(0x8000)
|
||||
#define IB_PMA_SEL_SYMBOL_ERROR cpu_to_be16(0x0001)
|
||||
#define IB_PMA_SEL_LINK_ERROR_RECOVERY cpu_to_be16(0x0002)
|
||||
#define IB_PMA_SEL_LINK_DOWNED cpu_to_be16(0x0004)
|
||||
#define IB_PMA_SEL_PORT_RCV_ERRORS cpu_to_be16(0x0008)
|
||||
#define IB_PMA_SEL_PORT_RCV_REMPHYS_ERRORS cpu_to_be16(0x0010)
|
||||
#define IB_PMA_SEL_PORT_XMIT_DISCARDS cpu_to_be16(0x0040)
|
||||
#define IB_PMA_SEL_LOCAL_LINK_INTEGRITY_ERRORS cpu_to_be16(0x0200)
|
||||
#define IB_PMA_SEL_EXCESSIVE_BUFFER_OVERRUNS cpu_to_be16(0x0400)
|
||||
#define IB_PMA_SEL_PORT_VL15_DROPPED cpu_to_be16(0x0800)
|
||||
#define IB_PMA_SEL_PORT_XMIT_DATA cpu_to_be16(0x1000)
|
||||
#define IB_PMA_SEL_PORT_RCV_DATA cpu_to_be16(0x2000)
|
||||
#define IB_PMA_SEL_PORT_XMIT_PACKETS cpu_to_be16(0x4000)
|
||||
#define IB_PMA_SEL_PORT_RCV_PACKETS cpu_to_be16(0x8000)
|
||||
|
||||
struct ib_pma_portcounters_ext {
|
||||
u8 reserved;
|
||||
@@ -913,14 +913,14 @@ struct ib_pma_portcounters_ext {
|
||||
__be64 port_multicast_rcv_packets;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
#define IB_PMA_SELX_PORT_XMIT_DATA __constant_htons(0x0001)
|
||||
#define IB_PMA_SELX_PORT_RCV_DATA __constant_htons(0x0002)
|
||||
#define IB_PMA_SELX_PORT_XMIT_PACKETS __constant_htons(0x0004)
|
||||
#define IB_PMA_SELX_PORT_RCV_PACKETS __constant_htons(0x0008)
|
||||
#define IB_PMA_SELX_PORT_UNI_XMIT_PACKETS __constant_htons(0x0010)
|
||||
#define IB_PMA_SELX_PORT_UNI_RCV_PACKETS __constant_htons(0x0020)
|
||||
#define IB_PMA_SELX_PORT_MULTI_XMIT_PACKETS __constant_htons(0x0040)
|
||||
#define IB_PMA_SELX_PORT_MULTI_RCV_PACKETS __constant_htons(0x0080)
|
||||
#define IB_PMA_SELX_PORT_XMIT_DATA cpu_to_be16(0x0001)
|
||||
#define IB_PMA_SELX_PORT_RCV_DATA cpu_to_be16(0x0002)
|
||||
#define IB_PMA_SELX_PORT_XMIT_PACKETS cpu_to_be16(0x0004)
|
||||
#define IB_PMA_SELX_PORT_RCV_PACKETS cpu_to_be16(0x0008)
|
||||
#define IB_PMA_SELX_PORT_UNI_XMIT_PACKETS cpu_to_be16(0x0010)
|
||||
#define IB_PMA_SELX_PORT_UNI_RCV_PACKETS cpu_to_be16(0x0020)
|
||||
#define IB_PMA_SELX_PORT_MULTI_XMIT_PACKETS cpu_to_be16(0x0040)
|
||||
#define IB_PMA_SELX_PORT_MULTI_RCV_PACKETS cpu_to_be16(0x0080)
|
||||
|
||||
static int recv_pma_get_classportinfo(struct ib_perf *pmp)
|
||||
{
|
||||
@@ -933,7 +933,7 @@ static int recv_pma_get_classportinfo(struct ib_perf *pmp)
|
||||
pmp->status |= IB_SMP_INVALID_FIELD;
|
||||
|
||||
/* Indicate AllPortSelect is valid (only one port anyway) */
|
||||
p->cap_mask = __constant_cpu_to_be16(1 << 8);
|
||||
p->cap_mask = cpu_to_be16(1 << 8);
|
||||
p->base_version = 1;
|
||||
p->class_version = 1;
|
||||
/*
|
||||
@@ -951,12 +951,11 @@ static int recv_pma_get_classportinfo(struct ib_perf *pmp)
|
||||
* We support 5 counters which only count the mandatory quantities.
|
||||
*/
|
||||
#define COUNTER_MASK(q, n) (q << ((9 - n) * 3))
|
||||
#define COUNTER_MASK0_9 \
|
||||
__constant_cpu_to_be32(COUNTER_MASK(1, 0) | \
|
||||
COUNTER_MASK(1, 1) | \
|
||||
COUNTER_MASK(1, 2) | \
|
||||
COUNTER_MASK(1, 3) | \
|
||||
COUNTER_MASK(1, 4))
|
||||
#define COUNTER_MASK0_9 cpu_to_be32(COUNTER_MASK(1, 0) | \
|
||||
COUNTER_MASK(1, 1) | \
|
||||
COUNTER_MASK(1, 2) | \
|
||||
COUNTER_MASK(1, 3) | \
|
||||
COUNTER_MASK(1, 4))
|
||||
|
||||
static int recv_pma_get_portsamplescontrol(struct ib_perf *pmp,
|
||||
struct ib_device *ibdev, u8 port)
|
||||
@@ -1137,7 +1136,7 @@ static int recv_pma_get_portsamplesresult_ext(struct ib_perf *pmp,
|
||||
status = dev->pma_sample_status;
|
||||
p->sample_status = cpu_to_be16(status);
|
||||
/* 64 bits */
|
||||
p->extended_width = __constant_cpu_to_be32(0x80000000);
|
||||
p->extended_width = cpu_to_be32(0x80000000);
|
||||
for (i = 0; i < ARRAY_SIZE(dev->pma_counter_select); i++)
|
||||
p->counter[i] = (status != IB_PMA_SAMPLE_STATUS_DONE) ? 0 :
|
||||
cpu_to_be64(
|
||||
@@ -1185,7 +1184,7 @@ static int recv_pma_get_portcounters(struct ib_perf *pmp,
|
||||
pmp->status |= IB_SMP_INVALID_FIELD;
|
||||
|
||||
if (cntrs.symbol_error_counter > 0xFFFFUL)
|
||||
p->symbol_error_counter = __constant_cpu_to_be16(0xFFFF);
|
||||
p->symbol_error_counter = cpu_to_be16(0xFFFF);
|
||||
else
|
||||
p->symbol_error_counter =
|
||||
cpu_to_be16((u16)cntrs.symbol_error_counter);
|
||||
@@ -1199,17 +1198,17 @@ static int recv_pma_get_portcounters(struct ib_perf *pmp,
|
||||
else
|
||||
p->link_downed_counter = (u8)cntrs.link_downed_counter;
|
||||
if (cntrs.port_rcv_errors > 0xFFFFUL)
|
||||
p->port_rcv_errors = __constant_cpu_to_be16(0xFFFF);
|
||||
p->port_rcv_errors = cpu_to_be16(0xFFFF);
|
||||
else
|
||||
p->port_rcv_errors =
|
||||
cpu_to_be16((u16) cntrs.port_rcv_errors);
|
||||
if (cntrs.port_rcv_remphys_errors > 0xFFFFUL)
|
||||
p->port_rcv_remphys_errors = __constant_cpu_to_be16(0xFFFF);
|
||||
p->port_rcv_remphys_errors = cpu_to_be16(0xFFFF);
|
||||
else
|
||||
p->port_rcv_remphys_errors =
|
||||
cpu_to_be16((u16)cntrs.port_rcv_remphys_errors);
|
||||
if (cntrs.port_xmit_discards > 0xFFFFUL)
|
||||
p->port_xmit_discards = __constant_cpu_to_be16(0xFFFF);
|
||||
p->port_xmit_discards = cpu_to_be16(0xFFFF);
|
||||
else
|
||||
p->port_xmit_discards =
|
||||
cpu_to_be16((u16)cntrs.port_xmit_discards);
|
||||
@@ -1220,24 +1219,24 @@ static int recv_pma_get_portcounters(struct ib_perf *pmp,
|
||||
p->lli_ebor_errors = (cntrs.local_link_integrity_errors << 4) |
|
||||
cntrs.excessive_buffer_overrun_errors;
|
||||
if (cntrs.vl15_dropped > 0xFFFFUL)
|
||||
p->vl15_dropped = __constant_cpu_to_be16(0xFFFF);
|
||||
p->vl15_dropped = cpu_to_be16(0xFFFF);
|
||||
else
|
||||
p->vl15_dropped = cpu_to_be16((u16)cntrs.vl15_dropped);
|
||||
if (cntrs.port_xmit_data > 0xFFFFFFFFUL)
|
||||
p->port_xmit_data = __constant_cpu_to_be32(0xFFFFFFFF);
|
||||
p->port_xmit_data = cpu_to_be32(0xFFFFFFFF);
|
||||
else
|
||||
p->port_xmit_data = cpu_to_be32((u32)cntrs.port_xmit_data);
|
||||
if (cntrs.port_rcv_data > 0xFFFFFFFFUL)
|
||||
p->port_rcv_data = __constant_cpu_to_be32(0xFFFFFFFF);
|
||||
p->port_rcv_data = cpu_to_be32(0xFFFFFFFF);
|
||||
else
|
||||
p->port_rcv_data = cpu_to_be32((u32)cntrs.port_rcv_data);
|
||||
if (cntrs.port_xmit_packets > 0xFFFFFFFFUL)
|
||||
p->port_xmit_packets = __constant_cpu_to_be32(0xFFFFFFFF);
|
||||
p->port_xmit_packets = cpu_to_be32(0xFFFFFFFF);
|
||||
else
|
||||
p->port_xmit_packets =
|
||||
cpu_to_be32((u32)cntrs.port_xmit_packets);
|
||||
if (cntrs.port_rcv_packets > 0xFFFFFFFFUL)
|
||||
p->port_rcv_packets = __constant_cpu_to_be32(0xFFFFFFFF);
|
||||
p->port_rcv_packets = cpu_to_be32(0xFFFFFFFF);
|
||||
else
|
||||
p->port_rcv_packets =
|
||||
cpu_to_be32((u32) cntrs.port_rcv_packets);
|
||||
|
@@ -1744,7 +1744,7 @@ void ipath_rc_rcv(struct ipath_ibdev *dev, struct ipath_ib_header *hdr,
|
||||
/* Signal completion event if the solicited bit is set. */
|
||||
ipath_cq_enter(to_icq(qp->ibqp.recv_cq), &wc,
|
||||
(ohdr->bth[0] &
|
||||
__constant_cpu_to_be32(1 << 23)) != 0);
|
||||
cpu_to_be32(1 << 23)) != 0);
|
||||
break;
|
||||
|
||||
case OP(RDMA_WRITE_FIRST):
|
||||
|
@@ -781,10 +781,10 @@ retry:
|
||||
descqp = &dd->ipath_sdma_descq[dd->ipath_sdma_descq_cnt].qw[0];
|
||||
descqp -= 2;
|
||||
/* SDmaLastDesc */
|
||||
descqp[0] |= __constant_cpu_to_le64(1ULL << 11);
|
||||
descqp[0] |= cpu_to_le64(1ULL << 11);
|
||||
if (tx->txreq.flags & IPATH_SDMA_TXREQ_F_INTREQ) {
|
||||
/* SDmaIntReq */
|
||||
descqp[0] |= __constant_cpu_to_le64(1ULL << 15);
|
||||
descqp[0] |= cpu_to_le64(1ULL << 15);
|
||||
}
|
||||
|
||||
/* Commit writes to memory and advance the tail on the chip */
|
||||
|
@@ -419,7 +419,7 @@ void ipath_uc_rcv(struct ipath_ibdev *dev, struct ipath_ib_header *hdr,
|
||||
/* Signal completion event if the solicited bit is set. */
|
||||
ipath_cq_enter(to_icq(qp->ibqp.recv_cq), &wc,
|
||||
(ohdr->bth[0] &
|
||||
__constant_cpu_to_be32(1 << 23)) != 0);
|
||||
cpu_to_be32(1 << 23)) != 0);
|
||||
break;
|
||||
|
||||
case OP(RDMA_WRITE_FIRST):
|
||||
|
@@ -370,7 +370,7 @@ int ipath_make_ud_req(struct ipath_qp *qp)
|
||||
*/
|
||||
ohdr->bth[1] = ah_attr->dlid >= IPATH_MULTICAST_LID_BASE &&
|
||||
ah_attr->dlid != IPATH_PERMISSIVE_LID ?
|
||||
__constant_cpu_to_be32(IPATH_MULTICAST_QPN) :
|
||||
cpu_to_be32(IPATH_MULTICAST_QPN) :
|
||||
cpu_to_be32(wqe->wr.wr.ud.remote_qpn);
|
||||
ohdr->bth[2] = cpu_to_be32(qp->s_next_psn++ & IPATH_PSN_MASK);
|
||||
/*
|
||||
@@ -573,7 +573,7 @@ void ipath_ud_rcv(struct ipath_ibdev *dev, struct ipath_ib_header *hdr,
|
||||
/* Signal completion event if the solicited bit is set. */
|
||||
ipath_cq_enter(to_icq(qp->ibqp.recv_cq), &wc,
|
||||
(ohdr->bth[0] &
|
||||
__constant_cpu_to_be32(1 << 23)) != 0);
|
||||
cpu_to_be32(1 << 23)) != 0);
|
||||
|
||||
bail:;
|
||||
}
|
||||
|
@@ -209,20 +209,20 @@ void ipath_release_user_pages_on_close(struct page **p, size_t num_pages)
|
||||
|
||||
mm = get_task_mm(current);
|
||||
if (!mm)
|
||||
goto bail;
|
||||
return;
|
||||
|
||||
work = kmalloc(sizeof(*work), GFP_KERNEL);
|
||||
if (!work)
|
||||
goto bail_mm;
|
||||
|
||||
goto bail;
|
||||
|
||||
INIT_WORK(&work->work, user_pages_account);
|
||||
work->mm = mm;
|
||||
work->num_pages = num_pages;
|
||||
|
||||
schedule_work(&work->work);
|
||||
return;
|
||||
|
||||
bail_mm:
|
||||
mmput(mm);
|
||||
bail:
|
||||
return;
|
||||
}
|
||||
|
@@ -667,13 +667,13 @@ static inline __le64 ipath_sdma_make_desc0(struct ipath_devdata *dd,
|
||||
|
||||
static inline __le64 ipath_sdma_make_first_desc0(__le64 descq)
|
||||
{
|
||||
return descq | __constant_cpu_to_le64(1ULL << 12);
|
||||
return descq | cpu_to_le64(1ULL << 12);
|
||||
}
|
||||
|
||||
static inline __le64 ipath_sdma_make_last_desc0(__le64 descq)
|
||||
{
|
||||
/* last */ /* dma head */
|
||||
return descq | __constant_cpu_to_le64(1ULL << 11 | 1ULL << 13);
|
||||
return descq | cpu_to_le64(1ULL << 11 | 1ULL << 13);
|
||||
}
|
||||
|
||||
static inline __le64 ipath_sdma_make_desc1(u64 addr)
|
||||
@@ -763,7 +763,7 @@ static int ipath_user_sdma_push_pkts(struct ipath_devdata *dd,
|
||||
if (ofs >= IPATH_SMALLBUF_DWORDS) {
|
||||
for (i = 0; i < pkt->naddr; i++) {
|
||||
dd->ipath_sdma_descq[dtail].qw[0] |=
|
||||
__constant_cpu_to_le64(1ULL << 14);
|
||||
cpu_to_le64(1ULL << 14);
|
||||
if (++dtail == dd->ipath_sdma_descq_cnt)
|
||||
dtail = 0;
|
||||
}
|
||||
|
@@ -1585,7 +1585,7 @@ static int ipath_query_port(struct ib_device *ibdev,
|
||||
u64 ibcstat;
|
||||
|
||||
memset(props, 0, sizeof(*props));
|
||||
props->lid = lid ? lid : __constant_be16_to_cpu(IB_LID_PERMISSIVE);
|
||||
props->lid = lid ? lid : be16_to_cpu(IB_LID_PERMISSIVE);
|
||||
props->lmc = dd->ipath_lmc;
|
||||
props->sm_lid = dev->sm_lid;
|
||||
props->sm_sl = dev->sm_sl;
|
||||
|
@@ -86,11 +86,11 @@
|
||||
#define IB_PMA_SAMPLE_STATUS_RUNNING 0x02
|
||||
|
||||
/* Mandatory IB performance counter select values. */
|
||||
#define IB_PMA_PORT_XMIT_DATA __constant_htons(0x0001)
|
||||
#define IB_PMA_PORT_RCV_DATA __constant_htons(0x0002)
|
||||
#define IB_PMA_PORT_XMIT_PKTS __constant_htons(0x0003)
|
||||
#define IB_PMA_PORT_RCV_PKTS __constant_htons(0x0004)
|
||||
#define IB_PMA_PORT_XMIT_WAIT __constant_htons(0x0005)
|
||||
#define IB_PMA_PORT_XMIT_DATA cpu_to_be16(0x0001)
|
||||
#define IB_PMA_PORT_RCV_DATA cpu_to_be16(0x0002)
|
||||
#define IB_PMA_PORT_XMIT_PKTS cpu_to_be16(0x0003)
|
||||
#define IB_PMA_PORT_RCV_PKTS cpu_to_be16(0x0004)
|
||||
#define IB_PMA_PORT_XMIT_WAIT cpu_to_be16(0x0005)
|
||||
|
||||
struct ib_reth {
|
||||
__be64 vaddr;
|
||||
|
新增問題並參考
封鎖使用者