From: Sachin Prabhu <sprabhu-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Jeff Layton <jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: Scott Lovenberg
<scott.lovenberg-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Steve French <smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH] cifs: use standard token parser for mount options
Date: Wed, 14 Mar 2012 20:30:53 +0000 [thread overview]
Message-ID: <1331757053.3054.5.camel@localhost> (raw)
In-Reply-To: <20120314151811.65838f6b-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
On Wed, 2012-03-14 at 15:18 -0400, Jeff Layton wrote:
> On Wed, 14 Mar 2012 14:17:26 -0400 (EDT)
> Sachin Prabhu <sprabhu-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote:
>
> > Thanks Scott,
> >
> > Steve/Jeff, can I get your comments on this patch please.
> >
> > Sachin Prabhu
> >
>
> Does it address the oops that we saw with Scott's patch? Here's what I
> wrote when I hit that oops before.
>
Jeff,
The patch here was a complete re-write. I have tested it with similar
mount options on my local system and it didn't crash.
Sachin Prabhu
> ----------------------------[snip]---------------------------
>
> Finally got around to trying this out and I get the following oops when
> mounting a share with these options:
>
> sec=krb5i,multises,noauto
>
> general protection fault: 0000 [#1] SMP
> last sysfs file: /sys/devices/virtual/bdi/cifs-1/uevent
> CPU 0
> Modules linked in: cifs nfsd lockd nfs_acl exportfs rpcsec_gss_krb5 auth_rpcgss des_generic sunrpc ipv6 microcode i2c_piix4 i2c_core virtio_net joydev virtio_balloon virtio_blk virtio_pci virtio_ring virtio [last unloaded: mperf]
>
> Pid: 1542, comm: mount.cifs Not tainted 2.6.35-0.2.rc3.git0.fc14.x86_64 #1 /
> RIP: 0010:[<ffffffff8123728c>] [<ffffffff8123728c>] strchr+0x14/0x1d
> RSP: 0018:ffff880039a65bd8 EFLAGS: 00010246
> RAX: 7365735f626d735f RBX: 0000000000000000 RCX: ffff88003cb4d041
> RDX: ffff880039a65c6d RSI: 0000000000000025 RDI: 7365735f626d735f
> RBP: ffff880039a65bd8 R08: 000000000000002c R09: 000000000000002c
> R10: 00000000000080d0 R11: ffffffff8113bc6c R12: ffff88003cb4d041
> R13: ffffffffa0219d40 R14: 0000000000000000 R15: 7365735f626d735f
> FS: 00007f1fbcba6720(0000) GS:ffff880004600000(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> CR2: 0000000001a31818 CR3: 000000003a287000 CR4: 00000000000006f0
> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> Process mount.cifs (pid: 1542, threadinfo ffff880039a64000, task ffff880039adc8a0)
> Stack:
> ffff880039a65c48 ffffffff8123b1ee ffff88003a18b990 ffff880039a65cd8
> <0> ffff88003cb4d041 ffffffff8111cd42 ffffffffa0202f86 7365735f626d735f
> <0> ffff88003997de30 ffff88003997de30 ffff88003cc94840 00000000ffffffff
> Call Trace:
> [<ffffffff8123b1ee>] match_token+0x4b/0x1a8
> [<ffffffff8111cd42>] ? __kmalloc+0x17c/0x18e
> [<ffffffffa0202f86>] ? cifs_mount+0x639/0x1737 [cifs]
> [<ffffffffa0202c11>] cifs_mount+0x2c4/0x1737 [cifs]
> [<ffffffffa01f5aa4>] ? cifs_get_sb+0x110/0x2e4 [cifs]
> [<ffffffffa01f5b00>] cifs_get_sb+0x16c/0x2e4 [cifs]
> [<ffffffff8112c946>] vfs_kern_mount+0xbd/0x19b
> [<ffffffff8112ca8c>] do_kern_mount+0x4d/0xed
> [<ffffffff8114368a>] do_mount+0x776/0x7ed
> [<ffffffff811128aa>] ? alloc_pages_current+0xa7/0xca
> [<ffffffff81143789>] sys_mount+0x88/0xc2
> [<ffffffff81009c32>] system_call_fastpath+0x16/0x1b
> Code: 14 84 c0 74 0e 48 ff c7 48 ff c6 48 ff ca 48 85 d2 75 e1 31 c0 c9 c3 55 48 89 f8 48 89 e5 eb 0b 84 d2 75 04 31 c0 eb 0a 48 ff c0 <8a> 10 40 38 f2 75 ee c9 c3 55 48 89 f8 48 89 e5 eb 03 48 ff c0
> RIP [<ffffffff8123728c>] strchr+0x14/0x1d
> RSP <ffff880039a65bd8>
> ---[ end trace 50d173d44b64b1d9 ]---
>
> It's crashing in this match_token() call:
>
> gdb) list *(cifs_mount+0x2c4)
> 0xdcf7 is in cifs_mount (fs/cifs/connect.c:1094).
> 1089 while ((data = strsep(&options, separator)) != NULL) {
> 1090 if (!*data)
> 1091 continue;
> 1092 if ((value = strchr(data, '=')) != NULL)
> 1093 *value++ = '\0';
> 1094 switch (match_token(data, cifs_mount_options, args)) {
> 1095 case Opt_user_xattr:
> 1096 vol->no_xattr = 0;
> 1097 break;
> 1098 case Opt_nouser_xattr:
> (gdb) quit
>
next prev parent reply other threads:[~2012-03-14 20:30 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-09 15:33 [PATCH] cifs: use standard token parser for mount options Sachin Prabhu
[not found] ` <CAFB9KM0AMO_r0W2grCk2MRfZ9bVf+J5pbP1Yexxw46dacoYynw@mail.gmail.com>
[not found] ` <CAFB9KM0AMO_r0W2grCk2MRfZ9bVf+J5pbP1Yexxw46dacoYynw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-03-09 16:16 ` Scott Lovenberg
[not found] ` <4F5A2CCD.6010808-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-03-14 18:17 ` Sachin Prabhu
[not found] ` <24dc471d-42ca-45cf-89eb-26dc3117fa1a-s/U0J+63Ool+R5eDjrG6zsCp5Q1pQRjfhaY/URYTgi6ny3qCrzbmXA@public.gmane.org>
2012-03-14 19:18 ` Jeff Layton
[not found] ` <20120314151811.65838f6b-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-14 19:30 ` Steve French
[not found] ` <CAH2r5muUm-E5n6Le4JPnBZmKNJ46OJ8dYZdS9b79=O3UGif4Rg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-03-14 19:43 ` Scott Lovenberg
[not found] ` <4F60F4E3.5010003-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-03-14 19:46 ` Scott Lovenberg
2012-03-14 19:58 ` Sachin Prabhu
[not found] ` <90445c03-bbcc-4faf-afbf-fde4b1d17f05-s/U0J+63Ool+R5eDjrG6zsCp5Q1pQRjfhaY/URYTgi6ny3qCrzbmXA@public.gmane.org>
2012-03-14 20:15 ` Scott Lovenberg
[not found] ` <4F60FC5C.3050507-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-03-14 20:47 ` Sachin Prabhu
2012-03-14 21:08 ` Steve French
2012-03-15 11:06 ` Jeff Layton
2012-03-14 20:30 ` Sachin Prabhu [this message]
2012-03-15 11:44 ` Jeff Layton
2012-03-21 17:38 ` Jeff Layton
[not found] ` <20120321133855.52901c60-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-21 18:33 ` Sachin Prabhu
2012-03-21 18:36 ` Scott Lovenberg
[not found] ` <4F6A1F9F.6070101-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-03-21 19:09 ` Sachin Prabhu
[not found] ` <CAFB9KM0YywoKwjMxijp+T-SxqZLjuOhiXkMRa5y57eYuTHOc6Q@mail.gmail.com>
[not found] ` <CAFB9KM0YywoKwjMxijp+T-SxqZLjuOhiXkMRa5y57eYuTHOc6Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-03-21 19:16 ` Sachin Prabhu
2012-03-21 20:30 ` Jeff Layton
[not found] ` <20120321163051.0fa2c714-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-21 20:33 ` Steve French
[not found] ` <CAH2r5mt6NiZmF1JZPG2sZ7bwNFiWpxxQ9Q6OoJXC_st7+oUoZg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-03-21 20:38 ` Jeff Layton
[not found] ` <20120321163818.0418fd2c-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2012-03-22 15:26 ` [PATCH v2] " Sachin Prabhu
2012-03-22 15:30 ` Jeff Layton
2012-03-22 15:28 ` [PATCH] " Sachin Prabhu
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=1331757053.3054.5.camel@localhost \
--to=sprabhu-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=scott.lovenberg-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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.