mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-02-23 23:32:30 -05:00
IB/hfi1: Constify struct flag_table
'struct flag_table' are not modified in this driver. Constifying this structure moves some data to a read-only section, so increase overall security. On a x86_64, with allmodconfig: Before: ====== text data bss dec hex filename 302932 40271 112 343315 53d13 drivers/infiniband/hw/hfi1/chip.o After: ===== text data bss dec hex filename 311636 31567 112 343315 53d13 drivers/infiniband/hw/hfi1/chip.o Link: https://lore.kernel.org/r/782b6a648bfbbf2bb83f81a73c0460b5bb7642a1.1720959310.git.christophe.jaillet@wanadoo.fr Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
This commit is contained in:
committed by
Jason Gunthorpe
parent
1df03a4b44
commit
887cd308fd
@@ -251,7 +251,7 @@ struct flag_table {
|
||||
/*
|
||||
* CCE Error flags.
|
||||
*/
|
||||
static struct flag_table cce_err_status_flags[] = {
|
||||
static const struct flag_table cce_err_status_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY0("CceCsrParityErr",
|
||||
CCE_ERR_STATUS_CCE_CSR_PARITY_ERR_SMASK),
|
||||
/* 1*/ FLAG_ENTRY0("CceCsrReadBadAddrErr",
|
||||
@@ -341,7 +341,7 @@ static struct flag_table cce_err_status_flags[] = {
|
||||
* Misc Error flags
|
||||
*/
|
||||
#define MES(text) MISC_ERR_STATUS_MISC_##text##_ERR_SMASK
|
||||
static struct flag_table misc_err_status_flags[] = {
|
||||
static const struct flag_table misc_err_status_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY0("CSR_PARITY", MES(CSR_PARITY)),
|
||||
/* 1*/ FLAG_ENTRY0("CSR_READ_BAD_ADDR", MES(CSR_READ_BAD_ADDR)),
|
||||
/* 2*/ FLAG_ENTRY0("CSR_WRITE_BAD_ADDR", MES(CSR_WRITE_BAD_ADDR)),
|
||||
@@ -360,7 +360,7 @@ static struct flag_table misc_err_status_flags[] = {
|
||||
/*
|
||||
* TXE PIO Error flags and consequences
|
||||
*/
|
||||
static struct flag_table pio_err_status_flags[] = {
|
||||
static const struct flag_table pio_err_status_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY("PioWriteBadCtxt",
|
||||
SEC_WRITE_DROPPED,
|
||||
SEND_PIO_ERR_STATUS_PIO_WRITE_BAD_CTXT_ERR_SMASK),
|
||||
@@ -502,7 +502,7 @@ static struct flag_table pio_err_status_flags[] = {
|
||||
/*
|
||||
* TXE SDMA Error flags
|
||||
*/
|
||||
static struct flag_table sdma_err_status_flags[] = {
|
||||
static const struct flag_table sdma_err_status_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY0("SDmaRpyTagErr",
|
||||
SEND_DMA_ERR_STATUS_SDMA_RPY_TAG_ERR_SMASK),
|
||||
/* 1*/ FLAG_ENTRY0("SDmaCsrParityErr",
|
||||
@@ -530,7 +530,7 @@ static struct flag_table sdma_err_status_flags[] = {
|
||||
* TXE Egress Error flags
|
||||
*/
|
||||
#define SEES(text) SEND_EGRESS_ERR_STATUS_##text##_ERR_SMASK
|
||||
static struct flag_table egress_err_status_flags[] = {
|
||||
static const struct flag_table egress_err_status_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY0("TxPktIntegrityMemCorErr", SEES(TX_PKT_INTEGRITY_MEM_COR)),
|
||||
/* 1*/ FLAG_ENTRY0("TxPktIntegrityMemUncErr", SEES(TX_PKT_INTEGRITY_MEM_UNC)),
|
||||
/* 2 reserved */
|
||||
@@ -631,7 +631,7 @@ static struct flag_table egress_err_status_flags[] = {
|
||||
* TXE Egress Error Info flags
|
||||
*/
|
||||
#define SEEI(text) SEND_EGRESS_ERR_INFO_##text##_ERR_SMASK
|
||||
static struct flag_table egress_err_info_flags[] = {
|
||||
static const struct flag_table egress_err_info_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY0("Reserved", 0ull),
|
||||
/* 1*/ FLAG_ENTRY0("VLErr", SEEI(VL)),
|
||||
/* 2*/ FLAG_ENTRY0("JobKeyErr", SEEI(JOB_KEY)),
|
||||
@@ -680,7 +680,7 @@ static struct flag_table egress_err_info_flags[] = {
|
||||
* TXE Send error flags
|
||||
*/
|
||||
#define SES(name) SEND_ERR_STATUS_SEND_##name##_ERR_SMASK
|
||||
static struct flag_table send_err_status_flags[] = {
|
||||
static const struct flag_table send_err_status_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY0("SendCsrParityErr", SES(CSR_PARITY)),
|
||||
/* 1*/ FLAG_ENTRY0("SendCsrReadBadAddrErr", SES(CSR_READ_BAD_ADDR)),
|
||||
/* 2*/ FLAG_ENTRY0("SendCsrWriteBadAddrErr", SES(CSR_WRITE_BAD_ADDR))
|
||||
@@ -689,7 +689,7 @@ static struct flag_table send_err_status_flags[] = {
|
||||
/*
|
||||
* TXE Send Context Error flags and consequences
|
||||
*/
|
||||
static struct flag_table sc_err_status_flags[] = {
|
||||
static const struct flag_table sc_err_status_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY("InconsistentSop",
|
||||
SEC_PACKET_DROPPED | SEC_SC_HALTED,
|
||||
SEND_CTXT_ERR_STATUS_PIO_INCONSISTENT_SOP_ERR_SMASK),
|
||||
@@ -712,7 +712,7 @@ static struct flag_table sc_err_status_flags[] = {
|
||||
* RXE Receive Error flags
|
||||
*/
|
||||
#define RXES(name) RCV_ERR_STATUS_RX_##name##_ERR_SMASK
|
||||
static struct flag_table rxe_err_status_flags[] = {
|
||||
static const struct flag_table rxe_err_status_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY0("RxDmaCsrCorErr", RXES(DMA_CSR_COR)),
|
||||
/* 1*/ FLAG_ENTRY0("RxDcIntfParityErr", RXES(DC_INTF_PARITY)),
|
||||
/* 2*/ FLAG_ENTRY0("RxRcvHdrUncErr", RXES(RCV_HDR_UNC)),
|
||||
@@ -847,7 +847,7 @@ static struct flag_table rxe_err_status_flags[] = {
|
||||
* DCC Error Flags
|
||||
*/
|
||||
#define DCCE(name) DCC_ERR_FLG_##name##_SMASK
|
||||
static struct flag_table dcc_err_flags[] = {
|
||||
static const struct flag_table dcc_err_flags[] = {
|
||||
FLAG_ENTRY0("bad_l2_err", DCCE(BAD_L2_ERR)),
|
||||
FLAG_ENTRY0("bad_sc_err", DCCE(BAD_SC_ERR)),
|
||||
FLAG_ENTRY0("bad_mid_tail_err", DCCE(BAD_MID_TAIL_ERR)),
|
||||
@@ -900,7 +900,7 @@ static struct flag_table dcc_err_flags[] = {
|
||||
* LCB error flags
|
||||
*/
|
||||
#define LCBE(name) DC_LCB_ERR_FLG_##name##_SMASK
|
||||
static struct flag_table lcb_err_flags[] = {
|
||||
static const struct flag_table lcb_err_flags[] = {
|
||||
/* 0*/ FLAG_ENTRY0("CSR_PARITY_ERR", LCBE(CSR_PARITY_ERR)),
|
||||
/* 1*/ FLAG_ENTRY0("INVALID_CSR_ADDR", LCBE(INVALID_CSR_ADDR)),
|
||||
/* 2*/ FLAG_ENTRY0("RST_FOR_FAILED_DESKEW", LCBE(RST_FOR_FAILED_DESKEW)),
|
||||
@@ -943,7 +943,7 @@ static struct flag_table lcb_err_flags[] = {
|
||||
* DC8051 Error Flags
|
||||
*/
|
||||
#define D8E(name) DC_DC8051_ERR_FLG_##name##_SMASK
|
||||
static struct flag_table dc8051_err_flags[] = {
|
||||
static const struct flag_table dc8051_err_flags[] = {
|
||||
FLAG_ENTRY0("SET_BY_8051", D8E(SET_BY_8051)),
|
||||
FLAG_ENTRY0("LOST_8051_HEART_BEAT", D8E(LOST_8051_HEART_BEAT)),
|
||||
FLAG_ENTRY0("CRAM_MBE", D8E(CRAM_MBE)),
|
||||
@@ -962,7 +962,7 @@ static struct flag_table dc8051_err_flags[] = {
|
||||
*
|
||||
* Flags in DC8051_DBG_ERR_INFO_SET_BY_8051.ERROR field.
|
||||
*/
|
||||
static struct flag_table dc8051_info_err_flags[] = {
|
||||
static const struct flag_table dc8051_info_err_flags[] = {
|
||||
FLAG_ENTRY0("Spico ROM check failed", SPICO_ROM_FAILED),
|
||||
FLAG_ENTRY0("Unknown frame received", UNKNOWN_FRAME),
|
||||
FLAG_ENTRY0("Target BER not met", TARGET_BER_NOT_MET),
|
||||
@@ -986,7 +986,7 @@ static struct flag_table dc8051_info_err_flags[] = {
|
||||
*
|
||||
* Flags in DC8051_DBG_ERR_INFO_SET_BY_8051.HOST_MSG field.
|
||||
*/
|
||||
static struct flag_table dc8051_info_host_msg_flags[] = {
|
||||
static const struct flag_table dc8051_info_host_msg_flags[] = {
|
||||
FLAG_ENTRY0("Host request done", 0x0001),
|
||||
FLAG_ENTRY0("BC PWR_MGM message", 0x0002),
|
||||
FLAG_ENTRY0("BC SMA message", 0x0004),
|
||||
@@ -5275,7 +5275,7 @@ static int append_str(char *buf, char **curp, int *lenp, const char *s)
|
||||
* the buffer. End in '*' if the buffer is too short.
|
||||
*/
|
||||
static char *flag_string(char *buf, int buf_len, u64 flags,
|
||||
struct flag_table *table, int table_size)
|
||||
const struct flag_table *table, int table_size)
|
||||
{
|
||||
char extra[32];
|
||||
char *p = buf;
|
||||
|
||||
Reference in New Issue
Block a user