All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Phillip Potter <phil@philpotter.co.uk>, gregkh@linuxfoundation.org
Cc: kbuild-all@lists.01.org, Larry.Finger@lwfinger.net,
	straube.linux@gmail.com, martin@kaiser.cx,
	linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 6/7] staging: r8188eu: convert DBG_88E calls in core/rtw_mlme_ext.c
Date: Mon, 10 Jan 2022 14:15:59 +0800	[thread overview]
Message-ID: <202201101405.RNRjMxAF-lkp@intel.com> (raw)
In-Reply-To: <20220109215427.887-7-phil@philpotter.co.uk>

Hi Phillip,

I love your patch! Yet something to improve:

[auto build test ERROR on staging/staging-testing]

url:    https://github.com/0day-ci/linux/commits/Phillip-Potter/staging-r8188eu-further-per-file-DBG_88E-cleanups/20220110-055642
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git fa783154524a71ab74e293cd8251155e5971952b
config: i386-allyesconfig (https://download.01.org/0day-ci/archive/20220110/202201101405.RNRjMxAF-lkp@intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://github.com/0day-ci/linux/commit/cc951de8ec99ed47dd19c0c276799a9ac0d679d4
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Phillip-Potter/staging-r8188eu-further-per-file-DBG_88E-cleanups/20220110-055642
        git checkout cc951de8ec99ed47dd19c0c276799a9ac0d679d4
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/staging/r8188eu/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/staging/r8188eu/core/rtw_mlme_ext.c: In function 'mlmeext_joinbss_event_callback':
>> drivers/staging/r8188eu/core/rtw_mlme_ext.c:7104:1: error: label at end of compound statement
    7104 | exit_mlmeext_joinbss_event_callback:
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


vim +7104 drivers/staging/r8188eu/core/rtw_mlme_ext.c

15865124feed88 Phillip Potter  2021-07-28  7028  
15865124feed88 Phillip Potter  2021-07-28  7029  void mlmeext_joinbss_event_callback(struct adapter *padapter, int join_res)
15865124feed88 Phillip Potter  2021-07-28  7030  {
15865124feed88 Phillip Potter  2021-07-28  7031  	struct sta_info		*psta, *psta_bmc;
15865124feed88 Phillip Potter  2021-07-28  7032  	struct mlme_ext_priv	*pmlmeext = &padapter->mlmeextpriv;
3b522a11b50476 Michael Straube 2021-08-09  7033  	struct mlme_ext_info	*pmlmeinfo = &pmlmeext->mlmext_info;
3b522a11b50476 Michael Straube 2021-08-09  7034  	struct wlan_bssid_ex *cur_network = &pmlmeinfo->network;
15865124feed88 Phillip Potter  2021-07-28  7035  	struct sta_priv		*pstapriv = &padapter->stapriv;
15865124feed88 Phillip Potter  2021-07-28  7036  	u8 join_type;
15865124feed88 Phillip Potter  2021-07-28  7037  	u16 media_status;
15865124feed88 Phillip Potter  2021-07-28  7038  
15865124feed88 Phillip Potter  2021-07-28  7039  	if (join_res < 0) {
15865124feed88 Phillip Potter  2021-07-28  7040  		join_type = 1;
461c4776856c15 Michael Straube 2021-10-07  7041  		SetHwReg8188EU(padapter, HW_VAR_MLME_JOIN, (u8 *)(&join_type));
461c4776856c15 Michael Straube 2021-10-07  7042  		SetHwReg8188EU(padapter, HW_VAR_BSSID, null_addr);
15865124feed88 Phillip Potter  2021-07-28  7043  
15865124feed88 Phillip Potter  2021-07-28  7044  		/* restore to initial setting. */
15865124feed88 Phillip Potter  2021-07-28  7045  		update_tx_basic_rate(padapter, padapter->registrypriv.wireless_mode);
15865124feed88 Phillip Potter  2021-07-28  7046  
15865124feed88 Phillip Potter  2021-07-28  7047  		goto exit_mlmeext_joinbss_event_callback;
15865124feed88 Phillip Potter  2021-07-28  7048  	}
15865124feed88 Phillip Potter  2021-07-28  7049  
15865124feed88 Phillip Potter  2021-07-28  7050  	if ((pmlmeinfo->state & 0x03) == WIFI_FW_ADHOC_STATE) {
15865124feed88 Phillip Potter  2021-07-28  7051  		/* for bc/mc */
15865124feed88 Phillip Potter  2021-07-28  7052  		psta_bmc = rtw_get_bcmc_stainfo(padapter);
15865124feed88 Phillip Potter  2021-07-28  7053  		if (psta_bmc) {
15865124feed88 Phillip Potter  2021-07-28  7054  			pmlmeinfo->FW_sta_info[psta_bmc->mac_id].psta = psta_bmc;
15865124feed88 Phillip Potter  2021-07-28  7055  			update_bmc_sta_support_rate(padapter, psta_bmc->mac_id);
15865124feed88 Phillip Potter  2021-07-28  7056  			Update_RA_Entry(padapter, psta_bmc->mac_id);
15865124feed88 Phillip Potter  2021-07-28  7057  		}
15865124feed88 Phillip Potter  2021-07-28  7058  	}
15865124feed88 Phillip Potter  2021-07-28  7059  
15865124feed88 Phillip Potter  2021-07-28  7060  	/* turn on dynamic functions */
15865124feed88 Phillip Potter  2021-07-28  7061  	Switch_DM_Func(padapter, DYNAMIC_ALL_FUNC_ENABLE, true);
15865124feed88 Phillip Potter  2021-07-28  7062  
15865124feed88 Phillip Potter  2021-07-28  7063  	/*  update IOT-releated issue */
15865124feed88 Phillip Potter  2021-07-28  7064  	update_IOT_info(padapter);
15865124feed88 Phillip Potter  2021-07-28  7065  
461c4776856c15 Michael Straube 2021-10-07  7066  	SetHwReg8188EU(padapter, HW_VAR_BASIC_RATE, cur_network->SupportedRates);
15865124feed88 Phillip Potter  2021-07-28  7067  
15865124feed88 Phillip Potter  2021-07-28  7068  	/* BCN interval */
461c4776856c15 Michael Straube 2021-10-07  7069  	SetHwReg8188EU(padapter, HW_VAR_BEACON_INTERVAL, (u8 *)(&pmlmeinfo->bcn_interval));
15865124feed88 Phillip Potter  2021-07-28  7070  
15865124feed88 Phillip Potter  2021-07-28  7071  	/* udpate capability */
15865124feed88 Phillip Potter  2021-07-28  7072  	update_capinfo(padapter, pmlmeinfo->capability);
15865124feed88 Phillip Potter  2021-07-28  7073  
15865124feed88 Phillip Potter  2021-07-28  7074  	/* WMM, Update EDCA param */
15865124feed88 Phillip Potter  2021-07-28  7075  	WMMOnAssocRsp(padapter);
15865124feed88 Phillip Potter  2021-07-28  7076  
15865124feed88 Phillip Potter  2021-07-28  7077  	/* HT */
15865124feed88 Phillip Potter  2021-07-28  7078  	HTOnAssocRsp(padapter);
15865124feed88 Phillip Potter  2021-07-28  7079  
15865124feed88 Phillip Potter  2021-07-28  7080  	set_channel_bwmode(padapter, pmlmeext->cur_channel, pmlmeext->cur_ch_offset, pmlmeext->cur_bwmode);
15865124feed88 Phillip Potter  2021-07-28  7081  
15865124feed88 Phillip Potter  2021-07-28  7082  	psta = rtw_get_stainfo(pstapriv, cur_network->MacAddress);
15865124feed88 Phillip Potter  2021-07-28  7083  	if (psta) { /* only for infra. mode */
15865124feed88 Phillip Potter  2021-07-28  7084  		pmlmeinfo->FW_sta_info[psta->mac_id].psta = psta;
15865124feed88 Phillip Potter  2021-07-28  7085  
15865124feed88 Phillip Potter  2021-07-28  7086  		psta->wireless_mode = pmlmeext->cur_wireless_mode;
15865124feed88 Phillip Potter  2021-07-28  7087  
15865124feed88 Phillip Potter  2021-07-28  7088  		/* set per sta rate after updating HT cap. */
15865124feed88 Phillip Potter  2021-07-28  7089  		set_sta_rate(padapter, psta);
461c4776856c15 Michael Straube 2021-10-07  7090  		SetHwReg8188EU(padapter, HW_VAR_TX_RPT_MAX_MACID, (u8 *)&psta->mac_id);
15865124feed88 Phillip Potter  2021-07-28  7091  		media_status = (psta->mac_id << 8) | 1; /*   MACID|OPMODE: 1 means connect */
461c4776856c15 Michael Straube 2021-10-07  7092  		SetHwReg8188EU(padapter, HW_VAR_H2C_MEDIA_STATUS_RPT, (u8 *)&media_status);
15865124feed88 Phillip Potter  2021-07-28  7093  	}
15865124feed88 Phillip Potter  2021-07-28  7094  
15865124feed88 Phillip Potter  2021-07-28  7095  	join_type = 2;
461c4776856c15 Michael Straube 2021-10-07  7096  	SetHwReg8188EU(padapter, HW_VAR_MLME_JOIN, (u8 *)(&join_type));
15865124feed88 Phillip Potter  2021-07-28  7097  
15865124feed88 Phillip Potter  2021-07-28  7098  	if ((pmlmeinfo->state & 0x03) == WIFI_FW_STATION_STATE) {
15865124feed88 Phillip Potter  2021-07-28  7099  		/*  correcting TSF */
15865124feed88 Phillip Potter  2021-07-28  7100  		correct_TSF(padapter, pmlmeext);
15865124feed88 Phillip Potter  2021-07-28  7101  	}
15865124feed88 Phillip Potter  2021-07-28  7102  	rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_CONNECT, 0);
15865124feed88 Phillip Potter  2021-07-28  7103  
15865124feed88 Phillip Potter  2021-07-28 @7104  exit_mlmeext_joinbss_event_callback:
15865124feed88 Phillip Potter  2021-07-28  7105  }
15865124feed88 Phillip Potter  2021-07-28  7106  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH 6/7] staging: r8188eu: convert DBG_88E calls in core/rtw_mlme_ext.c
Date: Mon, 10 Jan 2022 14:15:59 +0800	[thread overview]
Message-ID: <202201101405.RNRjMxAF-lkp@intel.com> (raw)
In-Reply-To: <20220109215427.887-7-phil@philpotter.co.uk>

