[Open-FCoE] [PATCH v2] fcoe-utils: add DRIVER_NAME to specify the FCoE low-level driver

Zou, Yi yi.zou at intel.com
Tue Jan 18 07:24:02 UTC 2011


> On Mon, 2011-01-17 at 17:35 -0800, Robert Love wrote:
> > On Wed, 2011-01-12 at 18:42 -0800, Nithin Sujir wrote:
> > > This patch adds support to fcoe-utils to send the low-level driver
> name into
> > > the libfcoe driver. This complements yi's driver v3 patches that
> change the
> > > sysfs path and add the transport attach support.
> > >
> > > https://lists.open-fcoe.org/pipermail/devel/2011-January/010946.html
> > >
> > > The following changes are added.
> > >
> > > 1. DRIVER_NAME field in cfg-ethx file. fcoemon will now send
> "interface:driver
> > > name" string into the libfcoe driver to allow it to invoke the right
> transport
> > > driver functions.
> > >
> > > 2. SUPPORTED_DRIVERS field in the config file allows the service to
> load all
> > > supported drivers if they exist.
> > >
> > > 3. The check for if driver is loaded is moved to the fcoe service
> since it
> > > already knows which are the supported drivers.
> > >
> > >
> > > Signed-off-by: Nithin Nayak Sujir <nsujir at broadcom.com>
> > > ---
> > >  doc/fcoemon.txt        |    3 ++
> > >  etc/cfg-ethx           |    5 ++++
> > >  etc/config             |    4 +++
> > >  etc/initd/initd.fedora |   23 +++++++++++++++++-
> > >  etc/initd/initd.suse   |   25 ++++++++++++++++++-
> > >  fcoemon.c              |   59 +++++++++++++++++++++++++++++++++++---
> ----------
> > >  include/fcoe_utils.h   |    4 ++-
> > >  7 files changed, 102 insertions(+), 21 deletions(-)
> > >
> >
> > Hi Nithin, Bhanu and Yi,
> >
> >    We need an update to the fcoeadm man page, can you resend this with
> > that addition?
>
> Hi Robert,
>
> There are no changes to fcoadm man page, since none of the options have
> changed.

Rob is right, we need to document the added usage model of passing the driver
name on command line so user can still do manual create w/ a given transport
driver if not willing to edit the fcoe config file.

>
> >
> >    Also, I was trying to test Yi/Bhanu's v3 kernel series with this
> > fcoe-utils patch and I can't get things to work.
> >
> >    After running 'fipvlan -ac' interface 'eth3.170-fcoe' is created.
> > When I try to create on that interface using 'fcoeadm -c eth3.170-fcoe'
> > nothing happens except for the kernel reporting,
> "fcoe_transport_create:
> > transport n/a failed to create fcoe on n/a"
>
> Shouldn't we pass physical ethernet interface (eth4) instead of the vlan
> interface?
Why would vlan interface not work? Both physical and vlan work fine in
existing fcoe-util w/o any problem. I tested both vlan and physical interfaces
using echo to libfcoe sysfs entries.

>
> I tried similar call 'fcoeadm -c eth4.4-fcoe', but it gave the following
> error:
> 'fcoeadm: Connection already created on interface eth4.4-fcoe'. I think
> this is a default error message when fcoemon fails to create.
The name as 'eth4.4-fcoe' indicates the fcoe is configured as auto mode
so fcoemon automatically creates fcoe instance, which is probably why you
see the err message above. I believe what Rob has seen is related to the
bug that you and Nithin fixed in fcoe transport. I will pull in your fix
and do some more testing tomorrow.

Thanks,
yi


