From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH 02/16] md: move the early init autodetect code to drivers/md/
Date: Tue, 16 Jun 2020 02:50:12 +0800 [thread overview]
Message-ID: <202006160237.KBTht1Kn%lkp@intel.com> (raw)
In-Reply-To: <20200615125323.930983-3-hch@lst.de>
[-- Attachment #1: Type: text/plain, Size: 17662 bytes --]
Hi Christoph,
I love your patch! Perhaps something to improve:
[auto build test WARNING on song-md/md-next]
[also build test WARNING on sparc-next/master sparc/master linus/master v5.8-rc1 next-20200615]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Christoph-Hellwig/init-remove-the-bstat-helper/20200615-215324
base: git://git.kernel.org/pub/scm/linux/kernel/git/song/md.git md-next
config: i386-randconfig-s001-20200615 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-rc1-3-g55607964-dirty
# save the attached .config to linux build tree
make W=1 C=1 ARCH=i386 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/md/md-autodetect.c:164:38: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] <asn:1> *filename @@ got char * @@
>> drivers/md/md-autodetect.c:164:38: sparse: expected char const [noderef] <asn:1> *filename
>> drivers/md/md-autodetect.c:164:38: sparse: got char *
drivers/md/md-autodetect.c:185:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] <asn:1> *filename @@ got char * @@
drivers/md/md-autodetect.c:185:32: sparse: expected char const [noderef] <asn:1> *filename
drivers/md/md-autodetect.c:185:32: sparse: got char *
drivers/md/md-autodetect.c:249:40: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] <asn:1> *filename @@ got char * @@
drivers/md/md-autodetect.c:249:40: sparse: expected char const [noderef] <asn:1> *filename
drivers/md/md-autodetect.c:249:40: sparse: got char *
drivers/md/md-autodetect.c:299:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] <asn:1> *filename @@ got char * @@
drivers/md/md-autodetect.c:299:24: sparse: expected char const [noderef] <asn:1> *filename
drivers/md/md-autodetect.c:299:24: sparse: got char *
drivers/md/md-autodetect.c:124:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] <asn:1> *pathname @@ got char *name @@
drivers/md/md-autodetect.c:124:21: sparse: expected char const [noderef] <asn:1> *pathname
drivers/md/md-autodetect.c:124:21: sparse: got char *name
drivers/md/md-autodetect.c:125:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] <asn:1> *filename @@ got char *name @@
drivers/md/md-autodetect.c:125:27: sparse: expected char const [noderef] <asn:1> *filename
drivers/md/md-autodetect.c:125:27: sparse: got char *name
drivers/md/md-autodetect.c:124:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] <asn:1> *pathname @@ got char *name @@
drivers/md/md-autodetect.c:124:21: sparse: expected char const [noderef] <asn:1> *pathname
drivers/md/md-autodetect.c:124:21: sparse: got char *name
drivers/md/md-autodetect.c:125:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char const [noderef] <asn:1> *filename @@ got char *name @@
drivers/md/md-autodetect.c:125:27: sparse: expected char const [noderef] <asn:1> *filename
drivers/md/md-autodetect.c:125:27: sparse: got char *name
vim +164 drivers/md/md-autodetect.c
6fc96eea53684d drivers/md/md-autodetect.c Christoph Hellwig 2020-06-15 127
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 128 static void __init md_setup_drive(void)
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 129 {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 130 int minor, i, ent, partitioned;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 131 dev_t dev;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 132 dev_t devices[MD_SB_DISKS+1];
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 133
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 134 for (ent = 0; ent < md_setup_ents ; ent++) {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 135 int fd;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 136 int err = 0;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 137 char *devname;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 138 mdu_disk_info_t dinfo;
bdaf8529385d51 init/do_mounts_md.c Greg Kroah-Hartman 2005-06-20 139 char name[16];
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 140
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 141 minor = md_setup_args[ent].minor;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 142 partitioned = md_setup_args[ent].partitioned;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 143 devname = md_setup_args[ent].device_names;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 144
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 145 sprintf(name, "/dev/md%s%d", partitioned?"_d":"", minor);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 146 if (partitioned)
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 147 dev = MKDEV(mdp_major, minor << MdpMinorShift);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 148 else
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 149 dev = MKDEV(MD_MAJOR, minor);
bdaf8529385d51 init/do_mounts_md.c Greg Kroah-Hartman 2005-06-20 150 create_dev(name, dev);
d613c3e2d84188 init/do_mounts_md.c Harvey Harrison 2008-04-28 151 for (i = 0; i < MD_SB_DISKS && devname != NULL; i++) {
86a04656f6cbe2 init/do_mounts_md.c Christoph Hellwig 2020-06-15 152 struct kstat stat;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 153 char *p;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 154 char comp_name[64];
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 155
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 156 p = strchr(devname, ',');
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 157 if (p)
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 158 *p++ = 0;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 159
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 160 dev = name_to_dev_t(devname);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 161 if (strncmp(devname, "/dev/", 5) == 0)
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 162 devname += 5;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 163 snprintf(comp_name, 63, "/dev/%s", devname);
86a04656f6cbe2 init/do_mounts_md.c Christoph Hellwig 2020-06-15 @164 if (vfs_stat(comp_name, &stat) == 0 &&
86a04656f6cbe2 init/do_mounts_md.c Christoph Hellwig 2020-06-15 165 S_ISBLK(stat.mode))
86a04656f6cbe2 init/do_mounts_md.c Christoph Hellwig 2020-06-15 166 dev = new_decode_dev(stat.rdev);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 167 if (!dev) {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 168 printk(KERN_WARNING "md: Unknown device name: %s\n", devname);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 169 break;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 170 }
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 171
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 172 devices[i] = dev;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 173
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 174 devname = p;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 175 }
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 176 devices[i] = 0;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 177
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 178 if (!i)
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 179 continue;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 180
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 181 printk(KERN_INFO "md: Loading md%s%d: %s\n",
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 182 partitioned ? "_d" : "", minor,
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 183 md_setup_args[ent].device_names);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 184
bae217ea8c7e12 init/do_mounts_md.c Dominik Brodowski 2018-03-11 185 fd = ksys_open(name, 0, 0);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 186 if (fd < 0) {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 187 printk(KERN_ERR "md: open failed - cannot start "
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 188 "array %s\n", name);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 189 continue;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 190 }
cbb60b924b9f3e init/do_mounts_md.c Dominik Brodowski 2018-03-13 191 if (ksys_ioctl(fd, SET_ARRAY_INFO, 0) == -EBUSY) {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 192 printk(KERN_WARNING
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 193 "md: Ignoring md=%d, already autodetected. (Use raid=noautodetect)\n",
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 194 minor);
2ca2a09d6215fd init/do_mounts_md.c Dominik Brodowski 2018-03-11 195 ksys_close(fd);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 196 continue;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 197 }
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 198
2604b703b6b3db init/do_mounts_md.c NeilBrown 2006-01-06 199 if (md_setup_args[ent].level != LEVEL_NONE) {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 200 /* non-persistent */
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 201 mdu_array_info_t ainfo;
2604b703b6b3db init/do_mounts_md.c NeilBrown 2006-01-06 202 ainfo.level = md_setup_args[ent].level;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 203 ainfo.size = 0;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 204 ainfo.nr_disks =0;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 205 ainfo.raid_disks =0;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 206 while (devices[ainfo.raid_disks])
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 207 ainfo.raid_disks++;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 208 ainfo.md_minor =minor;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 209 ainfo.not_persistent = 1;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 210
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 211 ainfo.state = (1 << MD_SB_CLEAN);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 212 ainfo.layout = 0;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 213 ainfo.chunk_size = md_setup_args[ent].chunk;
cbb60b924b9f3e init/do_mounts_md.c Dominik Brodowski 2018-03-13 214 err = ksys_ioctl(fd, SET_ARRAY_INFO, (long)&ainfo);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 215 for (i = 0; !err && i <= MD_SB_DISKS; i++) {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 216 dev = devices[i];
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 217 if (!dev)
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 218 break;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 219 dinfo.number = i;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 220 dinfo.raid_disk = i;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 221 dinfo.state = (1<<MD_DISK_ACTIVE)|(1<<MD_DISK_SYNC);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 222 dinfo.major = MAJOR(dev);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 223 dinfo.minor = MINOR(dev);
cbb60b924b9f3e init/do_mounts_md.c Dominik Brodowski 2018-03-13 224 err = ksys_ioctl(fd, ADD_NEW_DISK,
cbb60b924b9f3e init/do_mounts_md.c Dominik Brodowski 2018-03-13 225 (long)&dinfo);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 226 }
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 227 } else {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 228 /* persistent */
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 229 for (i = 0; i <= MD_SB_DISKS; i++) {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 230 dev = devices[i];
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 231 if (!dev)
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 232 break;
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 233 dinfo.major = MAJOR(dev);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 234 dinfo.minor = MINOR(dev);
cbb60b924b9f3e init/do_mounts_md.c Dominik Brodowski 2018-03-13 235 ksys_ioctl(fd, ADD_NEW_DISK, (long)&dinfo);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 236 }
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 237 }
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 238 if (!err)
cbb60b924b9f3e init/do_mounts_md.c Dominik Brodowski 2018-03-13 239 err = ksys_ioctl(fd, RUN_ARRAY, 0);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 240 if (err)
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 241 printk(KERN_WARNING "md: starting md%d failed\n", minor);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 242 else {
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 243 /* reread the partition table.
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 244 * I (neilb) and not sure why this is needed, but I cannot
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 245 * boot a kernel with devfs compiled in from partitioned md
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 246 * array without it
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 247 */
2ca2a09d6215fd init/do_mounts_md.c Dominik Brodowski 2018-03-11 248 ksys_close(fd);
bae217ea8c7e12 init/do_mounts_md.c Dominik Brodowski 2018-03-11 249 fd = ksys_open(name, 0, 0);
cbb60b924b9f3e init/do_mounts_md.c Dominik Brodowski 2018-03-13 250 ksys_ioctl(fd, BLKRRPART, 0);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 251 }
2ca2a09d6215fd init/do_mounts_md.c Dominik Brodowski 2018-03-11 252 ksys_close(fd);
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 253 }
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 254 }
^1da177e4c3f41 init/do_mounts_md.c Linus Torvalds 2005-04-16 255
:::::: The code@line 164 was first introduced by commit
:::::: 86a04656f6cbe246b402b55ce114ff7a59ba68ea init: remove the bstat helper
:::::: TO: Christoph Hellwig <hch@lst.de>
:::::: CC: 0day robot <lkp@intel.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 34870 bytes --]
next prev parent reply other threads:[~2020-06-15 18:50 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-15 12:53 decruft the early init / initrd / initramfs code Christoph Hellwig
2020-06-15 12:53 ` [PATCH 01/16] init: remove the bstat helper Christoph Hellwig
2020-07-02 23:25 ` Song Liu
2020-07-07 10:34 ` Christoph Hellwig
2020-07-07 16:54 ` Song Liu
2020-07-08 6:38 ` Christoph Hellwig
2020-06-15 12:53 ` [PATCH 02/16] md: move the early init autodetect code to drivers/md/ Christoph Hellwig
2020-06-15 18:50 ` kernel test robot [this message]
2020-06-16 6:47 ` Christoph Hellwig
2020-06-18 5:53 ` Rong Chen
2020-06-15 12:53 ` [PATCH 03/16] md: replace the RAID_AUTORUN ioctl with a direct function call Christoph Hellwig
2020-06-15 12:53 ` [PATCH 04/16] md: remove the autoscan partition re-read Christoph Hellwig
2020-06-15 12:53 ` [PATCH 05/16] md: remove the kernel version of md_u.h Christoph Hellwig
2020-06-15 12:53 ` [PATCH 06/16] md: simplify md_setup_drive Christoph Hellwig
2020-06-15 12:53 ` [PATCH 07/16] md: rewrite md_setup_drive to avoid ioctls Christoph Hellwig
2020-06-15 12:53 ` [PATCH 08/16] initrd: remove support for multiple floppies Christoph Hellwig
2020-06-15 12:53 ` [PATCH 09/16] initrd: remove the BLKFLSBUF call in handle_initrd Christoph Hellwig
2020-07-03 3:40 ` H. Peter Anvin
2020-07-04 0:18 ` antlists
2020-07-04 2:19 ` hpa
2020-07-07 9:03 ` Christoph Hellwig
2020-06-15 12:53 ` [PATCH 10/16] initrd: switch initrd loading to struct file based APIs Christoph Hellwig
2020-06-15 12:53 ` [PATCH 11/16] initrd: mark init_linuxrc as __init Christoph Hellwig
2020-06-15 12:53 ` [PATCH 12/16] initramfs: remove the populate_initrd_image and clean_rootfs stubs Christoph Hellwig
2020-06-15 12:53 ` [PATCH 13/16] initramfs: simplify clean_rootfs Christoph Hellwig
2020-06-15 12:53 ` [PATCH 14/16] initramfs: switch initramfs unpacking to struct file based APIs Christoph Hellwig
2020-06-15 12:53 ` [PATCH 15/16] init: open code setting up stdin/stdout/stderr Christoph Hellwig
2020-06-15 12:53 ` [PATCH 16/16] fs: remove ksys_open Christoph Hellwig
2020-06-15 16:03 ` decruft the early init / initrd / initramfs code Randy Dunlap
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=202006160237.KBTht1Kn%lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/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.