> You are right, I think I already found the root cause which was exist in block
> layer.
> Thanks again for all your help!
NP Bob, glad you got it working.

Cheers,
John

> -----Original Message-----
> From: Bob Liu [mailto:lliu...@gmail.com]
> Sent: Wednesday, March 11, 2015 6:00 PM
> To: Ronciak, John
> Cc: Kirsher, Jeffrey T; e1000-devel; Tantilov, Emil S
> Subject: Re: [E1000-devel] ixgbe: kernel BUG at include/linux/mm.h
> 
> On Tue, Mar 10, 2015 at 11:13 PM, Ronciak, John <john.ronc...@intel.com>
> wrote:
> > Hi Bob,
> >
> >> I think that's the normal case to reuse that page after its context
> >> have been transmitted.
> >> I'm looking at the block driver since it's a iSCSI block device , the
> >> sequence is like this:
> >> 1. A user call get_page() and then call submit_bio() 2. Then the page
> >> data is going to be transmitted through iSCSI and ixgbe. Fix me if I
> >> was wrong, I'm not clear how ixgbe was involved.
> >> 3. When the bio is completed, bio-> bi_end_io() function will be
> >> triggered and call put_page().
> > I'm not sure about your implementation but there are plenty of other iSCSI
> components (targets and initiators) that work with our drivers today.  So
> what you are doing in the application is doing something different.  You may
> want to look for some of these other iSCSI components and look to see what
> they are doing regarding transmits.  As I've said there is no way for the 
> driver
> to indicate back up the stack to indicate that a transmit of any given packet
> has happened.  Also, If you think about it how would the driver know that a
> packet is part of a certain page (or iSCSI frame) to indicate that information
> back up the stack?  The base drivers have no mechanisms to do this.  Since
> other iSCSI agents are implemented and running in the kernel without such a
> feature are all working this seems to be something in your implementation.
> >
> > Please look around at other Linux iSCSI code to see what they are doing.
> >
> 
> You are right, I think I already found the root cause which was exist in block
> layer.
> Thanks again for all your help!
> 
> Regards,
> -Bob
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to