>
>
> > When I try 'fcoeadm -c eth3.170-fcoe:fcoe' I get the following system
> > panic.
> >
> >    With fcoe.ko how are you expecting the user to use 'fcoeadm -c',
> with
> > the ':<driver>' or not?
> We expect user to use 'fcoeadm -c' without a :<driver>
>
> > I think that it should default to the SW FCoE if
> > there isn't a driver specified so that the current interface for SW
> FCoE
> > doesn't have to change (scripts, etc...).
>
> SW FCoE is the default driver that gets updated in
> the /etc/fcoe/cfg-ethX file and /etc/fcoe/config files when installing
> the new fcoeutils.
>
> in /etc/fcoe/cfg-ethX the DRIVER_NAME is set to "fcoe", and
> in /etc/fcoe/config file the SUPPORTED_DRIVERS will have "fcoe".
>
> We found that if you have an existing config file, installing the new
> fcoeutils, for some reason, does not overwrite the config file with the
> new one. So you may want to rename the old config and install new
> fcoeutils.
>
> We have found another issue that can panic if lookup fails. Will send
> out those patches soon.
>
> Thanks,
> Bhanu
>
> >
> > Jan 17 17:27:53 bubba [  143.849554] fcoe_transport_create: transport
> > n/a failed to create fcoe on n/a
> > Jan 17 17:29:11 bubba [  221.931904] kernel tried to execute
> > NX-protected page - exploit attempt? (uid: 0)
> > Jan 17 17:29:11 bubba [  221.931984] BUG: unable to handle kernel
> > Jan 17 17:29:11 bubba paging request
> > Jan 17 17:29:11 bubba at ffff88013a9e2e00
> > Jan 17 17:29:11 bubba [  221.932166] IP:
> > Jan 17 17:29:11 bubba [<ffff88013a9e2e00>] 0xffff88013a9e2e00
> > Jan 17 17:29:11 bubba [  221.932291] PGD 1a04063
> > Jan 17 17:29:11 bubba PUD bf782067
> > Jan 17 17:29:11 bubba PMD 800000013a8001e3
> > Jan 17 17:29:11 bubba
> > Jan 17 17:29:11 bubba [  221.932527] Oops: 0011 [#1]
> > Jan 17 17:29:11 bubba SMP
> > Jan 17 17:29:11 bubba
> > Jan 17 17:29:11 bubba [  221.932900] last sysfs
> > file: /sys/module/libfcoe/parameters/create
> > Jan 17 17:29:11 bubba [  221.933168] CPU 0
> > Jan 17 17:29:11 bubba
> > Jan 17 17:29:11 bubba [  221.933230] Modules linked in:
> > Jan 17 17:29:11 bubba fcoe
> > Jan 17 17:29:11 bubba libfcoe
> > Jan 17 17:29:11 bubba libfc
> > Jan 17 17:29:11 bubba scsi_transport_fc
> > Jan 17 17:29:11 bubba [last unloaded: libfc]
> > Jan 17 17:29:11 bubba
> > Jan 17 17:29:11 bubba [  221.934304]
> > Jan 17 17:29:11 bubba [  221.934567] Pid: 2209, comm: fcoemon Not
> > tainted 2.6.37-rc6+ #5 X8DT3/X8DT3
> > Jan 17 17:29:11 bubba [  221.934843] RIP: 0010:[<ffff88013a9e2e00>]
> > Jan 17 17:29:11 bubba [<ffff88013a9e2e00>] 0xffff88013a9e2e00
> > Jan 17 17:29:11 bubba [  221.935370] RSP: 0018:ffff8803327dddb0
> EFLAGS:
> > 00010286
> > Jan 17 17:29:11 bubba [  221.935638] RAX: ffff88013a9e2e00 RBX:
> > ffffffffa0037578 RCX: 0000000000000006
> > Jan 17 17:29:11 bubba [  221.935913] RDX: ffffffffa00375a0 RSI:
> > 0000000000000004 RDI: ffff88013aa4d000
> > Jan 17 17:29:11 bubba [  221.936185] RBP: ffff8803327dde58 R08:
> > ffffffffa00375a0 R09: 0000ea0268012318
> > Jan 17 17:29:11 bubba [  221.936458] R10: ffff8803327ddd88 R11:
> > 0000000000000004 R12: ffff88013f802600
> > Jan 17 17:29:11 bubba [  221.936731] R13: ffff88013aa4d000 R14:
> > ffff88013a9e2e00 R15: 0000000000000020
> > Jan 17 17:29:11 bubba [  221.937003] FS:  00007f42d8c3d720(0000)
> > GS:ffff8800bf400000(0000) knlGS:0000000000000000
> > Jan 17 17:29:11 bubba [  221.937477] CS:  0010 DS: 0000 ES: 0000 CR0:
> > 0000000080050033
> > Jan 17 17:29:11 bubba [  221.937746] CR2: ffff88013a9e2e00 CR3:
> > 0000000331056000 CR4: 00000000000006f0
> > Jan 17 17:29:11 bubba [  221.938018] DR0: 0000000000000000 DR1:
> > 0000000000000000 DR2: 0000000000000000
> > Jan 17 17:29:11 bubba [  221.938294] DR3: 0000000000000000 DR6:
> > 00000000ffff0ff0 DR7: 0000000000000400
> > Jan 17 17:29:11 bubba [  221.938566] Process fcoemon (pid: 2209,
> > threadinfo ffff8803327dc000, task ffff88032e7f20a0)
> > Jan 17 17:29:11 bubba [  221.939041] Stack:
> > Jan 17 17:29:11 bubba [  221.939302]  ffffffffa0036217
> > Jan 17 17:29:11 bubba ffff880138b71be0
> > Jan 17 17:29:11 bubba 0000000000000004
> > Jan 17 17:29:11 bubba 0000000000000066
> > Jan 17 17:29:11 bubba
> > Jan 17 17:29:11 bubba [  221.939998]  ffffffff81057a8d
> > Jan 17 17:29:11 bubba ffffffff81a18738
> > Jan 17 17:29:11 bubba ffffffff81a18710
> > Jan 17 17:29:11 bubba 2222222222222222
> > Jan 17 17:29:11 bubba
> > Jan 17 17:29:11 bubba [  221.940698]  2222222222222222
> > Jan 17 17:29:11 bubba 3037312e33687465
> > Jan 17 17:29:11 bubba 222200656f63662d
> > Jan 17 17:29:11 bubba ffff880300000000
> > Jan 17 17:29:11 bubba
> > Jan 17 17:29:11 bubba [  221.941398] Call Trace:
> > Jan 17 17:29:11 bubba [  221.941676]  [<ffffffffa0036217>] ?
> > fcoe_transport_create+0x18e/0x227 [libfcoe]
> > Jan 17 17:29:11 bubba [  221.942159]  [<ffffffff81057a8d>] ?
> > param_attr_store+0x36/0x62
> > Jan 17 17:29:11 bubba [  221.942435]  [<ffffffff81057a9a>]
> > param_attr_store+0x43/0x62
> > Jan 17 17:29:11 bubba [  221.942710]  [<ffffffff810576c8>]
> > module_attr_store+0x21/0x25
> > Jan 17 17:29:11 bubba [  221.942984]  [<ffffffff8114a837>]
> > sysfs_write_file+0x103/0x13f
> > Jan 17 17:29:11 bubba [  221.943261]  [<ffffffff810f2c4f>] vfs_write
> > +0xa9/0x105
> > Jan 17 17:29:11 bubba [  221.943534]  [<ffffffff810f2d61>] sys_write
> > +0x45/0x69
> > Jan 17 17:29:11 bubba [  221.943810]  [<ffffffff810029bb>]
> > system_call_fastpath+0x16/0x1b
> > Jan 17 17:29:11 bubba [  221.944084] Code:
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba ad
> > Jan 17 17:29:11 bubba de
> > Jan 17 17:29:11 bubba 01
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba c0
> > Jan 17 17:29:11 bubba 2d
> > Jan 17 17:29:11 bubba 9e
> > Jan 17 17:29:11 bubba 3a
> > Jan 17 17:29:11 bubba 01
> > Jan 17 17:29:11 bubba 88
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 01
> > Jan 17 17:29:11 bubba 10
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba ad
> > Jan 17 17:29:11 bubba de
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 02
> > Jan 17 17:29:11 bubba 20
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba ad
> > Jan 17 17:29:11 bubba de
> > Jan 17 17:29:11 bubba 01
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba syslog-ng[1086]: Error processing log message:
> > <a0>
> > Jan 17 17:29:11 bubba 75
> > Jan 17 17:29:11 bubba 03
> > Jan 17 17:29:11 bubba a0
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba a0
> > Jan 17 17:29:11 bubba 75
> > Jan 17 17:29:11 bubba 03
> > Jan 17 17:29:11 bubba a0
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba ff
> > Jan 17 17:29:11 bubba 00
> > Jan 17 17:29:11 bubba d0
> > Jan 17 17:29:11 bubba a4
> > Jan 17 17:29:11 bubba 3a
> > Jan 17 17:29:11 bubba 01
> > Jan 17 17:29:11 bubba
> > Jan 17 17:29:11 bubba [  221.948420] RIP
> > Jan 17 17:29:11 bubba [<ffff88013a9e2e00>] 0xffff88013a9e2e00
> > Jan 17 17:29:11 bubba [  221.948744]  RSP <ffff8803327dddb0>
> > Jan 17 17:29:11 bubba [  221.949007] CR2: ffff88013a9e2e00
> > Jan 17 17:29:11 bubba [  221.949273] ---[ end trace
> > 956a5017d1e75a2a ]---
> > Jan 17 17:29:11 bubba [  221.949541] BUG: sleeping function called from
> > invalid context at kernel/rwsem.c:21
> > Jan 17 17:29:11 bubba [  221.950013] in_atomic(): 0, irqs_disabled():
> 1,
> > pid: 2209, name: fcoemon
> > Jan 17 17:29:11 bubba [  221.950282] INFO: lockdep is turned off.
> > Jan 17 17:29:11 bubba [  221.950544] irq event stamp: 13760
> > Jan 17 17:29:11 bubba [  221.950808] hardirqs last  enabled at (13759):
> > Jan 17 17:29:11 bubba [<ffffffff8150461f>] _raw_write_unlock_irqrestore
> > +0x3a/0x41
> > Jan 17 17:29:11 bubba [  221.951341] hardirqs last disabled at (13760):
> > Jan 17 17:29:11 bubba [<ffffffff81505303>] error_sti+0x5/0x6
> > Jan 17 17:29:11 bubba [  221.951873] softirqs last  enabled at (13584):
> > Jan 17 17:29:11 bubba [<ffffffff81044a28>] __do_softirq+0x1c9/0x1f2
> > Jan 17 17:29:11 bubba [  221.952404] softirqs last disabled at (13575):
> > Jan 17 17:29:11 bubba [<ffffffff8100390c>] call_softirq+0x1c/0x34
> > Jan 17 17:29:11 bubba [  221.952936] Pid: 2209, comm: fcoemon Tainted:
> G
> > D     2.6.37-rc6+ #5
> > Jan 17 17:29:11 bubba [  221.953206] Call Trace:
> > Jan 17 17:29:11 bubba [  221.953476]  [<ffffffff810681fd>] ?
> > print_irqtrace_events+0xd0/0xd4
> > Jan 17 17:29:11 bubba [  221.953754]  [<ffffffff810361f0>]
> __might_sleep
> > +0xef/0xf3
> > Jan 17 17:29:11 bubba [  221.954030]  [<ffffffff81503a65>] down_read
> > +0x1f/0x5c
> > Jan 17 17:29:11 bubba [  221.954304]  [<ffffffff8107c9ac>] acct_collect
> > +0x3f/0x17c
> > Jan 17 17:29:11 bubba [  221.954579]  [<ffffffff8104224c>] do_exit
> > +0x1d2/0x779
> > Jan 17 17:29:11 bubba [  221.954857]  [<ffffffff8103eb07>] ?
> > spin_unlock_irqrestore+0x9/0xb
> > Jan 17 17:29:11 bubba [  221.955132]  [<ffffffff8103f624>] ? kmsg_dump
> > +0x136/0x150
> > Jan 17 17:29:11 bubba [  221.955407]  [<ffffffff81505d4b>] oops_end
> > +0xb1/0xb9
> > Jan 17 17:29:11 bubba [  221.955684]  [<ffffffff810277a9>] no_context
> > +0x1f7/0x206
> > Jan 17 17:29:11 bubba [  221.955957]  [<ffffffff81027948>]
> > __bad_area_nosemaphore+0x190/0x1b3
> > Jan 17 17:29:11 bubba [  221.956234]  [<ffffffff81027979>]
> > bad_area_nosemaphore+0xe/0x10
> > Jan 17 17:29:11 bubba [  221.956510]  [<ffffffff81507e48>]
> do_page_fault
> > +0x1ed/0x3ff
> > Jan 17 17:29:11 bubba [  221.956790]  [<ffffffff810f0d5f>] ?
> > create_object+0x1d8/0x2a1
> > Jan 17 17:29:11 bubba [  221.957064]  [<ffffffff81069f4f>] ? mark_lock
> > +0x2d/0x25c
> > Jan 17 17:29:11 bubba [  221.957339]  [<ffffffff8106a1d0>] ?
> > mark_held_locks+0x52/0x70
> > Jan 17 17:29:11 bubba [  221.957620]  [<ffffffff8150461f>] ?
> > _raw_write_unlock_irqrestore+0x3a/0x41
> > Jan 17 17:29:11 bubba [  221.957898]  [<ffffffff815042d7>] ?
> > trace_hardirqs_off_thunk+0x3a/0x3c
> > Jan 17 17:29:11 bubba [  221.958176]  [<ffffffff8150511f>] page_fault
> > +0x1f/0x30
> > Jan 17 17:29:11 bubba [  221.958455]  [<ffffffffa0036217>] ?
> > fcoe_transport_create+0x18e/0x227 [libfcoe]
> > Jan 17 17:29:11 bubba [  221.958937]  [<ffffffff81057a8d>] ?
> > param_attr_store+0x36/0x62
> > Jan 17 17:29:11 bubba [  221.959212]  [<ffffffff81057a9a>]
> > param_attr_store+0x43/0x62
> > Jan 17 17:29:11 bubba [  221.959488]  [<ffffffff810576c8>]
> > module_attr_store+0x21/0x25
> > Jan 17 17:29:11 bubba [  221.959767]  [<ffffffff8114a837>]
> > sysfs_write_file+0x103/0x13f
> > Jan 17 17:29:11 bubba [  221.960044]  [<ffffffff810f2c4f>] vfs_write
> > +0xa9/0x105
> > Jan 17 17:29:11 bubba [  221.960317]  [<ffffffff810f2d61>] sys_write
> > +0x45/0x69
> > Jan 17 17:29:11 bubba [  221.960589]  [<ffffffff810029bb>]
> > system_call_fastpath+0x16/0x1b
> >
> > Thanks, //Rob
> >
> >
>
>




More information about the devel mailing list