[-- Attachment #1: Type: text/plain, Size: 8077 bytes --]

Hi Phillip,

I love your patch! Yet something to improve:

[auto build test ERROR on staging/staging-testing]

url:    https://github.com/0day-ci/linux/commits/Phillip-Potter/staging-r8188eu-further-per-file-DBG_88E-cleanups/20220110-055642
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git fa783154524a71ab74e293cd8251155e5971952b
config: i386-allyesconfig (https://download.01.org/0day-ci/archive/20220110/202201101405.RNRjMxAF-lkp(a)intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://github.com/0day-ci/linux/commit/cc951de8ec99ed47dd19c0c276799a9ac0d679d4
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Phillip-Potter/staging-r8188eu-further-per-file-DBG_88E-cleanups/20220110-055642
        git checkout cc951de8ec99ed47dd19c0c276799a9ac0d679d4
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/staging/r8188eu/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/staging/r8188eu/core/rtw_mlme_ext.c: In function 'mlmeext_joinbss_event_callback':
>> drivers/staging/r8188eu/core/rtw_mlme_ext.c:7104:1: error: label at end of compound statement
    7104 | exit_mlmeext_joinbss_event_callback:
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


vim +7104 drivers/staging/r8188eu/core/rtw_mlme_ext.c

15865124feed88 Phillip Potter  2021-07-28  7028  
15865124feed88 Phillip Potter  2021-07-28  7029  void mlmeext_joinbss_event_callback(struct adapter *padapter, int join_res)
15865124feed88 Phillip Potter  2021-07-28  7030  {
15865124feed88 Phillip Potter  2021-07-28  7031  	struct sta_info		*psta, *psta_bmc;
15865124feed88 Phillip Potter  2021-07-28  7032  	struct mlme_ext_priv	*pmlmeext = &padapter->mlmeextpriv;
3b522a11b50476 Michael Straube 2021-08-09  7033  	struct mlme_ext_info	*pmlmeinfo = &pmlmeext->mlmext_info;
3b522a11b50476 Michael Straube 2021-08-09  7034  	struct wlan_bssid_ex *cur_network = &pmlmeinfo->network;
15865124feed88 Phillip Potter  2021-07-28  7035  	struct sta_priv		*pstapriv = &padapter->stapriv;
15865124feed88 Phillip Potter  2021-07-28  7036  	u8 join_type;
15865124feed88 Phillip Potter  2021-07-28  7037  	u16 media_status;
15865124feed88 Phillip Potter  2021-07-28  7038  
15865124feed88 Phillip Potter  2021-07-28  7039  	if (join_res < 0) {
15865124feed88 Phillip Potter  2021-07-28  7040  		join_type = 1;
461c4776856c15 Michael Straube 2021-10-07  7041  		SetHwReg8188EU(padapter, HW_VAR_MLME_JOIN, (u8 *)(&join_type));
461c4776856c15 Michael Straube 2021-10-07  7042  		SetHwReg8188EU(padapter, HW_VAR_BSSID, null_addr);
15865124feed88 Phillip Potter  2021-07-28  7043  
15865124feed88 Phillip Potter  2021-07-28  7044  		/* restore to initial setting. */
15865124feed88 Phillip Potter  2021-07-28  7045  		update_tx_basic_rate(padapter, padapter->registrypriv.wireless_mode);
15865124feed88 Phillip Potter  2021-07-28  7046  
15865124feed88 Phillip Potter  2021-07-28  7047  		goto exit_mlmeext_joinbss_event_callback;
15865124feed88 Phillip Potter  2021-07-28  7048  	}
15865124feed88 Phillip Potter  2021-07-28  7049  
15865124feed88 Phillip Potter  2021-07-28  7050  	if ((pmlmeinfo->state & 0x03) == WIFI_FW_ADHOC_STATE) {
15865124feed88 Phillip Potter  2021-07-28  7051  		/* for bc/mc */
15865124feed88 Phillip Potter  2021-07-28  7052  		psta_bmc = rtw_get_bcmc_stainfo(padapter);
15865124feed88 Phillip Potter  2021-07-28  7053  		if (psta_bmc) {
15865124feed88 Phillip Potter  2021-07-28  7054  			pmlmeinfo->FW_sta_info[psta_bmc->mac_id].psta = psta_bmc;
15865124feed88 Phillip Potter  2021-07-28  7055  			update_bmc_sta_support_rate(padapter, psta_bmc->mac_id);
15865124feed88 Phillip Potter  2021-07-28  7056  			Update_RA_Entry(padapter, psta_bmc->mac_id);
15865124feed88 Phillip Potter  2021-07-28  7057  		}
15865124feed88 Phillip Potter  2021-07-28  7058  	}
15865124feed88 Phillip Potter  2021-07-28  7059  
15865124feed88 Phillip Potter  2021-07-28  7060  	/* turn on dynamic functions */
15865124feed88 Phillip Potter  2021-07-28  7061  	Switch_DM_Func(padapter, DYNAMIC_ALL_FUNC_ENABLE, true);
15865124feed88 Phillip Potter  2021-07-28  7062  
15865124feed88 Phillip Potter  2021-07-28  7063  	/*  update IOT-releated issue */
15865124feed88 Phillip Potter  2021-07-28  7064  	update_IOT_info(padapter);
15865124feed88 Phillip Potter  2021-07-28  7065  
461c4776856c15 Michael Straube 2021-10-07  7066  	SetHwReg8188EU(padapter, HW_VAR_BASIC_RATE, cur_network->SupportedRates);
15865124feed88 Phillip Potter  2021-07-28  7067  
15865124feed88 Phillip Potter  2021-07-28  7068  	/* BCN interval */
461c4776856c15 Michael Straube 2021-10-07  7069  	SetHwReg8188EU(padapter, HW_VAR_BEACON_INTERVAL, (u8 *)(&pmlmeinfo->bcn_interval));
15865124feed88 Phillip Potter  2021-07-28  7070  
15865124feed88 Phillip Potter  2021-07-28  7071  	/* udpate capability */
15865124feed88 Phillip Potter  2021-07-28  7072  	update_capinfo(padapter, pmlmeinfo->capability);
15865124feed88 Phillip Potter  2021-07-28  7073  
15865124feed88 Phillip Potter  2021-07-28  7074  	/* WMM, Update EDCA param */
15865124feed88 Phillip Potter  2021-07-28  7075  	WMMOnAssocRsp(padapter);
15865124feed88 Phillip Potter  2021-07-28  7076  
15865124feed88 Phillip Potter  2021-07-28  7077  	/* HT */
15865124feed88 Phillip Potter  2021-07-28  7078  	HTOnAssocRsp(padapter);
15865124feed88 Phillip Potter  2021-07-28  7079  
15865124feed88 Phillip Potter  2021-07-28  7080  	set_channel_bwmode(padapter, pmlmeext->cur_channel, pmlmeext->cur_ch_offset, pmlmeext->cur_bwmode);
15865124feed88 Phillip Potter  2021-07-28  7081  
15865124feed88 Phillip Potter  2021-07-28  7082  	psta = rtw_get_stainfo(pstapriv, cur_network->MacAddress);
15865124feed88 Phillip Potter  2021-07-28  7083  	if (psta) { /* only for infra. mode */
15865124feed88 Phillip Potter  2021-07-28  7084  		pmlmeinfo->FW_sta_info[psta->mac_id].psta = psta;
15865124feed88 Phillip Potter  2021-07-28  7085  
15865124feed88 Phillip Potter  2021-07-28  7086  		psta->wireless_mode = pmlmeext->cur_wireless_mode;
15865124feed88 Phillip Potter  2021-07-28  7087  
15865124feed88 Phillip Potter  2021-07-28  7088  		/* set per sta rate after updating HT cap. */
15865124feed88 Phillip Potter  2021-07-28  7089  		set_sta_rate(padapter, psta);
461c4776856c15 Michael Straube 2021-10-07  7090  		SetHwReg8188EU(padapter, HW_VAR_TX_RPT_MAX_MACID, (u8 *)&psta->mac_id);
15865124feed88 Phillip Potter  2021-07-28  7091  		media_status = (psta->mac_id << 8) | 1; /*   MACID|OPMODE: 1 means connect */
461c4776856c15 Michael Straube 2021-10-07  7092  		SetHwReg8188EU(padapter, HW_VAR_H2C_MEDIA_STATUS_RPT, (u8 *)&media_status);
15865124feed88 Phillip Potter  2021-07-28  7093  	}
15865124feed88 Phillip Potter  2021-07-28  7094  
15865124feed88 Phillip Potter  2021-07-28  7095  	join_type = 2;
461c4776856c15 Michael Straube 2021-10-07  7096  	SetHwReg8188EU(padapter, HW_VAR_MLME_JOIN, (u8 *)(&join_type));
15865124feed88 Phillip Potter  2021-07-28  7097  
15865124feed88 Phillip Potter  2021-07-28  7098  	if ((pmlmeinfo->state & 0x03) == WIFI_FW_STATION_STATE) {
15865124feed88 Phillip Potter  2021-07-28  7099  		/*  correcting TSF */
15865124feed88 Phillip Potter  2021-07-28  7100  		correct_TSF(padapter, pmlmeext);
15865124feed88 Phillip Potter  2021-07-28  7101  	}
15865124feed88 Phillip Potter  2021-07-28  7102  	rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_CONNECT, 0);
15865124feed88 Phillip Potter  2021-07-28  7103  
15865124feed88 Phillip Potter  2021-07-28 @7104  exit_mlmeext_joinbss_event_callback:
15865124feed88 Phillip Potter  2021-07-28  7105  }
15865124feed88 Phillip Potter  2021-07-28  7106  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

  parent reply	other threads:[~2022-01-10  6:16 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-09 21:54 [PATCH 0/7] staging: r8188eu: further per-file DBG_88E cleanups Phillip Potter
2022-01-09 21:54 ` [PATCH 1/7] staging: r8188eu: convert DBG_88E calls in core/rtw_ieee80211.c Phillip Potter
2022-01-09 21:54 ` [PATCH 2/7] staging: r8188eu: convert DBG_88E calls in core/rtw_xmit.c Phillip Potter
2022-01-09 21:54 ` [PATCH 3/7] staging: r8188eu: convert DBG_88E calls in core/rtw_iol.c Phillip Potter
2022-01-10 10:08   ` Dan Carpenter
2022-01-10 20:56     ` Phillip Potter
2022-01-11  5:06       ` Dan Carpenter
2022-01-14  0:42         ` Phillip Potter
2022-01-09 21:54 ` [PATCH 4/7] staging: r8188eu: convert DBG_88E calls in core/rtw_mlme.c Phillip Potter
2022-01-09 21:54 ` [PATCH 5/7] staging: r8188eu: convert DBG_88E calls in core/rtw_ioctl_set.c Phillip Potter
2022-01-09 21:54 ` [PATCH 6/7] staging: r8188eu: convert DBG_88E calls in core/rtw_mlme_ext.c Phillip Potter
2022-01-10  1:35   ` kernel test robot
2022-01-10  1:35     ` kernel test robot
2022-01-10  6:15   ` kernel test robot [this message]
2022-01-10  6:15     ` kernel test robot
2022-01-09 21:54 ` [PATCH 7/7] staging: r8188eu: convert DBG_88E calls in core/rtw_sta_mgt.c Phillip Potter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202201101405.RNRjMxAF-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=Larry.Finger@lwfinger.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=martin@kaiser.cx \
    --cc=phil@philpotter.co.uk \
    --cc=straube.linux@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.