aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet
diff options
context:
space:
mode:
authorAlexander Duyck <alexander.h.duyck@intel.com>2016-09-12 17:18:42 -0400
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2016-09-25 01:41:47 -0400
commit1eb846ac90b956e52f4269d80f13cfbe1df6850b (patch)
treefcdf6144bad0fad8ea6cf7a0b3c8927c22ff8166 /drivers/net/ethernet
parent5e02f2837349b399e48fd2a5e5149c9ee9c27cdd (diff)
i40e: Strip out debugfs hook for Flow Director filter programming
This interface was only ever meant for debug only. Since it is not supposed to be here we are removing it. Change-ID: Id771a1e5e7d3e2b4b7f56591b61fb48c921e1d04 Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet')
-rw-r--r--drivers/net/ethernet/intel/i40e/i40e.h2
-rw-r--r--drivers/net/ethernet/intel/i40e/i40e_debugfs.c80
-rw-r--r--drivers/net/ethernet/intel/i40e/i40e_txrx.c5
3 files changed, 3 insertions, 84 deletions
diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h
index 6b22df62f018..2030d7c1dc94 100644
--- a/drivers/net/ethernet/intel/i40e/i40e.h
+++ b/drivers/net/ethernet/intel/i40e/i40e.h
@@ -710,8 +710,6 @@ struct rtnl_link_stats64 *i40e_get_vsi_stats_struct(struct i40e_vsi *vsi);
710int i40e_fetch_switch_configuration(struct i40e_pf *pf, 710int i40e_fetch_switch_configuration(struct i40e_pf *pf,
711 bool printconfig); 711 bool printconfig);
712 712
713int i40e_program_fdir_filter(struct i40e_fdir_filter *fdir_data, u8 *raw_packet,
714 struct i40e_pf *pf, bool add);
715int i40e_add_del_fdir(struct i40e_vsi *vsi, 713int i40e_add_del_fdir(struct i40e_vsi *vsi,
716 struct i40e_fdir_filter *input, bool add); 714 struct i40e_fdir_filter *input, bool add);
717void i40e_fdir_check_and_reenable(struct i40e_pf *pf); 715void i40e_fdir_check_and_reenable(struct i40e_pf *pf);
diff --git a/drivers/net/ethernet/intel/i40e/i40e_debugfs.c b/drivers/net/ethernet/intel/i40e/i40e_debugfs.c
index 8555f04002da..0c1875b5b16d 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_debugfs.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_debugfs.c
@@ -1430,84 +1430,6 @@ static ssize_t i40e_dbg_command_write(struct file *filp,
1430 buff = NULL; 1430 buff = NULL;
1431 kfree(desc); 1431 kfree(desc);
1432 desc = NULL; 1432 desc = NULL;
1433 } else if ((strncmp(cmd_buf, "add fd_filter", 13) == 0) ||
1434 (strncmp(cmd_buf, "rem fd_filter", 13) == 0)) {
1435 struct i40e_fdir_filter fd_data;
1436 u16 packet_len, i, j = 0;
1437 char *asc_packet;
1438 u8 *raw_packet;
1439 bool add = false;
1440 int ret;
1441
1442 if (!(pf->flags & I40E_FLAG_FD_SB_ENABLED))
1443 goto command_write_done;
1444
1445 if (strncmp(cmd_buf, "add", 3) == 0)
1446 add = true;
1447
1448 if (add && (pf->auto_disable_flags & I40E_FLAG_FD_SB_ENABLED))
1449 goto command_write_done;
1450
1451 asc_packet = kzalloc(I40E_FDIR_MAX_RAW_PACKET_SIZE,
1452 GFP_KERNEL);
1453 if (!asc_packet)
1454 goto command_write_done;
1455
1456 raw_packet = kzalloc(I40E_FDIR_MAX_RAW_PACKET_SIZE,
1457 GFP_KERNEL);
1458
1459 if (!raw_packet) {
1460 kfree(asc_packet);
1461 asc_packet = NULL;
1462 goto command_write_done;
1463 }
1464
1465 cnt = sscanf(&cmd_buf[13],
1466 "%hx %2hhx %2hhx %hx %2hhx %2hhx %hx %x %hd %511s",
1467 &fd_data.q_index,
1468 &fd_data.flex_off, &fd_data.pctype,
1469 &fd_data.dest_vsi, &fd_data.dest_ctl,
1470 &fd_data.fd_status, &fd_data.cnt_index,
1471 &fd_data.fd_id, &packet_len, asc_packet);
1472 if (cnt != 10) {
1473 dev_info(&pf->pdev->dev,
1474 "program fd_filter: bad command string, cnt=%d\n",
1475 cnt);
1476 kfree(asc_packet);
1477 asc_packet = NULL;
1478 kfree(raw_packet);
1479 goto command_write_done;
1480 }
1481
1482 /* fix packet length if user entered 0 */
1483 if (packet_len == 0)
1484 packet_len = I40E_FDIR_MAX_RAW_PACKET_SIZE;
1485
1486 /* make sure to check the max as well */
1487 packet_len = min_t(u16,
1488 packet_len, I40E_FDIR_MAX_RAW_PACKET_SIZE);
1489
1490 for (i = 0; i < packet_len; i++) {
1491 cnt = sscanf(&asc_packet[j], "%2hhx ", &raw_packet[i]);
1492 if (!cnt)
1493 break;
1494 j += 3;
1495 }
1496 dev_info(&pf->pdev->dev, "FD raw packet dump\n");
1497 print_hex_dump(KERN_INFO, "FD raw packet: ",
1498 DUMP_PREFIX_OFFSET, 16, 1,
1499 raw_packet, packet_len, true);
1500 ret = i40e_program_fdir_filter(&fd_data, raw_packet, pf, add);
1501 if (!ret) {
1502 dev_info(&pf->pdev->dev, "Filter command send Status : Success\n");
1503 } else {
1504 dev_info(&pf->pdev->dev,
1505 "Filter command send failed %d\n", ret);
1506 }
1507 kfree(raw_packet);
1508 raw_packet = NULL;
1509 kfree(asc_packet);
1510 asc_packet = NULL;
1511 } else if (strncmp(cmd_buf, "fd current cnt", 14) == 0) { 1433 } else if (strncmp(cmd_buf, "fd current cnt", 14) == 0) {
1512 dev_info(&pf->pdev->dev, "FD current total filter count for this interface: %d\n", 1434 dev_info(&pf->pdev->dev, "FD current total filter count for this interface: %d\n",
1513 i40e_get_current_fd_count(pf)); 1435 i40e_get_current_fd_count(pf));
@@ -1732,8 +1654,6 @@ static ssize_t i40e_dbg_command_write(struct file *filp,
1732 dev_info(&pf->pdev->dev, " globr\n"); 1654 dev_info(&pf->pdev->dev, " globr\n");
1733 dev_info(&pf->pdev->dev, " send aq_cmd <flags> <opcode> <datalen> <retval> <cookie_h> <cookie_l> <param0> <param1> <param2> <param3>\n"); 1655 dev_info(&pf->pdev->dev, " send aq_cmd <flags> <opcode> <datalen> <retval> <cookie_h> <cookie_l> <param0> <param1> <param2> <param3>\n");
1734 dev_info(&pf->pdev->dev, " send indirect aq_cmd <flags> <opcode> <datalen> <retval> <cookie_h> <cookie_l> <param0> <param1> <param2> <param3> <buffer_len>\n"); 1656 dev_info(&pf->pdev->dev, " send indirect aq_cmd <flags> <opcode> <datalen> <retval> <cookie_h> <cookie_l> <param0> <param1> <param2> <param3> <buffer_len>\n");
1735 dev_info(&pf->pdev->dev, " add fd_filter <dest q_index> <flex_off> <pctype> <dest_vsi> <dest_ctl> <fd_status> <cnt_index> <fd_id> <packet_len> <packet>\n");
1736 dev_info(&pf->pdev->dev, " rem fd_filter <dest q_index> <flex_off> <pctype> <dest_vsi> <dest_ctl> <fd_status> <cnt_index> <fd_id> <packet_len> <packet>\n");
1737 dev_info(&pf->pdev->dev, " fd current cnt"); 1657 dev_info(&pf->pdev->dev, " fd current cnt");
1738 dev_info(&pf->pdev->dev, " lldp start\n"); 1658 dev_info(&pf->pdev->dev, " lldp start\n");
1739 dev_info(&pf->pdev->dev, " lldp stop\n"); 1659 dev_info(&pf->pdev->dev, " lldp stop\n");
diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
index ef9b8d7f85d4..5237c491af89 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
@@ -111,8 +111,9 @@ static void i40e_fdir(struct i40e_ring *tx_ring,
111 * @pf: The PF pointer 111 * @pf: The PF pointer
112 * @add: True for add/update, False for remove 112 * @add: True for add/update, False for remove
113 **/ 113 **/
114int i40e_program_fdir_filter(struct i40e_fdir_filter *fdir_data, u8 *raw_packet, 114static int i40e_program_fdir_filter(struct i40e_fdir_filter *fdir_data,
115 struct i40e_pf *pf, bool add) 115 u8 *raw_packet, struct i40e_pf *pf,
116 bool add)
116{ 117{
117 struct i40e_tx_buffer *tx_buf, *first; 118 struct i40e_tx_buffer *tx_buf, *first;
118 struct i40e_tx_desc *tx_desc; 119 struct i40e_tx_desc *tx_desc;