Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04d1c227 authored by Zhu Yi's avatar Zhu Yi Committed by John W. Linville
Browse files

iwmc3200wifi: remove "_safe" for some list_for_each_entry usage



Use list_for_each_entry instead of list_for_each_entry_safe in
places iteration against list entry removal is not required.

Signed-off-by: default avatarZhu Yi <yi.zhu@intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 7d49c611
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -263,7 +263,7 @@ static int iwm_cfg80211_get_station(struct wiphy *wiphy,
int iwm_cfg80211_inform_bss(struct iwm_priv *iwm)
int iwm_cfg80211_inform_bss(struct iwm_priv *iwm)
{
{
	struct wiphy *wiphy = iwm_to_wiphy(iwm);
	struct wiphy *wiphy = iwm_to_wiphy(iwm);
	struct iwm_bss_info *bss, *next;
	struct iwm_bss_info *bss;
	struct iwm_umac_notif_bss_info *umac_bss;
	struct iwm_umac_notif_bss_info *umac_bss;
	struct ieee80211_mgmt *mgmt;
	struct ieee80211_mgmt *mgmt;
	struct ieee80211_channel *channel;
	struct ieee80211_channel *channel;
@@ -271,7 +271,7 @@ int iwm_cfg80211_inform_bss(struct iwm_priv *iwm)
	s32 signal;
	s32 signal;
	int freq;
	int freq;


	list_for_each_entry_safe(bss, next, &iwm->bss_list, node) {
	list_for_each_entry(bss, &iwm->bss_list, node) {
		umac_bss = bss->bss;
		umac_bss = bss->bss;
		mgmt = (struct ieee80211_mgmt *)(umac_bss->frame_buf);
		mgmt = (struct ieee80211_mgmt *)(umac_bss->frame_buf);


+5 −4
Original line number Original line Diff line number Diff line
@@ -265,7 +265,7 @@ static ssize_t iwm_debugfs_rx_ticket_read(struct file *filp,
					  size_t count, loff_t *ppos)
					  size_t count, loff_t *ppos)
{
{
	struct iwm_priv *iwm = filp->private_data;
	struct iwm_priv *iwm = filp->private_data;
	struct iwm_rx_ticket_node *ticket, *next;
	struct iwm_rx_ticket_node *ticket;
	char *buf;
	char *buf;
	int buf_len = 4096, i;
	int buf_len = 4096, i;
	size_t len = 0;
	size_t len = 0;
@@ -280,7 +280,7 @@ static ssize_t iwm_debugfs_rx_ticket_read(struct file *filp,
	if (!buf)
	if (!buf)
		return -ENOMEM;
		return -ENOMEM;


	list_for_each_entry_safe(ticket, next, &iwm->rx_tickets, node) {
	list_for_each_entry(ticket, &iwm->rx_tickets, node) {
		len += snprintf(buf + len, buf_len - len, "Ticket #%d\n",
		len += snprintf(buf + len, buf_len - len, "Ticket #%d\n",
				ticket->ticket->id);
				ticket->ticket->id);
		len += snprintf(buf + len, buf_len - len, "\taction: 0x%x\n",
		len += snprintf(buf + len, buf_len - len, "\taction: 0x%x\n",
@@ -290,12 +290,13 @@ static ssize_t iwm_debugfs_rx_ticket_read(struct file *filp,
	}
	}


	for (i = 0; i < IWM_RX_ID_HASH; i++) {
	for (i = 0; i < IWM_RX_ID_HASH; i++) {
		struct iwm_rx_packet *packet, *nxt;
		struct iwm_rx_packet *packet;
		struct list_head *pkt_list = &iwm->rx_packets[i];
		struct list_head *pkt_list = &iwm->rx_packets[i];

		if (!list_empty(pkt_list)) {
		if (!list_empty(pkt_list)) {
			len += snprintf(buf + len, buf_len - len,
			len += snprintf(buf + len, buf_len - len,
					"Packet hash #%d\n", i);
					"Packet hash #%d\n", i);
			list_for_each_entry_safe(packet, nxt, pkt_list, node) {
			list_for_each_entry(packet, pkt_list, node) {
				len += snprintf(buf + len, buf_len - len,
				len += snprintf(buf + len, buf_len - len,
						"\tPacket id:     %d\n",
						"\tPacket id:     %d\n",
						packet->id);
						packet->id);
+6 −6
Original line number Original line Diff line number Diff line
@@ -206,9 +206,9 @@ void iwm_cmd_flush(struct iwm_priv *iwm)


struct iwm_wifi_cmd *iwm_get_pending_wifi_cmd(struct iwm_priv *iwm, u16 seq_num)
struct iwm_wifi_cmd *iwm_get_pending_wifi_cmd(struct iwm_priv *iwm, u16 seq_num)
{
{
	struct iwm_wifi_cmd *cmd, *next;
	struct iwm_wifi_cmd *cmd;


	list_for_each_entry_safe(cmd, next, &iwm->wifi_pending_cmd, pending)
	list_for_each_entry(cmd, &iwm->wifi_pending_cmd, pending)
		if (cmd->seq_num == seq_num) {
		if (cmd->seq_num == seq_num) {
			list_del(&cmd->pending);
			list_del(&cmd->pending);
			return cmd;
			return cmd;
@@ -217,12 +217,12 @@ struct iwm_wifi_cmd *iwm_get_pending_wifi_cmd(struct iwm_priv *iwm, u16 seq_num)
	return NULL;
	return NULL;
}
}


struct iwm_nonwifi_cmd *
struct iwm_nonwifi_cmd *iwm_get_pending_nonwifi_cmd(struct iwm_priv *iwm,
iwm_get_pending_nonwifi_cmd(struct iwm_priv *iwm, u8 seq_num, u8 cmd_opcode)
						    u8 seq_num, u8 cmd_opcode)
{
{
	struct iwm_nonwifi_cmd *cmd, *next;
	struct iwm_nonwifi_cmd *cmd;


	list_for_each_entry_safe(cmd, next, &iwm->nonwifi_pending_cmd, pending)
	list_for_each_entry(cmd, &iwm->nonwifi_pending_cmd, pending)
		if ((cmd->seq_num == seq_num) &&
		if ((cmd->seq_num == seq_num) &&
		    (cmd->udma_cmd.opcode == cmd_opcode) &&
		    (cmd->udma_cmd.opcode == cmd_opcode) &&
		    (cmd->resp_received)) {
		    (cmd->resp_received)) {
+2 −2
Original line number Original line Diff line number Diff line
@@ -423,9 +423,9 @@ int iwm_notif_send(struct iwm_priv *iwm, struct iwm_wifi_cmd *cmd,
static struct iwm_notif *iwm_notif_find(struct iwm_priv *iwm, u32 cmd,
static struct iwm_notif *iwm_notif_find(struct iwm_priv *iwm, u32 cmd,
					u8 source)
					u8 source)
{
{
	struct iwm_notif *notif, *next;
	struct iwm_notif *notif;


	list_for_each_entry_safe(notif, next, &iwm->pending_notif, pending) {
	list_for_each_entry(notif, &iwm->pending_notif, pending) {
		if ((notif->cmd_id == cmd) && (notif->src == source)) {
		if ((notif->cmd_id == cmd) && (notif->src == source)) {
			list_del(&notif->pending);
			list_del(&notif->pending);
			return notif;
			return notif;
+6 −9
Original line number Original line Diff line number Diff line
@@ -342,12 +342,9 @@ static void iwm_rx_ticket_node_free(struct iwm_rx_ticket_node *ticket_node)
static struct iwm_rx_packet *iwm_rx_packet_get(struct iwm_priv *iwm, u16 id)
static struct iwm_rx_packet *iwm_rx_packet_get(struct iwm_priv *iwm, u16 id)
{
{
	u8 id_hash = IWM_RX_ID_GET_HASH(id);
	u8 id_hash = IWM_RX_ID_GET_HASH(id);
	struct list_head *packet_list;
	struct iwm_rx_packet *packet;
	struct iwm_rx_packet *packet, *next;

	packet_list = &iwm->rx_packets[id_hash];


	list_for_each_entry_safe(packet, next, packet_list, node)
	list_for_each_entry(packet, &iwm->rx_packets[id_hash], node)
		if (packet->id == id)
		if (packet->id == id)
			return packet;
			return packet;


@@ -771,7 +768,7 @@ static int iwm_mlme_update_bss_table(struct iwm_priv *iwm, u8 *buf,
			(struct iwm_umac_notif_bss_info *)buf;
			(struct iwm_umac_notif_bss_info *)buf;
	struct ieee80211_channel *channel;
	struct ieee80211_channel *channel;
	struct ieee80211_supported_band *band;
	struct ieee80211_supported_band *band;
	struct iwm_bss_info *bss, *next;
	struct iwm_bss_info *bss;
	s32 signal;
	s32 signal;
	int freq;
	int freq;
	u16 frame_len = le16_to_cpu(umac_bss->frame_len);
	u16 frame_len = le16_to_cpu(umac_bss->frame_len);
@@ -790,7 +787,7 @@ static int iwm_mlme_update_bss_table(struct iwm_priv *iwm, u8 *buf,
	IWM_DBG_MLME(iwm, DBG, "\tRSSI: %d\n", umac_bss->rssi);
	IWM_DBG_MLME(iwm, DBG, "\tRSSI: %d\n", umac_bss->rssi);
	IWM_DBG_MLME(iwm, DBG, "\tFrame Length: %d\n", frame_len);
	IWM_DBG_MLME(iwm, DBG, "\tFrame Length: %d\n", frame_len);


	list_for_each_entry_safe(bss, next, &iwm->bss_list, node)
	list_for_each_entry(bss, &iwm->bss_list, node)
		if (bss->bss->table_idx == umac_bss->table_idx)
		if (bss->bss->table_idx == umac_bss->table_idx)
			break;
			break;


@@ -1331,7 +1328,7 @@ static int iwm_rx_handle_nonwifi(struct iwm_priv *iwm, u8 *buf,
{
{
	u8 seq_num;
	u8 seq_num;
	struct iwm_udma_in_hdr *hdr = (struct iwm_udma_in_hdr *)buf;
	struct iwm_udma_in_hdr *hdr = (struct iwm_udma_in_hdr *)buf;
	struct iwm_nonwifi_cmd *cmd, *next;
	struct iwm_nonwifi_cmd *cmd;


	seq_num = GET_VAL32(hdr->cmd, UDMA_HDI_IN_CMD_NON_WIFI_HW_SEQ_NUM);
	seq_num = GET_VAL32(hdr->cmd, UDMA_HDI_IN_CMD_NON_WIFI_HW_SEQ_NUM);


@@ -1343,7 +1340,7 @@ static int iwm_rx_handle_nonwifi(struct iwm_priv *iwm, u8 *buf,
	 * That means we only support synchronised non wifi command response
	 * That means we only support synchronised non wifi command response
	 * schemes.
	 * schemes.
	 */
	 */
	list_for_each_entry_safe(cmd, next, &iwm->nonwifi_pending_cmd, pending)
	list_for_each_entry(cmd, &iwm->nonwifi_pending_cmd, pending)
		if (cmd->seq_num == seq_num) {
		if (cmd->seq_num == seq_num) {
			cmd->resp_received = 1;
			cmd->resp_received = 1;
			cmd->buf.len = buf_size;
			cmd->buf.len = buf_size;