All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Wander Lairson Costa <wander@redhat.com>,
	Ingo Molnar <mingo@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Juri Lelli <juri.lelli@redhat.com>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	Dietmar Eggemann <dietmar.eggemann@arm.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Ben Segall <bsegall@google.com>, Mel Gorman <mgorman@suse.de>,
	Valentin Schneider <vschneid@redhat.com>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Boqun Feng <boqun.feng@gmail.com>,
	David Woodhouse <dwmw@amazon.co.uk>,
	linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Clark Williams <williams@redhat.com>,
	Gabriele Monaco <gmonaco@redhat.com>
Subject: Re: [PATCH v2 2/2] tracing/preemptirq: Optimize preempt_disable/enable() tracepoint overhead
Date: Tue, 1 Jul 2025 20:36:08 +0800	[thread overview]
Message-ID: <202507011942.sCSGnb2M-lkp@intel.com> (raw)
In-Reply-To: <20250630195243.701516-3-wander@redhat.com>

Hi Wander,

kernel test robot noticed the following build errors:

[auto build test ERROR on trace/for-next]
[also build test ERROR on tip/sched/core linus/master v6.16-rc4 next-20250701]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Wander-Lairson-Costa/trace-preemptirq-reduce-overhead-of-irq_enable-disable-tracepoints/20250701-035446
base:   https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace for-next
patch link:    https://lore.kernel.org/r/20250630195243.701516-3-wander%40redhat.com
patch subject: [PATCH v2 2/2] tracing/preemptirq: Optimize preempt_disable/enable() tracepoint overhead
config: powerpc-randconfig-003-20250701 (https://download.01.org/0day-ci/archive/20250701/202507011942.sCSGnb2M-lkp@intel.com/config)
compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project e04c938cc08a90ae60440ce22d072ebc69d67ee8)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250701/202507011942.sCSGnb2M-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202507011942.sCSGnb2M-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from arch/powerpc/kernel/asm-offsets.c:12:
   In file included from include/linux/compat.h:14:
   In file included from include/linux/sem.h:5:
   In file included from include/uapi/linux/sem.h:5:
   In file included from include/linux/ipc.h:7:
   In file included from include/linux/rhashtable-types.h:12:
   In file included from include/linux/alloc_tag.h:11:
   In file included from include/linux/preempt.h:13:
   In file included from include/linux/tracepoint-defs.h:11:
   In file included from include/linux/atomic.h:7:
   In file included from arch/powerpc/include/asm/atomic.h:11:
   In file included from arch/powerpc/include/asm/cmpxchg.h:755:
   In file included from include/asm-generic/cmpxchg-local.h:6:
   include/linux/irqflags.h:201:1: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
     201 | DECLARE_TRACEPOINT(irq_enable);
         | ^
         | int
   include/linux/irqflags.h:201:20: error: a parameter list without types is only allowed in a function definition
     201 | DECLARE_TRACEPOINT(irq_enable);
         |                    ^
   include/linux/irqflags.h:202:1: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
     202 | DECLARE_TRACEPOINT(irq_disable);
         | ^
         | int
   include/linux/irqflags.h:202:20: error: a parameter list without types is only allowed in a function definition
     202 | DECLARE_TRACEPOINT(irq_disable);
         |                    ^
   include/linux/irqflags.h:277:47: error: call to undeclared function 'tracepoint_enabled'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     277 | DEFINE_LOCK_GUARD_0(irq, local_irq_disable(), local_irq_enable())
         |                                               ^
   include/linux/irqflags.h:210:7: note: expanded from macro 'local_irq_enable'
     210 |                 if (__trace_enabled(irq_enable))        \
         |                     ^
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^
   include/linux/irqflags.h:277:47: error: use of undeclared identifier 'irq_enable'
     277 | DEFINE_LOCK_GUARD_0(irq, local_irq_disable(), local_irq_enable())
         |                                               ^~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:210:23: note: expanded from macro 'local_irq_enable'
     210 |                 if (__trace_enabled(irq_enable))        \
         |                                     ^~~~~~~~~~
   include/linux/irqflags.h:277:26: error: call to undeclared function 'tracepoint_enabled'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     277 | DEFINE_LOCK_GUARD_0(irq, local_irq_disable(), local_irq_enable())
         |                          ^
   include/linux/irqflags.h:219:7: note: expanded from macro 'local_irq_disable'
     219 |                 if (__trace_enabled(irq_disable) &&     \
         |                     ^
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^
   include/linux/irqflags.h:277:26: error: use of undeclared identifier 'irq_disable'
     277 | DEFINE_LOCK_GUARD_0(irq, local_irq_disable(), local_irq_enable())
         |                          ^~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:219:23: note: expanded from macro 'local_irq_disable'
     219 |                 if (__trace_enabled(irq_disable) &&     \
         |                                     ^~~~~~~~~~~
   include/linux/irqflags.h:280:7: error: call to undeclared function 'tracepoint_enabled'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     280 |                     local_irq_restore(_T->flags),
         |                     ^
   include/linux/irqflags.h:234:7: note: expanded from macro 'local_irq_restore'
     234 |                 if (__trace_enabled(irq_enable) &&      \
         |                     ^
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^
   include/linux/irqflags.h:280:7: error: use of undeclared identifier 'irq_enable'
     280 |                     local_irq_restore(_T->flags),
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:234:23: note: expanded from macro 'local_irq_restore'
     234 |                 if (__trace_enabled(irq_enable) &&      \
         |                                     ^~~~~~~~~~
   include/linux/irqflags.h:279:7: error: call to undeclared function 'tracepoint_enabled'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     279 |                     local_irq_save(_T->flags),
         |                     ^
   include/linux/irqflags.h:227:7: note: expanded from macro 'local_irq_save'
     227 |                 if (__trace_enabled(irq_disable) &&     \
         |                     ^
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^
   include/linux/irqflags.h:279:7: error: use of undeclared identifier 'irq_disable'
     279 |                     local_irq_save(_T->flags),
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:227:23: note: expanded from macro 'local_irq_save'
     227 |                 if (__trace_enabled(irq_disable) &&     \
         |                                     ^~~~~~~~~~~
   In file included from arch/powerpc/kernel/asm-offsets.c:12:
   In file included from include/linux/compat.h:15:
   In file included from include/linux/socket.h:8:
   In file included from include/linux/uio.h:9:
   In file included from include/linux/mm_types.h:8:
   In file included from include/linux/kref.h:16:
   In file included from include/linux/spinlock.h:312:
>> include/linux/spinlock_api_smp.h:151:2: error: use of undeclared identifier '__tracepoint_irq_enable'; did you mean '__tracepoint_preempt_enable'?
     151 |         local_irq_restore(flags);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:234:7: note: expanded from macro 'local_irq_restore'
     234 |                 if (__trace_enabled(irq_enable) &&      \
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/tracepoint-defs.h:92:27: note: expanded from macro 'tracepoint_enabled'
      92 |         static_branch_unlikely(&(__tracepoint_##tp).key)
         |                                  ^~~~~~~~~~~~~~~~~
   <scratch space>:103:1: note: expanded from here
     103 | __tracepoint_irq_enable
         | ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/preempt.h:202:1: note: '__tracepoint_preempt_enable' declared here
     202 | DECLARE_TRACEPOINT(preempt_enable);
         | ^
   include/linux/tracepoint-defs.h:88:27: note: expanded from macro 'DECLARE_TRACEPOINT'
      88 |         extern struct tracepoint __tracepoint_##tp
         |                                  ^
   <scratch space>:104:1: note: expanded from here
     104 | __tracepoint_preempt_enable
         | ^
   In file included from arch/powerpc/kernel/asm-offsets.c:12:
   In file included from include/linux/compat.h:15:
   In file included from include/linux/socket.h:8:
   In file included from include/linux/uio.h:9:
   In file included from include/linux/mm_types.h:8:
   In file included from include/linux/kref.h:16:
   In file included from include/linux/spinlock.h:312:
>> include/linux/spinlock_api_smp.h:151:2: error: use of undeclared identifier '__tracepoint_irq_enable'; did you mean '__tracepoint_preempt_enable'?
     151 |         local_irq_restore(flags);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:234:7: note: expanded from macro 'local_irq_restore'
     234 |                 if (__trace_enabled(irq_enable) &&      \
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/tracepoint-defs.h:92:27: note: expanded from macro 'tracepoint_enabled'
      92 |         static_branch_unlikely(&(__tracepoint_##tp).key)
         |                                  ^~~~~~~~~~~~~~~~~
   <scratch space>:103:1: note: expanded from here
     103 | __tracepoint_irq_enable
         | ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/preempt.h:202:1: note: '__tracepoint_preempt_enable' declared here
     202 | DECLARE_TRACEPOINT(preempt_enable);
         | ^
   include/linux/tracepoint-defs.h:88:27: note: expanded from macro 'DECLARE_TRACEPOINT'
      88 |         extern struct tracepoint __tracepoint_##tp
         |                                  ^
   <scratch space>:104:1: note: expanded from here
     104 | __tracepoint_preempt_enable
         | ^
   In file included from arch/powerpc/kernel/asm-offsets.c:12:
   In file included from include/linux/compat.h:15:
   In file included from include/linux/socket.h:8:
   In file included from include/linux/uio.h:9:
   In file included from include/linux/mm_types.h:8:
   In file included from include/linux/kref.h:16:
   In file included from include/linux/spinlock.h:312:
>> include/linux/spinlock_api_smp.h:151:2: error: use of undeclared identifier '__tracepoint_irq_enable'; did you mean '__tracepoint_preempt_enable'?
     151 |         local_irq_restore(flags);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:234:7: note: expanded from macro 'local_irq_restore'
     234 |                 if (__trace_enabled(irq_enable) &&      \
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/tracepoint-defs.h:92:27: note: expanded from macro 'tracepoint_enabled'
      92 |         static_branch_unlikely(&(__tracepoint_##tp).key)
         |                                  ^~~~~~~~~~~~~~~~~
   <scratch space>:103:1: note: expanded from here
     103 | __tracepoint_irq_enable
         | ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/preempt.h:202:1: note: '__tracepoint_preempt_enable' declared here
     202 | DECLARE_TRACEPOINT(preempt_enable);
         | ^
   include/linux/tracepoint-defs.h:88:27: note: expanded from macro 'DECLARE_TRACEPOINT'
      88 |         extern struct tracepoint __tracepoint_##tp
         |                                  ^
   <scratch space>:104:1: note: expanded from here
     104 | __tracepoint_preempt_enable
         | ^
   In file included from arch/powerpc/kernel/asm-offsets.c:12:
   In file included from include/linux/compat.h:15:
   In file included from include/linux/socket.h:8:
   In file included from include/linux/uio.h:9:
   In file included from include/linux/mm_types.h:8:
   In file included from include/linux/kref.h:16:
   In file included from include/linux/spinlock.h:312:
>> include/linux/spinlock_api_smp.h:151:2: error: use of undeclared identifier '__tracepoint_irq_enable'; did you mean '__tracepoint_preempt_enable'?
     151 |         local_irq_restore(flags);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:234:7: note: expanded from macro 'local_irq_restore'
     234 |                 if (__trace_enabled(irq_enable) &&      \
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/tracepoint-defs.h:92:27: note: expanded from macro 'tracepoint_enabled'
      92 |         static_branch_unlikely(&(__tracepoint_##tp).key)
         |                                  ^~~~~~~~~~~~~~~~~
   <scratch space>:103:1: note: expanded from here
     103 | __tracepoint_irq_enable
         | ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/preempt.h:202:1: note: '__tracepoint_preempt_enable' declared here
     202 | DECLARE_TRACEPOINT(preempt_enable);
         | ^
   include/linux/tracepoint-defs.h:88:27: note: expanded from macro 'DECLARE_TRACEPOINT'
      88 |         extern struct tracepoint __tracepoint_##tp
         |                                  ^
   <scratch space>:104:1: note: expanded from here
     104 | __tracepoint_preempt_enable
         | ^
   In file included from arch/powerpc/kernel/asm-offsets.c:12:
   In file included from include/linux/compat.h:15:
   In file included from include/linux/socket.h:8:
   In file included from include/linux/uio.h:9:
   In file included from include/linux/mm_types.h:8:
   In file included from include/linux/kref.h:16:
   In file included from include/linux/spinlock.h:312:
   include/linux/spinlock_api_smp.h:159:2: error: use of undeclared identifier '__tracepoint_irq_enable'; did you mean '__tracepoint_preempt_enable'?
     159 |         local_irq_enable();
         |         ^~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:210:7: note: expanded from macro 'local_irq_enable'
     210 |                 if (__trace_enabled(irq_enable))        \
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/tracepoint-defs.h:92:27: note: expanded from macro 'tracepoint_enabled'
      92 |         static_branch_unlikely(&(__tracepoint_##tp).key)
         |                                  ^~~~~~~~~~~~~~~~~
   <scratch space>:108:1: note: expanded from here
     108 | __tracepoint_irq_enable
         | ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/preempt.h:202:1: note: '__tracepoint_preempt_enable' declared here
     202 | DECLARE_TRACEPOINT(preempt_enable);
         | ^
   include/linux/tracepoint-defs.h:88:27: note: expanded from macro 'DECLARE_TRACEPOINT'
      88 |         extern struct tracepoint __tracepoint_##tp
         |                                  ^
   <scratch space>:104:1: note: expanded from here
     104 | __tracepoint_preempt_enable
         | ^
   In file included from arch/powerpc/kernel/asm-offsets.c:12:
   In file included from include/linux/compat.h:15:
   In file included from include/linux/socket.h:8:
   In file included from include/linux/uio.h:9:
   In file included from include/linux/mm_types.h:8:
   In file included from include/linux/kref.h:16:
   In file included from include/linux/spinlock.h:312:
   include/linux/spinlock_api_smp.h:159:2: error: use of undeclared identifier '__tracepoint_irq_enable'; did you mean '__tracepoint_preempt_enable'?
     159 |         local_irq_enable();
         |         ^~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:210:7: note: expanded from macro 'local_irq_enable'
     210 |                 if (__trace_enabled(irq_enable))        \
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))
         |          ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/tracepoint-defs.h:92:27: note: expanded from macro 'tracepoint_enabled'
      92 |         static_branch_unlikely(&(__tracepoint_##tp).key)
         |                                  ^~~~~~~~~~~~~~~~~
   <scratch space>:108:1: note: expanded from here
     108 | __tracepoint_irq_enable
         | ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/preempt.h:202:1: note: '__tracepoint_preempt_enable' declared here
     202 | DECLARE_TRACEPOINT(preempt_enable);
         | ^
   include/linux/tracepoint-defs.h:88:27: note: expanded from macro 'DECLARE_TRACEPOINT'
      88 |         extern struct tracepoint __tracepoint_##tp
         |                                  ^
   <scratch space>:104:1: note: expanded from here
     104 | __tracepoint_preempt_enable
         | ^
   In file included from arch/powerpc/kernel/asm-offsets.c:12:
   In file included from include/linux/compat.h:15:
   In file included from include/linux/socket.h:8:
   In file included from include/linux/uio.h:9:
   In file included from include/linux/mm_types.h:8:
   In file included from include/linux/kref.h:16:
   In file included from include/linux/spinlock.h:312:
   include/linux/spinlock_api_smp.h:159:2: error: use of undeclared identifier '__tracepoint_irq_enable'; did you mean '__tracepoint_preempt_enable'?
     159 |         local_irq_enable();
         |         ^~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:210:7: note: expanded from macro 'local_irq_enable'
     210 |                 if (__trace_enabled(irq_enable))        \
         |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/irqflags.h:206:3: note: expanded from macro '__trace_enabled'
     206 |          tracepoint_enabled(tp))


vim +151 include/linux/spinlock_api_smp.h

69d0ee7377eef80 Heiko Carstens  2009-08-31  145  
9c1721aa4994f66 Thomas Gleixner 2009-12-03  146  static inline void __raw_spin_unlock_irqrestore(raw_spinlock_t *lock,
69d0ee7377eef80 Heiko Carstens  2009-08-31  147  					    unsigned long flags)
69d0ee7377eef80 Heiko Carstens  2009-08-31  148  {
5facae4f3549b5c Qian Cai        2019-09-19  149  	spin_release(&lock->dep_map, _RET_IP_);
9828ea9d75c38fe Thomas Gleixner 2009-12-03  150  	do_raw_spin_unlock(lock);
69d0ee7377eef80 Heiko Carstens  2009-08-31 @151  	local_irq_restore(flags);
69d0ee7377eef80 Heiko Carstens  2009-08-31  152  	preempt_enable();
69d0ee7377eef80 Heiko Carstens  2009-08-31  153  }
69d0ee7377eef80 Heiko Carstens  2009-08-31  154  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

      reply	other threads:[~2025-07-01 12:36 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-30 19:52 [PATCH v2 0/2] tracing/preemptirq: Optimize disabled tracepoint overhead Wander Lairson Costa
2025-06-30 19:52 ` [PATCH v2 1/2] trace/preemptirq: reduce overhead of irq_enable/disable tracepoints Wander Lairson Costa
2025-07-01 12:05   ` kernel test robot
2025-06-30 19:52 ` [PATCH v2 2/2] tracing/preemptirq: Optimize preempt_disable/enable() tracepoint overhead Wander Lairson Costa
2025-07-01 12:36   ` kernel test robot [this message]

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=202507011942.sCSGnb2M-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=acme@kernel.org \
    --cc=boqun.feng@gmail.com \
    --cc=bsegall@google.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=dwmw@amazon.co.uk \
    --cc=gmonaco@redhat.com \
    --cc=juri.lelli@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-trace-kernel@vger.kernel.org \
    --cc=llvm@lists.linux.dev \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mgorman@suse.de \
    --cc=mhiramat@kernel.org \
    --cc=mingo@redhat.com \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=tglx@linutronix.de \
    --cc=vincent.guittot@linaro.org \
    --cc=vschneid@redhat.com \
    --cc=wander@redhat.com \
    --cc=williams@redhat.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.