On Tue, 2014-07-01 at 14:15 +1000, David O'Shea wrote: > Hi Al, > > Thanks for looking into this further! I made the code change to > ipmiconsole_processing.c and it seems to be working fine now. > > Do you have any rough idea of when you might ship a release with this > fix? I don't mind building my own from a branch/with a local patch, > I'm just curious as I'd like to use an official release eventually.
I average a release every 1-2 months. I did a release last week, so end of July reasonable timeframe guess. Al > > Thanks! > David > > > Subject: RE: [Freeipmi-users] Problem pasting data into ipmiconsole > > From: ch...@llnl.gov > > To: doshea1...@hotmail.com > > CC: freeipmi-users@gnu.org > > Date: Mon, 30 Jun 2014 08:31:09 -0700 > > > > Hi David, > > > > It just occurred to me. The "sol payload size" workaround might work > > for you. While it was originally intended to deal w/ motherboards > that > > report invalid sol payload sizes being out of range (sometimes b/c > of > > incorrect endian), it can probably work for you as well. It'll force > > libipmiconsole to use a defined small max character send rate, > currently > > 32. > > > > Then I looked at your log to make sure 32 was smaller than your > > machine's max: > > > > hostname: [ 2Eh] = inbound_payload_size[16b] > > hostname: [ FFh] = outbound_payload_size[16b] > > > > Huh ... your machine remotes 2Eh as the max, which is 46. Which is > less > > than the amount shown in some of your packets in the debug trace. > Some > > of those packets are sending > 50 characters. > > > > then looking in the code for libipmiconsole > > > > c->session.max_sol_character_send_size = max_outbound_payload_size - > > sol_hdr_len; > > > > I should be coding based on the max *inbound* not outbound size. No > one > > has hit this bug in the many years ipmiconsole has been around :P > > > > If you're ok trying a beta fix, I can give you a URL to a branch in > the > > next day or two (not on a workstation right now). Or if you have the > > code, it's a simple logic change in ipmiconsole_processing.c. > > > > But in the mean time, try the "sol payload size" workaround and see > if > > the problem goes away. > > > > Al > > > > On Sat, 2014-06-28 at 10:42 +1000, David O'Shea wrote: > > > Hi Albert, > > > > > > Thanks for your reply. A workaround where I invoked an API to set > the > > > maximum number of characters sent at a time sounds fine, I could > do > > > some experiments to work out what value works with the iDRAC and > > > report back so that this can be documented. > > > > > > Going back to my code where I want to interact with > libipmiconsole, I > > > assume that with the current version of libipmiconsole, if I was > to > > > just write() to the file descriptor in smaller chunks, that > wouldn't > > > help because libipmiconsole might combine the chunks into a larger > > > chunk that exceeds what the iDRAC supports. Is that correct? > > > > > > Thanks in advance, > > > David > > > > > > > Subject: Re: [Freeipmi-users] Problem pasting data into > ipmiconsole > > > > From: ch...@llnl.gov > > > > To: doshea1...@hotmail.com > > > > CC: freeipmi-users@gnu.org > > > > Date: Fri, 27 Jun 2014 10:23:15 -0700 > > > > > > > > Hi David, > > > > > > > > Lets see on line 1001, we see the packet that is being sent w/ > your > > > > data. You can see in the character_data buffers lots of "20h > 30h" > > > hex, > > > > which is ascii spaces and 0's. > > > > > > > > As you deduced properly, the remote BMC is nacking the packet. > > > > According to the IPMI spec, "the BMC is unable to accept all > > > character > > > > data from this packet." > > > > > > > > Well that sucks. It seems the Dell BMC just can't handle that > much > > > > simultaneous data being sent. I tried this on some motherboards > I > > > have > > > > locally that are not Dells and these BMCs were able to handle > much > > > > larger cut & pastes with ease. > > > > > > > > We could program a workaround/option into > ipmiconsole/libipmiconsole > > > > that could max-cap the number of characters a "SOL Remote > Console to > > > > BMC" packet is allowed to send at the same time, to alleviate > this > > > > situation for your BMC. libimiconsole could even be smart enough > to > > > > recognize when too many NACKs happen in a row and try to > decrease > > > the > > > > characters sent in one packet, although I'm not sure how hard > that > > > would > > > > be to program right now. It's a bit more sophisticated and would > > > take > > > > time, but the workaround option would be much easier. > > > > > > > > Al > > > > > > > > On Fri, 2014-06-27 at 12:04 +1000, David O'Shea wrote: > > > > > Hi all, > > > > > > > > > > With version 1.2.1-6.el6_5 RPM from CentOS 6, when I ran > > > 'ipmiconsole' > > > > > and pasted in a fairly small amount of data (maybe 15 or so > > > > > characters), I got "[error received]: excess retransmissions > > > sent". I > > > > > got a similar issue when writing about that much data from a > > > Python > > > > > script using libipmiconsole. I figured this means I should > move on > > > to > > > > > a newer version. > > > > > > > > > > With version 1.4.3, which I built from source with debugging > > > enabled, > > > > > it seems like I need to paste a bit more data to trigger > problems. > > > In > > > > > this case, I don't get an error like the above, instead things > > > just > > > > > seem to get "stuck": I never seem to get a response from the > > > remote > > > > > system, but sending an escape sequence still works. > > > > > > > > > > I started ipmiconsole, pasted " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 > 0 0 > > > 0 0 > > > > > 0 0 0 0 0 0 0 0" (54 characters long), then after a few > seconds I > > > used > > > > > ".." to terminate: > > > > > > > > > > """ > > > > > $ [...]/freeipmi-1.4.3/ipmiconsole/ipmiconsole -h hostname -u > > > admin -p calvin -e . --debug --debugfile > > > > > [SOL established] > > > > > > > > > > [closing the connection] > > > > > """ > > > > > > > > > > The target is a Dell iDRAC7 with firmware version 1.56.55. > > > > > > > > > > I put some of the log file that was generated up at > > > > > https://gist.github.com/dcoshea/e7a15e34395c09da2f81 (after > > > replacing > > > > > the hostname with "hostname"). If you go to line 889 > > > > > > > > > [https://gist.github.com/dcoshea/e7a15e34395c09da2f81#file-gistfile1-txt-L889], > > > > > this seems to be the part that relates to when I pasted in the > > > text. > > > > > It seems that ipmiconsole keeps re-sending the data and the > iDRAC > > > > > keeps responding with NACKs. The entire log contains 2000 of > these > > > > > messages: > > > > > > > > > > (ipmiconsole_processing.c, _sol_bmc_to_remote_console_packet, > > > 2672): hostname=hostname; protocol_state=9h: SOL packet NACKED: > > > accepted_character_count: accepted_character_count = 0, > > > c->session.sol_input_character_data_len = 54 > > > > > > > > > > Thanks in advance, > > > > > David > > > > > > > > > > _______________________________________________ > > > > > Freeipmi-users mailing list > > > > > Freeipmi-users@gnu.org > > > > > https://lists.gnu.org/mailman/listinfo/freeipmi-users > > > > -- > > > > Albert Chu > > > > ch...@llnl.gov > > > > Computer Scientist > > > > High Performance Systems Division > > > > Lawrence Livermore National Laboratory > > > > > > > > > > > > > -- > > Albert Chu > > ch...@llnl.gov > > Computer Scientist > > High Performance Systems Division > > Lawrence Livermore National Laboratory > > > -- Albert Chu ch...@llnl.gov Computer Scientist High Performance Systems Division Lawrence Livermore National Laboratory _______________________________________________ Freeipmi-users mailing list Freeipmi-users@gnu.org https://lists.gnu.org/mailman/listinfo/freeipmi-users