From: limin <vs...@gm...> - 2012-10-29 01:40:07
|
I modified the iscsitarget code as following, and it works normal(without datadigest) at kernel 3.6.0-rc5. but if we enabled datadigest option, it meets some error. I still confused about this issue. Thanks! diff -u kernel.orig/event.c kernel/event.c --- kernel.orig/event.c 2012-10-16 21:50:39.965321321 +0800 +++ kernel/event.c 2012-10-16 21:52:13.815323654 +0800 @@ -68,8 +68,12 @@ int event_init(void) { - nl = netlink_kernel_create(&init_net, NETLINK_IET, 1, event_recv_skb, - NULL, THIS_MODULE); + struct netlink_kernel_cfg cfg = { + .input = event_recv_skb, + .groups = 1, + }; + + nl = netlink_kernel_create(&init_net, NETLINK_IET, THIS_MODULE, &cfg); if (!nl) return -ENOMEM; else diff -u kernel.orig/wthread.c kernel/wthread.c --- kernel.orig/wthread.c 2012-10-16 21:50:39.965321321 +0800 +++ kernel/wthread.c 2012-10-15 19:44:01.166049861 +0800 @@ -69,9 +69,14 @@ if (current->io_context) put_io_context(current->io_context); + + //ioc_task_link(info->wthread_ioc); + if (info-> wthread_ioc) + ioc_task_link(info->wthread_ioc); + + if (!(current->io_context = info->wthread_ioc)) + info->wthread_ioc = get_task_io_context(current, GFP_KERNEL, -1); - if (!(current->io_context = ioc_task_link(info->wthread_ioc))) - info->wthread_ioc = get_task_io_context(current, GFP_KERNEL, -1); add_wait_queue(&info->wthread_sleep, &wait); Arne Redlich-4 wrote: > > 2012/10/28 Arne Redlich <arn...@go...>: >> 2012/10/16 limin <vs...@gm...>: >>> >>> I used iscsitarget(svn: 484) at kernel v3.6.0-rc5. It works well. ISCSI >>> initiator could discover target and operate the target disk. But if we >>> enable HeaderDigest and DataDigest at ietd.conf and >>> iscsid.conf(initiator), >>> and then restart iscsitarget and login target again, target server shows >>> that scsi_cmnd_start(1109) unsupported 85. When starting operate target >>> disk, it meets disk I/O error. at target side, it meets kernel error. Is >>> there someone meet the same issue? Thanks! >> >> The "Unsupported 85" is harmless - it's the initiator trying to send >> an ATA pass through command which IET does not support. >> WRT the assert: since the vanilla IET trunk doesn't even compile >> against 3.6 kernels as I just realized in another thread, I'm >> wondering which modifications you made, and if they might be related >> to that (and if not, whether we could merge them to add support for >> 2.6 to IET ;)). Can you share your modifications? > ^^^^^ > That's of course supposed to be "support for 3.6". > > ------------------------------------------------------------------------------ > WINDOWS 8 is here. > Millions of people. Your app in 30 days. > Visit The Windows 8 Center at Sourceforge for all your go to resources. > http://windows8center.sourceforge.net/ > join-generation-app-and-make-money-coding-fast/ > _______________________________________________ > Iscsitarget-devel mailing list > Isc...@li... > https://lists.sourceforge.net/lists/listinfo/iscsitarget-devel > > -- View this message in context: http://old.nabble.com/iscsitarget-kernel-error-after-enabled-HeaderDigest-and-DataDigest-tp34561768p34613386.html Sent from the iscsitarget-devel mailing list archive at Nabble.com. |